أخبار العالمتقنيةمال و أعمالمنوعات

إنشاء ونشر حاويات تدعم NVIDIA GPU باستخدام SUSE Linux و وRancher و K8s

أليكس أرنولدي، مهندس حلول التحالف العالمي (SUSE) صورة صور حاوية SUSE Linux Enterprise Base سوزي لينكس خادم المؤسسة محرك رانشر كوبرنيتيس 2 التاريخ: 2023-12-07 ملخص قم ببناء صور حاوية ممكّنة لـ NVIDIA GPU Driver باستخدام SUSE Linux Enterprise Base Container Images ونشر هذه الحاويات باستخدام NVIDIA GPU Operator إلى مجموعات Rancher Kubernetes Engine 2. تنصل تم المساهمة بالوثائق المنشورة كجزء من سلسلة الوثائق المرجعية الفنية لـ SUSE طوعًا من قبل موظفي SUSE والجهات الخارجية. والمقصود منها أن تكون بمثابة أمثلة لكيفية تنفيذ إجراءات معينة. لقد تم تجميعها مع أقصى قدر من الاهتمام بالتفاصيل. ومع ذلك، هذا لا يضمن الدقة الكاملة. لا تستطيع SUSE التحقق من أن الإجراءات الموضحة في هذه المستندات تؤدي ما تمت المطالبة به أو ما إذا كانت الإجراءات الموضحة لها عواقب غير مقصودة. لا يجوز تحميل شركة SUSE LLC والشركات التابعة لها والمؤلفين والمترجمين المسؤولية عن الأخطاء المحتملة أو العواقب المترتبة عليها. 1 المقدمة   توفر وحدات معالجة الرسومات (GPUs) إمكانات فريدة لتسريع نطاق واسع من أعباء العمل، مثل الذكاء الاصطناعي والتعلم الآلي والمحاكاة العلمية والهندسية وغير ذلك الكثير. يوفر تطوير أعباء العمل هذه ونشرها في حاويات في مجموعات Kubernetes إمكانية تحسين قابلية النقل والتوسع والكفاءة. ومع ذلك، فإن موارد وحدة معالجة الرسومات (GPU) لا تكون مرئية تلقائيًا أو لا يمكن الوصول إليها من خلال أحمال العمل التي يتم تشغيلها في الحاويات.  في هذا الدليل، تتعلم كيفية:  قم بإنشاء صور حاوية متوافقة مع OCI تتضمن برنامج تشغيل NVIDIA GPU باستخدام SUSE Linux Enterprise Base Container Images  قم بنشر صورة الحاوية التي تدعم برنامج تشغيل NVIDIA GPU على Rancher Kubernetes Engine 2 باستخدام مشغل NVIDIA GPU  تعد SUSE Linux Enterprise Base Container Images (SLE BCI) خيارًا موثوقًا به للمؤسسات ذات متطلبات الأمان الصارمة، مما يوفر شهادات أمان لا مثيل لها (بما في ذلك المعايير العامة وFIPS وEAL) وإمكانية الدعم المحسنة حتى عند تشغيل مجموعات البرامج غير المتجانسة.  1.1 النطاق   يغطي هذا الدليل ما يلي:  إنشاء صورة حاوية متوافقة مع OCI على SUSE Linux Enterprise Base Container Images التي تتضمن برنامج تشغيل NVIDIA GPU  التحقق من صحة صورة الحاوية التي تدعم برنامج تشغيل NVIDIA GPU  نشر الصورة إلى سجل صورة الحاوية  نشر صورة الحاوية مع مخطط NVIDIA GPU Operator Helm إلى مجموعة Rancher Kubernetes Engine 2  التحقق من النشر  مهممهم يفترض هذا الدليل أنك تستخدم وحدات معالجة الرسومات NVIDIA من فئة مركز البيانات. يعد دمج وحدات معالجة الرسومات المخصصة للمستهلكين خارج نطاق هذا المستند.  1.2 الجمهور   هذا الدليل مخصص لمحترفي التكنولوجيا المتقدمة (بما في ذلك مسؤولي Kubernetes، وممارسي DevOps الأكفاء، ومطوري التطبيقات) الذين يسعون إلى إطلاق العنان للإمكانات الكاملة لتطبيقاتهم المعبأة في حاويات والتي يتم تسريعها باستخدام وحدة معالجة الرسومات.  لتحقيق النجاح، تحتاج إلى فهم أساسي لتقنيات Podman أو Docker وKubernetes وNVIDIA GPU.  1.3 شكر وتقدير   يرغب المؤلف في الاعتراف بالمساهمات في هذا الدليل من خلال:  ريس أوكسنهام، SUSE، المدير الأول لقسم PM& الهندسة – الحافة  أليكس زاكارو، SUSE، مهندس الحلول – هندسة البرمجيات (الأنظمة)  تيري سميث، SUSE، مدير حلول الشركاء العالميين  2 المتطلبات الأساسية   قبل الشروع في الإجراءات الموضحة في هذا الدليل، تأكد من أن بيئتك جاهزة بالموارد المذكورة هنا.  بناء المضيف  مضيف البناء الخاص بك هو نظام الكمبيوتر (المادي أو الظاهري) الذي تقوم ببناء الحاوية المتوافقة مع OCI عليه.  ملحوظةملحوظة لا يتطلب مضيف البناء الوصول إلى وحدة معالجة الرسومات NVIDIA.  يجب أن يتمتع مضيف البناء الخاص بك بما يلي:  نظام التشغيل  تم تطوير هذا الدليل على مضيف بناء يقوم بتشغيل SUSE Linux Enterprise Server 15 SP5.  على الرغم من أن ذلك ليس مطلوبًا، فمن المستحسن أن يتطابق نظام التشغيل الخاص بمضيف الإصدار الخاص بك مع الإصدار وحزمة الخدمة الخاصة بصور حاوية SUSE Linux Enterprise Base التي ستستخدمها لتأسيس صور الحاوية الخاصة بك. يمكنك العثور على الصور المتاحة في SUSE Container Images Registry.  مهممهم يمكنك الاختيار من بين عدة صور للحاويات الأساسية من SUSE. يستخدم هذا الدليل صورة حاوية تطوير SLE BCI Go 1.18 المتوفرة في وقت كتابة هذا التقرير. تأكد من ملاحظة إصدار لغة Go في صورة الحاوية الأساسية التي تختارها. أنت بحاجة إلى هذا أثناء عملية الإنشاء.  وحدات SUSE Linux Enterprise Server  توفر الوحدات والامتدادات وظائف إضافية لنظام SUSE Linux Enterprise Server الخاص بك.  تمكين الحاويات وتطبيقات سطح المكتب وأدوات التطوير الوحدات النمطية:  الإصدار = 15 ليرة سورية = 5 sudo SUSEConnect -p sle-module-containers/${VER}.${SP}/x86_64 Sudo SUSEConnect -p sle-module-desktop-applications/${VER}.${SP}/x86_64 Sudo SUSEConnect -p sle-module-development-tools/${VER}.${SP}/x86_64 ينسخ ملحوظةملحوظة تأكد من تحديث المتغيرات VER و SP بإصدار SLES وحزمة الخدمة التي تستخدمها.  بودمان  Podman (أو أداة Pod Manager) عبارة عن محرك حاوية غير خفي لإدارة مبادرة الحاوية المفتوحة (OCI)حاويات.  تثبيت بودمان:  سودو زيبر تثبيت بودمان ينسخ شخص سخيف  Git هو نظام مجاني ومفتوح المصدر وموزع للتحكم في الإصدار يعمل على تبسيط الوصول إلى كود المصدر وإدارته.  تثبيت أدوات Git الأساسية:  سودو زيبر تثبيت git-core ينسخ كوبيكتل  تتيح لك أداة سطر أوامر Kubernetes، kubectl، التواصل مع مستوى التحكم في مجموعة Kubernetes لنشر التطبيقات وفحص موارد المجموعة وإدارتها والمزيد.  تثبيت وإعداد Kubectl على مضيف البناء الخاص بك.  معرفة المزيد حول كيفية إدارة Kubernetes باستخدام Kubectl.  القياده  يساعدك Helm على إدارة تطبيقات Kubernetes. باستخدام مخططات Helm، يمكنك تحديد تطبيقات Kubernetes المعقدة وتثبيتها وترقيتها.  تثبيت وإعداد Helm على مضيف البناء الخاص بك.  ملحوظةملحوظة لا تحتاج إلى تثبيت Kubectl أو Helm إذا كنت تخطط لنشر حاوية NVIDIA GPU Driver إلى مجموعة Kubernetes الخاصة بك من نظام آخر غير مضيف البناء الخاص بك.  الوصول إلى صور حاوية SUSE  تحقق من أن مضيف الإصدار الخاص بك يمكنه الوصول إلى صور الحاوية الأساسية وتنزيلها من SUSE Container Images Registry.  مجموعة كوبرنيتيس  يجب أن تحتوي مجموعة Kubernetes الخاصة بك على عقد عاملة مجهزة ومهيأة بـ وحدات معالجة الرسومات NVIDIA من فئة مركز البيانات.  الحاويات ووحدات NVIDIA Compute  قم بتمكين وحدة الحاويات ووحدة NVIDIA Compute على كل عقدة عاملة.  الإصدار = 15 ليرة سورية = 5 sudo SUSEConnect -p sle-module-containers/${VER}.${SP}/x86_64 sudo SUSEConnect -p sle-module-NVIDIA-compute/${VER}/x86_64 ينسخ ملحوظةملحوظة تأكد من تحديث المتغيرات VER و SP بإصدار SLES وحزمة الخدمة التي تستخدمها.  برنامج نفيديا  قم بتثبيت حزم برامج NVIDIA المطلوبة على كل عقدة.  تثبيت سودو زيبر \   نواة البرامج الثابتة نفيديا \   أدوات حاوية libnvidia \   حاوية libnvidia1 \   وقت تشغيل حاوية نفيديا \   إصدار sle-module-NVIDIA-compute ينسخ بودمان  قم بتثبيت Podman على واحدة على الأقل من العقد العاملة.  سودو زيبر تثبيت بودمان ينسخ محرك رانشر كوبرنيتيس 2 (RKE2)  RKE2 هو توزيع Kubernetes الذي يركز على الأمان والذي تم تطويره بواسطة SUSE.  تأكد من أن العقد العاملة لديك جزء من مجموعة RKE2. يمكنك نشر RKE2 على العقد العاملة يدويًا أو استخدام Rancher by SUSE لـ قم بتدوير المجموعة وتكوينها.  الوصول إلى سجل صورة الحاوية من مضيف البناء ومن مجموعة RKE2.  يؤدي استخدام سجل الحاوية إلى تبسيط عملية نشر الحاوية التي تدعم وحدة معالجة الرسومات (GPU) عبر جميع العقد العاملة في Kubernetes. يمكن أن يكون هذا سجلاً عامًا أو خاصًا، محليًا أو مستضافًا عن بعد. ولكن يجب أن تكون قادرًا على دفع صور الحاوية الخاصة بك إلى السجل من مضيف البناء الخاص بك واستردادها على مجموعتك.  نصيحةنصيحة لا يحتاج سجل الحاوية إلى دعم المصادقة، ولكن يجب تهيئته باستخدام شهادة TLS صالحة.  3 إعداد بيئتك   هناك حاجة إلى معلومات معينة عدة مرات خلال عملية الإنشاء وحتى عملية النشر. يمكن تخزين هذه المعلومات في متغيرات البيئة واسترجاعها حسب الحاجة، مما يساعدك على تبسيط الأوامر وتجنب الأخطاء والحفاظ على الاتساق.  مهممهم قم بتشغيل كافة الأوامر على مضيف البناء الخاص بك.  قم بتسجيل الدخول إلى مضيف البناء الخاص بك.  قم بإنشاء الملف /tmp/build-variables.sh.  قطة<<EOF> /tmp/build-variables.sh تسجيل التصدير=”” تصدير SLE_VERSION=”” تصدير SLE_SP=”” تصدير DRIVER_VERSION=”” تصدير OPERATOR_VERSION=”” تصدير CUDA_VERSION=”” EOF ينسخ قم بتحرير الملف /tmp/build-variables.sh لتوفير القيم المناسبة لمشروعك.  REGISTRY: عنوان URL الخاص بالتسجيل الذي سيتم حفظ صورة الحاوية الجديدة فيه  SLE_VERSION: إصدار صور حاوية SUSE Linux Enterprise Base  SLE_SP: رقم حزمة خدمة SUSE Linux Enterprise Base Container Images  DRIVER_VERSION: إصدار برنامج تشغيل NVIDIA GPU  ابحث عن أحدث “برنامج تشغيل مركز البيانات لنظام التشغيل Linux x64” إصدار وحدة معالجة الرسومات لديك على تنزيلات برنامج تشغيل NVIDIA.  OPERATOR_VERSION: إصدار مشغل GPU NVIDIA  ابحث عن الإصدار NVIDIA GPU Operator المرتبط.  CUDA_VERSION: إصدار NVIDIA CUDA المناسب لبرنامج تشغيل NVIDIA GPU المحدد  تم إدراج إصدار CUDA ضمن “إصدارات البرامج”؛ عندما تجد إصدار برنامج التشغيل الخاص بك على تنزيلات برنامج تشغيل NVIDIA.  على سبيل المثال، يجب أن يبدو ملفك /tmp/build-variables.sh بالشكل التالي:  تصدير التسجيل=”registry.example.com” تصدير SLE_VERSION=”15″ تصدير SLE_SP=”5″ تصدير DRIVER_VERSION=”535.104.05″ تصدير OPERATOR_VERSION=”v23.6.1″ تصدير CUDA_VERSION=”12.2.2″ ينسخ احصل على مصدر ملف /tmp/build-variables.sh لتعيين المتغيرات في بيئة الجلسة الحالية.  المصدر /tmp/build-variables.sh ينسخ مهممهم يتم فقدان هذه المتغيرات عند قطع الاتصال بجلستك الطرفية. لإعادة إنشائها، ما عليك سوى الحصول على مصدر ملف متغيرات البناء مرة أخرى.  4 إنشاء صورة الحاوية   في مضيف الإصدار الخاص بك، تأكد من حصولك على مصدر ملف /tmp/build-variables.sh لتعيين متغيرات البيئة الخاصة بك.  يمكنك التحقق من المتغيرات الخاصة بك مع:  صدى ” التسجيل=${التسجيل} SLE_VERSION=${SLE_VERSION} SLE_SP=${SLE_SP} DRIVER_VERSION=${DRIVER_VERSION} CUDA_VERSION=${CUDA_VERSION}” ينسخ قم باستنساخ مستودع GitLab لبرنامج تشغيل NVIDIA وقم بالتغيير إلى الدليل driver/sle15.  استنساخ بوابة https://gitlab.com/nvidia/container-images/driver/ && سائق القرص المضغوط/sle15 ينسخ حدد موقع الملف، Dockerfile، وقم بتحديثه ليعكس متطلبات الإصدار الخاصة بك.  قم بعمل نسخة احتياطية من Dockerfile قبل تعديل النسخة الأصلية.  cp Dockerfile /tmp/Dockerfile.orig ينسخ قم بتحديث صورة حاوية بناء جولانج إلى الإصدار 1.18.  sed -i “/^FROM/ s/golang\:1\…/golang\:1.18/” ملف الإرساء ينسخ قم بتحديث صورة الحاوية الأساسية إلى SLES 15 SP5 BCI:  sed -i ‘/^FROM/ s/suse\/sle$15/bci\/bci-base/’ ملف الإرساء ينسخ تحقق من إجراء التغييرات بشكل صحيح على Dockerfile.  فرق /tmp/Dockerfile.orig Dockerfile ينسخ بناء صورة الحاوية.  مهممهم عند إنشاء صورة الحاوية، قد تتم مطالبتك بالتسجيل الذي يحتوي على الصورة nvidia/cuda. إذا كان الأمر كذلك، فحدد الصورة الموجودة في docker.io.  نفذ الأمر podman build، مع تمرير الوسائط الضرورية.  سودو بودمان بناء -t \ ${REGISTRY}/nvidia-sle${SLE_VERSION}sp${SLE_SP}-${DRIVER_VERSION}:${DRIVER_VERSION} \   –build-arg SLES_VERSION=”${SLE_VERSION}.${SLE_SP}” \   –build-arg DRIVER_ARCH=”x86_64″ \   –build-arg DRIVER_VERSION=”${DRIVER_VERSION}” \   –build-arg CUDA_VERSION=”${CUDA_VERSION}” \   –build-arg PRIVATE_KEY=فارغ \ . ينسخ شاهد مخرجات البناء بحثًا عن الأخطاء والتحذيرات والفشل.  يمكنك تجاهل الأخطاء والتحذيرات التي لا توقف عملية الإنشاء بأمان.  التحقق من انتهاء عملية الإنشاء بنجاح.  يجب أن تشاهد رسالة مثل:  الالتزام بالتسجيل.susealliances.com/nvidia-sle15sp5-535.104.05 –> ج976870489 تم وضع علامة على التسجيل بنجاح.susealliances.com/nvidia-sle15sp5-535.104.05:latest cf9768704892c4b8b9e37a4ef591472e121b81949519204811dcc37d2be9d16c ينسخ قم بإزالة صور الحاوية المتوسطة التي تم إنشاؤها أثناء عملية الإنشاء.  لـ X في $(sudo podman Images | awk ‘/none/ {print$3}’); افعل sudo podman rmi ${X}; منتهي ينسخ ادفع الصورة المبنية حديثًا إلى سجل الحاوية.  مهممهم إذا كان سجل الحاوية الهدف يتطلب مصادقة، استخدم أمر Podman login للمصادقة بنجاح قبل المتابعة.  أضف علامة إلى الصورة التي سيتم استخدامها عند نشر الصورة إلى مجموعة Kubernetes.  علامة Sudo podman ${REGISTRY}/nvidia-sle${SLE_VERSION}sp${SLE_SP}-${DRIVER_VERSION}:${DRIVER_VERSION} ${REGISTRY}/driver:${DRIVER_VERSION}-sles${SLE_VERSION}.${ SLE_SP} ينسخ ادفع الصورة بكلتا العلامتين.  Sudo podman Push ${REGISTRY}/nvidia-sle${SLE_VERSION}sp${SLE_SP}-${DRIVER_VERSION}:${DRIVER_VERSION} && Sudo podman دفع ${REGISTRY}/driver:${DRIVER_VERSION}-sles${SLE_VERSION}.${SLE_SP} ينسخ تأكد من حفظ الصورة في السجل، وإتاحتها عن بعد.  بحث Sudo podman –list-tags ${REGISTRY}/driver:${DRIVER_VERSION}-sles${SLE_VERSION}.${SLE_SP} ينسخ (اختياري) التحقق من صحة صورة الحاوية باستخدام Podman  للتحقق من صحة الحاوية خارج سياق Kubernetes، استخدم العقدة العاملة التي قمت بتثبيت Podman عليها.  افتح جلسة طرفية للعقدة العاملة التي ستستخدمها للاختبار.  قم بإنشاء الدليل /run/nvidia، إذا لم يكن موجودًا بعد.  sudo mkdir -p /run/nvidia ينسخ انسخ ملف /tmp/build-variables.sh إلى العقدة.  احصل على مصدر الملف /tmp/build-variables.sh لتعيين متغيرات البيئة لديك.  المصدر /tmp/build-variables.sh ينسخ قم بتشغيل حاوية NVIDIA GPU Driver محليًا.  تشغيل سودو بودمان -d \   –اسم السائق.${DRIVER_VERSION}-sles${SLE_VERSION}.${SLE_SP} \   –ذو امتياز \   –pid=المضيف \   -v /run/nvidia:/run/nvidia:shared \   -v /var/log:/var/log \   –restart=unless-stopped \   ${REGISTRY}/السائق:${DRIVER_VERSION}-sles${SLE_VERSION}.${SLE_SP} ينسخ تأكد من تشغيل الحاوية.  سودو بودمان ملاحظة -أ ينسخ ملحوظةملحوظة يجب أن تظهر الحاوية STATUS “Up” ويجب أن يزيد مقدار الوقت المنقضي مع تكرار تشغيل الأمر.  راقب نشر برنامج تشغيل NVIDIA GPU من خلال مراجعة الإخراج القياسي للحاوية قيد التشغيل.  يسجل Sudo podman -f driver.${DRIVER_VERSION}-sles${SLE_VERSION}.${SLE_SP} ينسخ تأكد من اكتمال عملية النشر بنجاح.  يجب أن تشاهد الرسالة التالية في الإخراج:  جارٍ تركيب برنامج التشغيل {nvidia-org} rootfs… تم، الآن في انتظار الإشارة ينسخ أغلق جلسة عرض السجل بالضغط على CTRL+C.  تأكد من تحميل وحدات NVIDIA kernel.  سودو lsmod | grep نفيديا ينسخ من المفترض أن ترى أنه قد تم تحميل وحدات النواة nvidia، وnvidia_modeset، وnvidia_uvm.  تحقق من إمكانية اتصال الأداة المساعدة nvidia-smi بوحدة معالجة الرسومات.  سودو بودمان إكسيك -it \      driver.${DRIVER_VERSION}-sles${SLE_VERSION}.${SLE_SP} nvidia-smi ينسخ عندما تكون جاهزًا للمضي قدمًا، توقف وأزل الحاوية.  Sudo podman stop driver.${DRIVER_VERSION}-sles${SLE_VERSION}.${SLE_SP} && Sudo podman rm driver.${DRIVER_VERSION}-sles${SLE_VERSION}.${SLE_SP} ينسخ 5 النشر في مجموعة Kubernetes   يوفر Kubernetes إمكانية الوصول إلى أجهزة خاصة، مثل وحدات معالجة الرسومات، ومحولات الشبكة، وأجهزة أخرى من خلال إطار عمل المكونات الإضافية للجهاز. يتضمن تكوين هذه الموارد وإدارتها مكونات برامج متعددة، بما في ذلك برامج التشغيل والمكتبات وأوقات تشغيل الحاويات. قد يكون هذا صعبًا وعرضة للخطأ. يساعد مشغل NVIDIA GPU في التغلب على هذه الصعوبات باستخدام إطار عمل مشغل Kubernetes لأتمتة إدارة مكونات برنامج NVIDIA.  الطريقة المفضلة لتثبيت NVIDIA GPU Operator هي باستخدام Helm مدير حزم Kubernetes. تعرف على المزيد حول كيفية إدارة Kubernetes باستخدام Kubectl.  بالإضافة إلى Helm وKubectl، تحتاج أيضًا إلى ملف kubeconfig لمجموعة Kubernetes المستهدفة. إذا كنت تستخدم Rancher by SUSE لإدارة مجموعتك، فيمكنك استخدام تنزيل ملف kubeconfig الخاص بمجموعتك لاستخدامه على مضيف البناء الخاص بك أو Linux الآخر النظام.  ملحوظةملحوظة إذا كنت تستخدم نظامًا آخر غير مضيف البناء الخاص بك لنشر الحاوية الخاصة بك، فتأكد من أن لديك:  كوبيكتل وهيلم  ملف kubeconfig لمجموعتك  الملف /tmp/build-variables.sh من القسم 3، “إعداد بيئتك”  حذرحذر يمنح ملف kubeconfig الحقوق (في كثير من الحالات على مستوى المسؤول) لإجراء تغييرات على مجموعة Kubernetes. توخ الحذر الشديد لإبقائه آمنًا وإزالته من أي مضيفين/عقد بعد عدم الحاجة إليه.  قبل بدء النشر، تأكد من عدم تحميل وحدات NVIDIA kernel على أي من العقد العاملة في Kubernetes.  قم بتسجيل الدخول إلى كل عقدة وقم بإدراج وحدات NVIDIA kernel المحملة.  سودو lsmod | grep نفيديا ينسخ نصيحةنصيحة إذا لم يتم تحميل أي وحدات NVIDIA، فيجب أن يكون مخرج الأمر فارغًا.  قم بإلغاء تحميل أي وحدات تحتوي على “nvidia”.  Sudo modprobe -r <module-name> ينسخ حيث <module-name> هو اسم وحدة kernel المعروضة بواسطة الأمر lsmod.  ملحوظةملحوظة إذا فشل إلغاء تحميل أي وحدات، فأعد تشغيل العقدة.  قم بتسجيل الدخول إلى مضيف البناء الخاص بك أو النظام الذي تستخدمه لإدارة النشر إلى مجموعتك.  تأكد من تعيين متغيرات البيئة الخاصة بك.  أضف مستودع برامج NVIDIA helm.  أضف هيلم ريبو https://helm.ngc.nvidia.com/nvidia تحديث هيلم الريبو ينسخ تأكد من أنك تستهدف المجموعة الصحيحة.  صدى صوت صدى “اسم المجموعة: $(السياق الحالي لتكوين kubectl)” صدى “” kubectl الحصول على العقد -o واسعة صدى “” ينسخ إذا لم تكن هذه هي المجموعة الصحيحة، فتأكد من أنك قمت بإعداد ملف kubeconfig الخاص بك بشكل صحيح.  قم بنشر مشغل NVIDIA GPU مع Helm.  تثبيت الدفة -n مشغل GPU \   –إنشاء اسم \   –انتظر \   –إنشاء مساحة الاسم \   –version=${OPERATOR_VERSION} \     مشغل نفيديا/GPU \   –set driver.repository=${REGISTRY} \   –set driver.version=${DRIVER_VERSION} \   – تعيين عامل التشغيل.defaultRuntime=containerd \   –set toolkit.env[0].name=CONTAINERD_CONFIG \   –set toolkit.env[0].value=/var/lib/rancher/rke2/agent/etc/containerd/config.toml \   –set toolkit.env[1].name=CONTAINERD_SOCKET \   –set toolkit.env[1].value=/run/k3s/containerd/containerd.sock \   –set toolkit.env[2].name=CONTAINERD_RUNTIME_CLASS \   –set toolkit.env[2].value=nvidia \   –set toolkit.env[3].name=CONTAINERD_SET_AS_DEFAULT \   –set-string toolkit.env[3].value=true ينسخ تحقق من نشر مشغل NVIDIA GPU وNVIDIA GPU Driver والعناصر المرتبطة بشكل صحيح.  kubectl يحصل على pods -n gpu-operator ينسخ يجب أن تشاهد إخراجًا مشابهًا لما يلي:  حالة الاستعداد للاسم تعيد تشغيل العمر  gpu-feature-discovery-crrsq 1/1 يعمل 0 60 ثانية  مشغل GPU-7fb75556c7-x8spj 1/1 قيد التشغيل 0 5m13s  GPU-operator-node-feature-discovery-master-58d884d5cc-w7q7b 1/1 تشغيل 0 5m13s  GPU-operator-node-feature-discovery-worker-6rht2 1/1 تشغيل 0 5m13s  GPU-operator-node-feature-discovery-worker-9r8js 1/1 تشغيل 0 5m13s  nvidia-container-toolkit-daemonset-lhgqf 1/1 تشغيل 0 4m53s  nvidia-cuda-validator-rhvbb 0/1 اكتمل 0 54 ثانية  nvidia-dcgm-5jqzg 1/1 يعمل 0 60 ثانية  nvidia-dcgm-exporter-h964h 1/1 يعمل 0 60 ثانية  nvidia-device-plugin-daemonset-d9ntc 1/1 يعمل 0 60 ثانية  nvidia-device-plugin-validator-cm2fd 0/1 اكتمل 0 48 ثانية  nvidia-driver-daemonset-5xj6g 1/1 تشغيل 0 4m53s  nvidia-mig-manager-89z9b 1/1 تشغيل 0 4m53s  nvidia-operator-validator-bwx99 1/1 يعمل 0 58 ثانية ينسخ 6 التحقق من حالة البرنامج   يوفر مخطط NVIDIA GPU Operator Helm حجرتين للتحقق من حالة البرنامج المثبت.  التحقق من صحة حالة برنامج NVIDIA GPU Operator.  kubectl logs -n gpu-operator -l app=nvidia-operator-validator ينسخ يجب أن يكون الإخراج مشابهًا لما يلي:  الحاوية الافتراضية “nvidia-operator-validator” خارج: nvidia-operator-validator، والتحقق من صحة برنامج التشغيل (init)، والتحقق من صحة مجموعة الأدوات (init)، والتحقق من صحة cuda (init)، والتحقق من صحة البرنامج المساعد (init)  جميع عمليات التحقق ناجحة  التحقق من صحة حالة برنامج NVIDIA CUDA Toolkit.  kubectl logs -n gpu-operator -l app=nvidia-cuda-validator ينسخ يجب أن يكون الإخراج مشابهًا لما يلي:  الحاوية الافتراضية “nvidia-cuda-validator” خارج: nvidia-cuda-validator، cuda-validation (init)  تم التحقق من صحة عبء عمل cuda بنجاح  تحقق من أن برنامج تشغيل NVIDIA GPU يتصل بوحدة معالجة الرسومات.  كوبيكتل إكسيك -it \ “$(لكل في \ $(kubectl get pods -n gpu-operator \ -l app=nvidia-driver-daemonset \ -o jsonpath={.items..metadata.name}); \ قم بعمل صدى ${EACH}; تم)” \ -n مشغل وحدة معالجة الرسومات \ نفيديا-smi ينسخ نصيحةنصيحة يمكن أيضًا استخدام هذا الأمر للتحقق من عمليات التطبيق التي يتم تشغيلها على وحدات معالجة الرسومات NVIDIA وعدد الموارد التي يتم استهلاكها.  يجب أن يكون الإخراج مشابهًا للإخراج nvidia-smi عند التحقق من صحة وظيفة صورة حاوية NVIDIA GPU Driver من خلال Podman.  7 التنظيف   بعد إكمال هذا الإجراء، قم بإزالة /tmp/build-variables.sh وملفات /tmp/Dockerfile.orig من مضيف الإصدار وأي عقد عاملة في Kubernetes.  وأيضًا، عندما تصبح جاهزًا، قم بإزالة ملف kubeconfig الخاص بمجموعة Kubernetes من مضيف البناء و/أو أي عقد أخرى ربما تم نسخه إليها.  8 الملخص   أصبحت وحدات معالجة الرسومات (GPUs) تقنية أساسية في العصر الحديث، حيث تعمل على تسريع الوقت اللازم للوصول إلى المعرفة وتوسيع القدرات. كان لوحدات معالجة الرسومات تأثيرات هائلة في الذكاء الاصطناعي، والتعلم الآلي، والمحاكاة العلمية والهندسية، وغيرها من تطبيقات الحوسبة عالية الأداء. وكانت تأثيرات تقنيات الحاويات مثيرة بنفس القدر، حيث أعادت تشكيل كيفية تطوير التطبيقات ونشرها وإدارتها. يوفر الجمع بين هاتين التقنيتين معًا العديد من الفوائد، بما في ذلك التطوير الأسرع، وتحسين إمكانية نقل التطبيقات، والقياس الأسهل، والإدارة المبسطة.  في هذا الدليل، تعلمت كيفية:  أنشئ صور حاوية متوافقة مع OCI باستخدام NVIDIA GPU Driver على SUSE Linux Enterprise Base Container Images  قم بنشر صورة الحاوية التي تدعم برنامج تشغيل NVIDIA GPU مع NVIDIA GPU Operator على مجموعات Rancher Kubernetes Engine 2  يؤكد الاختيار الاستراتيجي لـ SUSE Linux Enterprise Base Container Images كأساس لهذا التكامل على الالتزام بالأمان وقابلية الدعم. تعتمد المؤسسات ذات متطلبات الأمان الصارمة على شهادات SUSE Linux Enterprise Server العديدة، بما في ذلك Common Criteria وFIPS وEAL. ويتم تعزيز ذلك من خلال اختيار توزيع Kubernetes الذي يركز على الأمان، مثل Rancher Kubernetes Engine 2. ومع التزام SUSE بتوفير دعم قوي لمجموعات البرامج غير المتجانسة، يمكن للعملاء تصميم مشهد تكنولوجيا المعلومات الخاص بهم ليناسب تحدياتهم الفريدة دون المساس بالأمان والقدرة والسرعة. أو الأداء.  9 إشعار قانوني   حقوق الطبع والنشر © 2006–2023 SUSE LLC والمساهمين. كل الحقوق محفوظة.  يتم منح الإذن لنسخ وتوزيع و/أو تعديل هذه الوثيقة بموجب شروط رخصة جنو للوثائق الحرة، الإصدار 1.2 أو (حسب اختيارك) الإصدار 1.3؛ مع كون القسم الثابت هو إشعار حقوق النشر والترخيص هذا. تم تضمين نسخة من الترخيص الإصدار 1.2 في القسم المعنون “رخصة جنو للوثائق الحرة”.  SUSE وشعار SUSE وYaST هي علامات تجارية مسجلة لشركة SUSE LLC في الولايات المتحدة وبلدان أخرى. للتعرف على العلامات التجارية لـ SUSE، راجع https://www.suse.com/company/legal/.  Linux هي علامة تجارية مسجلة لشركة Linus Torvalds. جميع الأسماء أو العلامات التجارية الأخرى المذكورة في هذا المستند قد تكون علامات تجارية أو علامات تجارية مسجلة لأصحابها.  تم المساهمة بالوثائق المنشورة كجزء من سلسلة الوثائق المرجعية الفنية لـ SUSE طوعًا من قبل موظفي SUSE والجهات الخارجية. والمقصود منها أن تكون بمثابة أمثلة لكيفية تنفيذ إجراءات معينة. لقد تم تجميعها مع أقصى قدر من الاهتمام بالتفاصيل. ومع ذلك، هذا لا يضمن الدقة الكاملة. لا تستطيع SUSE التحقق من أن الإجراءات الموضحة في هذه المستندات تؤدي ما تمت المطالبة به أو ما إذا كانت الإجراءات الموضحة لها عواقب غير مقصودة. لا يجوز تحميل شركة SUSE LLC والشركات التابعة لها والمؤلفين والمترجمين المسؤولية عن الأخطاء المحتملة أو العواقب المترتبة عليها.  10 رخصة جنو للوثائق الحرة   حقوق الطبع والنشر © 2000، 2001، 2002 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. يُسمح للجميع بنسخ وتوزيع نسخ حرفية من وثيقة الترخيص هذه، ولكن لا يُسمح بتغييرها.  0. الديباجة الغرض من هذا الترخيص هو إنشاء دليل أو كتاب مدرسي أو أي مستند وظيفي ومفيد آخر “مجاني” بمعنى الحرية: ضمان الحرية الفعالة للجميع في نسخها وإعادة توزيعها، مع أو بدون تعديلها، سواء تجاريًا أو غير تجاري. ثانيًا، يوفر هذا الترخيص للمؤلف والناشر طريقة للحصول على الفضل في أعمالهم، في حين لا يعتبر مسؤولاً عن التعديلات التي يجريها الآخرون.  هذا الترخيص هو نوع من “الحقوق المتروكة”، مما يعني أن الأعمال المشتقة من الوثيقة يجب أن تكون حرة بنفس المعنى. وهو مكمل لرخصة جنو العامة، وهي رخصة الحقوق المتروكة المصممة للبرمجيات الحرة.  لقد قمنا بتصميم هذا الترخيص لاستخدامه في أدلة البرامج المجانية، لأن البرامج المجانية تحتاج إلى وثائق مجانية: يجب أن يأتي البرنامج المجاني مع أدلة توفر نفس الحريات التي يوفرها البرنامج. لكن هذا الترخيص لا يقتصر على أدلة البرامج؛ يمكن استخدامه في أي عمل نصي، بغض النظر عن الموضوع أو ما إذا كان منشورًا ككتاب مطبوع. نوصي بهذا الترخيص بشكل أساسي للأعمال التي يكون غرضها التعليم أو المرجع.  1. قابلية التطبيق والتعريفات ينطبق هذا الترخيص على أي دليل أو عمل آخر، في أي وسيط، يحتوي على إشعار وضعه صاحب حقوق الطبع والنشر يفيد بإمكانية توزيعه بموجب شروط هذا الترخيص. يمنح هذا الإشعار ترخيصًا عالميًا بدون حقوق ملكية وغير محدود المدة لاستخدام هذا العمل وفقًا للشروط المذكورة هنا. تشير “المستند” أدناه إلى أي دليل أو عمل من هذا القبيل. أي فرد من الجمهور هو مرخص له، ويتم مخاطبته باسم “أنت”. أنت تقبل الترخيص إذا قمت بنسخ العمل أو تعديله أو توزيعه بطريقة تتطلب الحصول على إذن بموجب قانون حقوق الطبع والنشر.  “نسخة معدلة” “المستند” يعني أي عمل يحتوي على المستند أو جزء منه، إما منسوخًا حرفيًا أو مع تعديلات و/أو مترجمًا إلى لغة أخرى.  “القسم الثانوي” هو ملحق مسمى أو قسم في المقدمة من المستند يتعامل حصريًا مع علاقة الناشرين أو مؤلفي المستند بالموضوع العام للمستند (أو بالمسائل ذات الصلة) ولا يحتوي على أي شيء يمكن أن يقع مباشرة ضمن هذا الموضوع العام. (وبالتالي، إذا كانت الوثيقة في جزء منها كتابًا دراسيًا للرياضيات، فقد لا يشرح القسم الثانوي أي رياضيات.) يمكن أن تكون العلاقة مسألة ارتباط تاريخي بالموضوع أو بالمسائل ذات الصلة، أو علاقة قانونية أو تجارية أو فلسفية أو أخلاقية. أو موقف سياسي تجاههم.  “الأقسام الثابتة” هي أقسام ثانوية معينة تم تحديد عناوينها، على أنها عناوين الأقسام الثابتة، في الإشعار الذي يشير إلى أن الوثيقة قد تم إصدارها بموجب هذا الترخيص. إذا كان القسم لا يتوافق مع التعريف أعلاه للثانوي، فلا يجوز تعيينه على أنه ثابت. قد تحتوي الوثيقة على صفر أقسام ثابتة. إذا لم تحدد الوثيقة أي أقسام ثابتة، فلن يكون هناك أي منها.  “نصوص الغلاف” هي فقرات نصية قصيرة محددة مدرجة، كنصوص الغلاف الأمامي أو نصوص الغلاف الخلفي، في الإشعار الذي يشير إلى أن المستند قد تم إصداره بموجب هذا الترخيص. يمكن أن يتكون نص الغلاف الأمامي من 5 كلمات على الأكثر، ويجوز أن يتكون نص الغلاف الخلفي من 25 كلمة على الأكثر.  “شفاف” نسخة من المستند تعني نسخة يمكن قراءتها آليًا، وممثلة بتنسيق تتوفر مواصفاته لعامة الناس، وتكون مناسبة لمراجعة المستند بشكل مباشر باستخدام برامج تحرير النصوص العامة أو (بالنسبة للصور المكونة من وحدات بكسل) برامج الطلاء العامة أو (للصور الرسومات) أحد برامج تحرير الرسم المتاحة على نطاق واسع، والتي تكون مناسبة للإدخال في تنسيقات النصوص أو للترجمة التلقائية إلى مجموعة متنوعة من التنسيقات المناسبة للإدخال في تنسيقات النصوص. النسخة التي تم إنشاؤها بتنسيق ملف شفاف، والتي تم ترتيب علاماتها أو عدم وجود علامات عليها، لإحباط أو تثبيط التعديلات اللاحقة من قبل القراء، ليست شفافة. لا يكون تنسيق الصورة شفافًا إذا تم استخدامه لأي قدر كبير من النص. نسخة غير “شفافة” يسمى “مبهم”.  تتضمن أمثلة التنسيقات المناسبة للنسخ الشفافة ASCII العادي بدون علامات، وتنسيق إدخال Texinfo، وتنسيق إدخال LaTeX، وSGML أو XML باستخدام DTD متاح للعامة، وHTML أو PostScript أو PDF البسيط المتوافق مع المعايير والمصمم للتعديل البشري. تتضمن أمثلة تنسيقات الصور الشفافة PNG وXCF وJPG. تشتمل التنسيقات غير الشفافة على التنسيقات الخاصة التي لا يمكن قراءتها وتحريرها إلا بواسطة معالجات النصوص الخاصة، أو SGML أو XML التي لا تتوفر لها DTD و/أو أدوات المعالجة بشكل عام، وتنسيقات HTML أو PostScript أو PDF التي يتم إنشاؤها بواسطة الآلة والتي تنتجها بعض معالجات النصوص لـ أغراض الإخراج فقط.  “صفحة العنوان” يعني، بالنسبة للكتاب المطبوع، صفحة العنوان نفسها، بالإضافة إلى الصفحات التالية اللازمة لاستيعاب المواد التي يتطلبها هذا الترخيص لتظهر في صفحة العنوان بشكل مقروء. بالنسبة للأعمال ذات التنسيقات التي لا تحتوي على أي صفحة عنوان، فإن “صفحة العنوان” يقصد به النص القريب من أبرز ظهور لعنوان المصنف، والذي يسبق بداية متن النص.  قسم “بعنوان XYZ” يعني وحدة فرعية مسماة من المستند يكون عنوانها إما XYZ على وجه التحديد أو يحتوي على XYZ بين قوسين بعد النص الذي يترجم XYZ بلغة أخرى. (هنا يشير XYZ إلى اسم قسم محدد مذكور أدناه، مثل “الشكر والتقدير” أو “الإهداءات” أو “التصديقات” أو “التاريخ”.) “للحفاظ على العنوان” وجود مثل هذا القسم عند تعديل المستند يعني أنه يظل قسمًا “بعنوان XYZ” وفقا لهذا التعريف.  قد يتضمن المستند إخلاء المسؤولية عن الضمان بجوار الإشعار الذي ينص على أن هذا الترخيص ينطبق على المستند. تعتبر إخلاء المسؤولية عن الضمان هذه مضمنة بالإشارة إلى هذا الترخيص، ولكن فقط فيما يتعلق بإخلاء المسؤولية عن الضمانات: أي إشارة ضمنية أخرى قد تتضمنها إخلاء المسؤولية عن الضمان هذه تعتبر باطلة وليس لها أي تأثير على معنى هذا الترخيص.  2. النسخ الحرفي يجوز لك نسخ المستند وتوزيعه بأي وسيلة، سواء تجاريًا أو غير تجاري، بشرط إعادة إنتاج هذا الترخيص وإشعارات حقوق الطبع والنشر وإشعار الترخيص الذي ينص على أن هذا الترخيص ينطبق على المستند في جميع النسخ، وعدم إضافة أي شروط أخرى على الإطلاق لتلك الخاصة بهذا الترخيص. لا يجوز لك استخدام التدابير الفنية لعرقلة أو التحكم في القراءة أو النسخ الإضافي للنسخ التي تقوم بإنشائها أو توزيعها. على أية حال، ستحصل على التعويضات مقابل النسخ. إذا قمت بتوزيع عدد كبير بما فيه الكفاية من النسخ، فيجب عليك أيضًا اتباع الشروط الواردة في القسم 3.  يمكنك أيضًا إعارة نسخ، وفقًا لنفس الشروط المذكورة أعلاه، ويجوز لك عرض النسخ علنًا.  3. النسخ بالكمية إذا قمت بنشر نسخ مطبوعة (أو نسخ في وسائط تحتوي عادة على أغلفة مطبوعة) من المستند، يزيد عددها عن 100، وكان إشعار ترخيص المستند يتطلب نصوص غلاف، فيجب عليك تضمين النسخ في أغلفة تحمل كل هذه بشكل واضح ومقروء نصوص الغلاف: نصوص الغلاف الأمامي على الغلاف الأمامي، ونصوص الغلاف الخلفي على الغلاف الخلفي. يجب أيضًا أن يحدد كلا الغلافين هويتك بوضوح وبشكل مقروء كناشر لهذه النسخ. يجب أن يعرض الغلاف الأمامي العنوان كاملاً مع أن تكون جميع كلمات العنوان بارزة ومرئية بشكل متساوٍ. يمكنك إضافة مواد أخرى على الأغطية بالإضافة إلى ذلك. النسخ مع التغييرات التي تقتصر على الأغلفة، طالما أنها تحافظ على عنوان الوثيقة وتستوفي هذه الشروط، يمكن اعتباره نسخًا حرفيًا في جوانب أخرى.  إذا كانت النصوص المطلوبة لأي من الغلافين كبيرة جدًا بحيث لا تتناسب بشكل مقروء، فيجب عليك وضع النصوص الأولى المدرجة (أكبر عدد ممكن بشكل معقول) على الغلاف الفعلي، ومتابعة الباقي على الصفحات المجاورة.  إذا قمت بنشر أو توزيع نسخ غير شفافة من المستند يزيد عددها عن 100، فيجب عليك إما تضمين نسخة شفافة يمكن قراءتها آليًا مع كل نسخة غير شفافة، أو الإشارة في كل نسخة غير شفافة أو معها إلى موقع شبكة الكمبيوتر الذي يمكن من خلاله الشبكة العامة- باستخدام public لديه حق الوصول إلى التنزيل باستخدام بروتوكولات الشبكة ذات المعايير العامة، نسخة شفافة كاملة من المستند، خالية من المواد المضافة. إذا استخدمت الخيار الأخير، فيجب عليك اتخاذ خطوات حكيمة إلى حد معقول، عندما تبدأ في توزيع النسخ غير الشفافة بكميات كبيرة، للتأكد من أن هذه النسخة الشفافة ستظل متاحة في الموقع المحدد حتى عام واحد على الأقل بعد آخر مرة قمت فيها بتوزيع نسخة نسخة غير شفافة (مباشرة أو من خلال وكلائك أو تجار التجزئة) من هذا الإصدار للجمهور.  يُطلب، ولكن ليس مطلوبًا، أن تتصل بمؤلفي المستند قبل إعادة توزيع أي عدد كبير من النسخ، لمنحهم فرصة لتزويدك بنسخة محدثة من المستند.  4. التعديلات يجوز لك نسخ وتوزيع نسخة معدلة من المستند بموجب شروط القسمين 2 و3 أعلاه، بشرط أن تقوم بإصدار النسخة المعدلة بموجب هذا الترخيص على وجه التحديد، مع قيام الإصدار المعدل بدور المستند، وبالتالي ترخيص توزيع وتعديل النسخة المعدلة لمن يملك نسخة منها. بالإضافة إلى ذلك، يجب عليك القيام بهذه الأشياء في الإصدار المعدل:  استخدم في صفحة العنوان (وعلى الأغلفة، إن وجدت) عنوانًا مختلفًا عن عنوان المستند، وعن عناوين الإصدارات السابقة (والتي يجب، إن وجدت، إدراجها في قسم “التاريخ” في المستند). يجوز لك استخدام نفس عنوان الإصدار السابق إذا سمح الناشر الأصلي لهذا الإصدار بذلك.  أدرج في صفحة العنوان، كمؤلفين، واحدًا أو أكثر من الأشخاص أو الكيانات المسؤولة عن تأليف التعديلات في النسخة المعدلة، جنبًا إلى جنب مع خمسة على الأقل من المؤلفين الرئيسيين للمستند (جميع المؤلفين الرئيسيين، إذا كان لديه أقل من خمسة)، ما لم يعفوا لك من هذا الشرط.  اذكر على صفحة العنوان اسم ناشر النسخة المعدلة، بصفته الناشر.  الحفاظ على جميع إشعارات حقوق النشر الخاصة بالمستند.  قم بإضافة إشعار حقوق الطبع والنشر المناسب لتعديلاتك بجوار إشعارات حقوق الطبع والنشر الأخرى.  قم بتضمين، مباشرة بعد إشعارات حقوق الطبع والنشر، إشعار ترخيص يمنح الإذن العام لاستخدام الإصدار المعدل بموجب شروط هذا الترخيص، بالشكل الموضح في الملحق أدناه.  احتفظ في إشعار الترخيص هذا بالقوائم الكاملة للأقسام الثابتة ونصوص الغلاف المطلوبة الواردة في إشعار ترخيص المستند.  تضمين نسخة غير معدلة من هذا الترخيص.  احفظ القسم المعنون “التاريخ” واحفظ عنوانه وأضف إليه بندًا يوضح على الأقل العنوان والسنة والمؤلفين الجدد وناشر النسخة المعدلة كما هو موضح في صفحة العنوان. إذا لم يكن هناك قسم بعنوان “التاريخ” في المستند، قم بإنشاء عنوان يوضح عنوان المستند وعامه ومؤلفيه وناشره كما هو موضح في صفحة العنوان الخاصة به، ثم أضف عنصرًا يصف النسخة المعدلة كما هو مذكور في الجملة السابقة.  احتفظ بموقع الشبكة، إن وجد، الوارد في المستند للوصول العام إلى نسخة شفافة من المستند، وكذلك مواقع الشبكة الواردة في المستند للإصدارات السابقة التي استند إليها. يمكن وضعها في قسم “التاريخ” قسم. يجوز لك حذف موقع الشبكة لعمل تم نشره قبل أربع سنوات على الأقل من المستند نفسه، أو إذا كان الناشر الأصلي للإصدار الذي يشير إليه يمنح الإذن بذلك.  لأي قسم بعنوان “الشكر والتقدير” أو “الإهداءات”، احتفظ بعنوان القسم، واحتفظ في القسم بكل جوهر ولهجة كل من شكر وتقدير المساهمين و/أو الإهداءات الواردة فيه.  الحفاظ على جميع الأقسام الثابتة من الوثيقة، دون تغيير في نصها وفي عناوينها. لا تعتبر أرقام الأقسام أو ما يعادلها جزءا من عناوين الأقسام.  احذف أي قسم بعنوان “التصديقات”. قد لا يتم تضمين هذا القسم في النسخة المعدلة.  لا تقم بإعادة تسمية أي قسم موجود ليكون بعنوان “تصديقات” أو للتعارض في العنوان مع أي قسم ثابت.  الحفاظ على أي إخلاء المسؤولية عن الضمان.  إذا كان الإصدار المعدل يشتمل على أقسام مقدمة جديدة أو ملاحق مؤهلة كأقسام ثانوية ولا تحتوي على أي مادة منسوخة من المستند، فيمكنك حسب اختيارك تعيين بعض أو كل هذه الأقسام كأقسام ثابتة. للقيام بذلك، قم بإضافة عناوينها إلى قائمة الأقسام الثابتة في إشعار ترخيص النسخة المعدلة. يجب أن تكون هذه العناوين مختلفة عن أي عناوين أقسام أخرى.  يمكنك إضافة قسم بعنوان “التصديقات”، بشرط ألا يحتوي إلا على موافقات لنسختك المعدلة من قبل أطراف مختلفة – على سبيل المثال، بيانات مراجعة النظراء أو أن النص قد تمت الموافقة عليه من قبل منظمة باعتباره التعريف الرسمي للمعيار .  يمكنك إضافة مقطع يصل إلى خمس كلمات كنص الغلاف الأمامي، ومقطع يصل إلى 25 كلمة كنص الغلاف الخلفي، إلى نهاية قائمة نصوص الغلاف في النسخة المعدلة. يجوز إضافة مقطع واحد فقط من نص الغلاف الأمامي ومقطع واحد من نص الغلاف الخلفي بواسطة (أو من خلال الترتيبات التي يقوم بها) أي كيان واحد. إذا كان المستند يتضمن بالفعل نص غلاف لنفس الغلاف، تمت إضافته مسبقًا بواسطتك أو بموجب ترتيب تم إجراؤه بواسطة نفس الكيان الذي تتصرف نيابة عنه، فلا يجوز لك إضافة آخر؛ ولكن يمكنك استبدال الإصدار القديم، بناءً على إذن صريح من الناشر السابق الذي أضاف الإصدار القديم.  لا يمنح المؤلف (المؤلفون) والناشر (الناشرون) للمستند، بموجب هذا الترخيص، الإذن باستخدام أسمائهم للدعاية أو لتأكيد أو الإشارة ضمنًا إلى تأييد أي إصدار معدل.  5. الجمع بين المستندات يجوز لك دمج المستند مع المستندات الأخرى التي تم إصدارها بموجب هذا الترخيص، بموجب الشروط المحددة في القسم 4 أعلاه للإصدارات المعدلة، بشرط أن تقوم بتضمين جميع الأقسام الثابتة لجميع المستندات الأصلية، غير المعدلة، وإدراجها جميعًا في المجموعة كأقسام ثابتة لعملك المدمج في إشعار الترخيص الخاص به، وأنك تحتفظ بجميع إخلاء المسؤولية عن الضمان الخاص بها.  يجب أن يحتوي العمل المدمج على نسخة واحدة فقط من هذا الترخيص، ويمكن استبدال عدة أقسام ثابتة متطابقة بنسخة واحدة. إذا كانت هناك أقسام ثابتة متعددة بنفس الاسم ولكن بمحتويات مختلفة، فاجعل عنوان كل قسم فريدًا عن طريق إضافة اسم المؤلف الأصلي أو الناشر الأصلي لذلك القسم، بين قوسين، إذا كان معروفًا، وإلا رقم مميز. قم بإجراء نفس التعديل على عناوين الأقسام في قائمة الأقسام الثابتة في إشعار ترخيص العمل المدمج.  في المجموعة، يجب عليك دمج أي أقسام بعنوان “التاريخ” في الوثائق الأصلية المختلفة، تشكل قسمًا واحدًا بعنوان “التاريخ”؛ وبالمثل، قم بدمج أي أقسام بعنوان “الشكر والتقدير”، وأي أقسام بعنوان “الإهداء”. يجب عليك حذف كافة الأقسام التي تحمل عنوان “التصديقات”.  6. مجموعات الوثائق يجوز لك إنشاء مجموعة تتكون من المستند والمستندات الأخرى التي تم إصدارها بموجب هذا الترخيص، واستبدال النسخ الفردية من هذا الترخيص في المستندات المختلفة بنسخة واحدة مضمنة في المجموعة، بشرط اتباع قواعد هذا الترخيص لـ النسخ الحرفي لكل مستند من جميع النواحي الأخرى.  يجوز لك استخراج مستند واحد من هذه المجموعة وتوزيعه بشكل فردي بموجب هذا الترخيص، شريطة أن تقوم بإدراج نسخة من هذا الترخيص في المستند المستخرج، واتباع هذا الترخيص في جميع النواحي الأخرى فيما يتعلق بالنسخ الحرفي لذلك المستند.  7. التجميع مع الأعمال المستقلة يُطلق على تجميع المستند أو مشتقاته مع مستندات أو أعمال أخرى منفصلة ومستقلة، في أو على حجم وسيلة تخزين أو توزيع، اسم “تجميعي”. إذا لم يتم استخدام حقوق الطبع والنشر الناتجة عن التجميع للحد من الحقوق القانونية لمستخدمي التجميع بما يتجاوز ما تسمح به الأعمال الفردية. عندما يتم تضمين المستند في إجمالي، لا ينطبق هذا الترخيص على الأعمال الأخرى في المجموع والتي ليست في حد ذاتها أعمالًا مشتقة من المستند.  إذا كانت متطلبات نص الغلاف الواردة في القسم 3 تنطبق على هذه النسخ من المستند، فإذا كان المستند أقل من نصف المجموع بأكمله، فقد يتم وضع نصوص غلاف المستند على أغلفة تضع المستند بين قوسين داخل الإجمالي، أو المعادل الإلكتروني للأغلفة إذا كانت الوثيقة في شكل إلكتروني. وبخلاف ذلك، يجب أن تظهر على الأغلفة المطبوعة التي تضع المجموعة بأكملها بين قوسين.  8. الترجمة تعتبر الترجمة نوعًا من التعديل، لذا يمكنك توزيع ترجمات المستند بموجب أحكام القسم 4. يتطلب استبدال الأقسام الثابتة بالترجمات الحصول على إذن خاص من أصحاب حقوق الطبع والنشر الخاصة بها، ولكن يمكنك تضمين ترجمات لبعض أو كل الأقسام الثابتة بالإضافة إلى الإصدارات الأصلية من هذه الأقسام الثابتة. يجوز لك تضمين ترجمة لهذا الترخيص وجميع إشعارات الترخيص الموجودة في المستند وأي إخلاء مسؤولية عن الضمان، بشرط أن تقوم أيضًا بتضمين النسخة الإنجليزية الأصلية من هذا الترخيص والإصدارات الأصلية من تلك الإشعارات وإخلاء المسؤولية. في حالة وجود خلاف بين الترجمة والنسخة الأصلية من هذا الترخيص أو إشعار أو إخلاء المسؤولية، فإن النسخة الأصلية هي التي تسود.  إذا كان هناك قسم في المستند بعنوان “شكر وتقدير” أو “إهداءات” أو “تاريخ”، فإن المتطلب (القسم 4) للحفاظ على عنوانه (القسم 1) سيتطلب عادةً تغيير العنوان الفعلي.  9. الإنهاء لا يجوز لك نسخ المستند أو تعديله أو ترخيصه من الباطن أو توزيعه باستثناء ما هو منصوص عليه صراحةً بموجب هذا الترخيص. تعتبر أي محاولة أخرى لنسخ المستند أو تعديله أو ترخيصه من الباطن أو توزيعه باطلة، وستؤدي تلقائيًا إلى إنهاء حقوقك بموجب هذا الترخيص. ومع ذلك، فإن الأطراف التي تلقت نسخًا أو حقوقًا منك بموجب هذا الترخيص لن يتم إنهاء تراخيصها طالما ظلت هذه الأطراف في حالة امتثال كامل.  10. المراجعات المستقبلية لهذا الترخيص يجوز لمؤسسة البرمجيات الحرة أن تنشر إصدارات جديدة ومنقحة من رخصة جنو للوثائق الحرة من وقت لآخر. ستكون هذه الإصدارات الجديدة مشابهة من حيث الروح للإصدار الحالي، ولكنها قد تختلف في التفاصيل لمعالجة المشكلات أو الاهتمامات الجديدة. راجع http://www.gnu.org/copyleft/.  يُعطى كل إصدار من الترخيص رقم إصدار مميز. إذا كانت الوثيقة تحدد أن إصدارًا مرقّمًا معينًا من هذا الترخيص “أو أي إصدار أحدث” ينطبق عليه، فلديك خيار اتباع الشروط والأحكام الخاصة بهذا الإصدار المحدد أو أي إصدار لاحق تم نشره (وليس كمسودة) بواسطة مؤسسة البرمجيات الحرة. إذا لم تحدد الوثيقة رقم إصدار هذا الترخيص، فيمكنك اختيار أي إصدار تم نشره (وليس كمسودة) بواسطة مؤسسة البرمجيات الحرة.

المصدر:

https://documentation.suse.com/trd/kubernetes/single-html/gs_rke2-slebci_nvidia-gpu-operator/

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى