هذا العرض يتضمن عدة صفحات للطباعة ضمن هذا القسم. اضغط هنا للطباعة.
التوثيق
- 1: المعجم
- 2: توثيق كوبيرنيتيس
- 3: دليل الاستخدام
- 3.1: بيئة التعلم
- 3.2: أفضل الممارسات
- 3.3: الحلول السحابية الجاهزة
- 4: برامج تعليمية
- 4.1: مرحبًا، مينيكيوب
- 4.2: تعلم أساسيات كوبيرنيتيس.
- 4.2.1: إنشاء عنقود
- 4.2.2: نشر تطبيق
- 4.2.3: استكشف تطبيقك
- 4.2.4: إتاحة تطبيقك للعموم
- 4.2.5: قم بتحجيم تطبيقك
- 4.2.6: قم بتحديث تطبيقك
- 5: دليل تعريب وثائق كوبيرنيتيس
1 - المعجم
2 - توثيق كوبيرنيتيس
2.1 - إصدارات التوثيق المتوفرة
يوثقُ هذا الموقع الإصدار الحالي والإصدارات الأربع السابقة من كوبيرنيتيس.
لا يرتبط وجود توثيقٍ لإصدارٍ معينٍ بالدعم الرسمي لهذا الإصدار. تعَرَّف على الإصدارات المدعومة، ومدةِ دعمها، على صفحة مُدَّة الدعم.
3 - دليل الاستخدام
يعرض هذا القسم الطرق المختلفه لإعداد وتشغيل عناقيد الكوبرناتيز. إختر الطريقة المناسبة للإعداد بناءً على متطلبات الصيانة والأمان والتحكم، والموارد المتاحة للتشغيل، والخبرة التقنية المتوفرة لإدارة العنقود.
يمكنك تحميل كوبرناتيز وتثبيت عنقود كوبرناتيز على جهازك المحلي، أو في السحابة، أو على مركز البيانات الخاص بك.
يمكن أيضًا تشغيل عدة مكونات كوبرناتيز مثل kube-apiserver أو kube-proxy في الحاويات داخل العنقود.
يستحسن تشغيل مكونات كوبرناتيز كحاويات أينما كان ذلك ممكنًا، ليدير كوبرناتيز مكوناته بنفسه. لاحظ أن المكونات المسؤولة عن تشغيل الحاويات، مثل kubelet، لا يمكن تضمينها في تلك الفئة.
إذا كنت لا تريد إدارة العنقود بنفسك، يمكنك استخدام أحد المنصات المعتمدة لإدارة عنقودك. هناك أيضاً حلول متنوعة لإدارة العناقيد على جهازك الحقيقي وفي العديد من البيئات السحابية.
بيئة التعلم
إذا كنت تتعلم كوبرناتيز، ينصح استخدام الأدوات المدعومة من قبل مجتمع كوبرناتيز أو الأدوات المتوفرة في بيئة التشغيل الخاصة بك لإعداد وتثبيت كوبرناتيز. انظر الي تثبيت الأدوات.
بيئة الإنتاج
عند تقييم الحل لبيئة الإنتاج، ضع في اعتبارك الجوانب التي تريد إدارتها بنفسك والتي تفضل تسليمها إلى مزود الخدمة.
لإدارة العنقود بنفسك، ينصح استخدام أداة النشر المدعومة رسميًا لكوبرناتيز وهي kubeadm.
- تحميل كوبرناتيز
- تثبيت الأدوات بما فيها
kubectl - اختيار بيئة تشغيل الحاويات لعنقودك الجديد.
- التعرف على أفضل الممارسات لكوبرناتيز.
تم تصميم كوبيرنيتيس مستوى التحكم ليعمل علي أنظمه لينكس. بإمكانك تشغيل أنظمة أخرى (مثل ويندوز) داخل العنقود بعد إعداده.
- تعرف على كيفية تشغيل نظام ويندوز داخل حاويات كوبرناتيز.
3.1 - بيئة التعلم
3.2 - أفضل الممارسات
3.3 - الحلول السحابية الجاهزة
توفر هذه الصفحة قائمة بموفري الحلول السحابية المعتمدين من كوبيرنيتيس. من صفحة كل موفر، يمكنك معرفة كيفية تثبيت وإعداد عناقيد جاهزة للإنتاج.
4 - برامج تعليمية
يحتوي هذا القسم من وثائق كوبيرنيتيس على برامج تعليمية. يعرض الدرس التعليمي كيفية تحقيق هدف أكبر من مهمة واحدة. عادةً ما يحتوي الدرس التعليمي على عدة أقسام، يحتوي كل منها على تسلسل من الخطوات. قبل استكشاف الدروس، ينصح حفظ صفحة معجم المعاني الموحد لتسهيل مراجعتها لاحقًا.
العناصر الأساسية
-
أساسيات كوبيرنيتيس هو برنامج تعليمي تفاعلي مفصل سيساعدك على فهم نظام كوبيرنيتيس والبدء باستخدام ميزات كوبيرنيتيس الأساسية.
الإعدادات
التطبيقات عديمة الحالة
التطبيقات ذات الحالة
- أساسيات التطبيقات ذات الحالة
- مثال: ووردبريس و MySQL مع أحجام مخزن دائمة
- مثال: نشر كاساندرا باستخدام مجموعات ذات الحالة
- تشغيل ZooKeeper، نظام موزع من نوع CP
الخدمات
الأمن
- تطبيق معايير أمان الحاوية على مستوى العنقود
- تطبيق معايير أمان الحاوية على مستوى النطاق
- AppArmor
- Seccomp
ما القادم؟
إذا كنت ترغب في كتابة درس تعليمي، يرجى الاطلاع على أنواع صفحات المحتوى للحصول على معلومات حول نوع صفحة الدرس التعليمي.
4.1 - مرحبًا، مينيكيوب
يعرض هذا الدليل كيفية تشغيل تطبيق تجريبي على كوبيرنيتيس باستخدام مينيكيوب. يقدم الدليل صورة حاوية لإنجينكس (Nginx) لإعادة توجيه جميع الطلبات على الشبكة.
الأهداف
- نشر تطبيق تجريبي على عنقود مينيكيوب.
- تشغيل التطبيق.
- عرض سجلات التطبيق.
قبل أن تبدأ
يفترض هذا البرنامج التعليمي أنك قمت بإعداد مينيكيوب مسبقاً.
راجع تعليمات الإعداد في الخطوة 1 من بدء مينيكيوب للحصول على تعليمات التثبيت.
كما يتعين عليك تثبيت kubectl.
يرجى مراجعة تثبيت الأدوات للحصول على تعليمات التثبيت.
إنشاء عنقود مينيكيوب
minikube start
فتح لوحة المعلومات
افتح لوحة معلومات كوبيرنيتيس. يمكنك فعل ذلك بطريقتين مختلفتين:
افتح *سطر أوامر جديد، وقم بتشغيل:
# ابدأ سطر أوامر جديد واترك هذا الأمر يعمل.
minikube dashboard
الآن، قم بالتبديل إلى سطر الأوامر حيث قمت بتشغيل minikube start.
نشر التطبيق
الحجيرة في كوبيرنيتيس هي مجموعة تتكون من حاوية واحدة أو عدة حاويات، مرتبطة معاً لأغراض الإدارة والشبكات. الحجيرة في هذا البرنامج التعليمي تحتوي على حاوية واحدة فقط. النشر في كوبيرنيتيس هو وحدة تتولى إنشاء وإدارة وتحجيم الحجيرات، وهي الأداة الموصى باستخدامها لتلك الأغراض. يحافظ النشر على صحة حجيرتك ويعيد تشغيل الحاويات داخلها إذا توقفت.
-
استخدم أمر
kubectl createلإنشاء نشر يدير حجيرة. تعمل الحجيرة على حاوية مبنية على صورة دوكر الآتية:# شَغِل صورة حاوية تتضمن خادم شبكة الويب لفحص النظام kubectl create deployment hello-node --image=registry.k8s.io/e2e-test-images/agnhost:2.39 -- /agnhost netexec --http-port=8080 -
عرض النشر:
kubectl get deployments:سيبدو الناتج مشابهاً للتالي
NAME READY UP-TO-DATE AVAILABLE AGE hello-node 1/1 1 1 1m -
عرض الحجيرات:
kubectl get pods:سيبدو الناتج مشابهاً للتالي
NAME READY STATUS RESTARTS AGE hello-node-5f76cf6ccf-br9b5 1/1 Running 0 1m -
عرض أحداث العنقود:
kubectl get events -
عرض إعدادات
kubectl:kubectl config view -
عرض سجلات التطبيق لحاوية في حجيرة.
kubectl logs hello-node-5f76cf6ccf-br9b5:سيبدو الناتج مشابهاً للتالي
I0911 09:19:26.677397 1 log.go:195] Started HTTP server on port 8080 I0911 09:19:26.677586 1 log.go:195] Started UDP server on port 8081
kubectl، انظر نظرة عامة على kubectl.
إنشاء خدمة
تتاح الحجيرة طبيعياً فقط عبر عنوان بروتوكول الإنترنت (IP) الداخلي للعنقود. لإتاحة حاوية hello-node خارج الشبكة الافتراضية للعنقود، يجب عليك إبراز الحجيرة كخدمة كوبيرنيتيس.
-
قم بإبراز الحجيرة للإنترنت العام باستخدام أمر
kubectl expose:kubectl expose deployment hello-node --type=LoadBalancer --port=8080العلم
--type=LoadBalancerيشير إلى أنك تريد بإبراز خدمتك خارج العنقود.الكود التطبيقي داخل صورة الاختبار يستمع فقط على منفذ TCP 8080. إذا استخدمت
kubectl exposeلتعريض منفذ مختلف، لن يتمكن العملاء من الاتصال بذلك المنفذ الآخر. -
عرض الخدمة التي أنشأتها:
kubectl get services:سيبدو الناتج مشابهاً للتالي
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE hello-node LoadBalancer 10.108.144.78 <pending> 8080:30369/TCP 21s kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 23mعلى مزودي الخدمة السحابية التي تدعم موزع الحمل، سيتم توفير عنوان (ب إي) خارجي للوصول إلى الخدمة. في حالة استخدام مينيكيوب، يجعل النوع
LoadBalancerالخدمة متاحة من خلال الأمرminikube service. -
قم بتشغيل الأمر التالي:
minikube service hello-nodeهذا يفتح نافذة متصفح تخدم تطبيقك وتعرض استجابة التطبيق.
تفعيل الإضافات
يتضمن برنامج مينيكيوب مجموعة من الإضافات المدمجة التي يمكن تفعيلها، تعطيلها وفتحها في بيئة كوبيرنيتيس المحلية.
-
سرد الإضافات المدعومة حالياً:
minikube addons list:سيبدو الناتج مشابهاً للتالي
addon-manager: enabled dashboard: enabled default-storageclass: enabled efk: disabled freshpod: disabled gvisor: disabled helm-tiller: disabled ingress: disabled ingress-dns: disabled logviewer: disabled metrics-server: disabled nvidia-driver-installer: disabled nvidia-gpu-device-plugin: disabled registry: disabled registry-creds: disabled storage-provisioner: enabled storage-provisioner-gluster: disabled- تفعيل إضافة، على سبيل المثال،
metrics-server:
minikube addons enable metrics-server:سيبدو الناتج مشابهاً للتالي
The 'metrics-server' addon is enabled - تفعيل إضافة، على سبيل المثال،
-
عرض الحجيرة والخدمة التي أُنشِئت نتيجة تفعيل تلك الإضافة:
kubectl get pod,svc -n kube-system:سيبدو الناتج مشابهاً للتالي
NAME READY STATUS RESTARTS AGE pod/coredns-5644d7b6d9-mh9ll 1/1 Running 0 34m pod/coredns-5644d7b6d9-pqd2t 1/1 Running 0 34m pod/metrics-server-67fb648c5 1/1 Running 0 26s pod/etcd-minikube 1/1 Running 0 34m pod/influxdb-grafana-b29w8 2/2 Running 0 26s pod/kube-addon-manager-minikube 1/1 Running 0 34m pod/kube-apiserver-minikube 1/1 Running 0 34m pod/kube-controller-manager-minikube 1/1 Running 0 34m pod/kube-proxy-rnlps 1/1 Running 0 34m pod/kube-scheduler-minikube 1/1 Running 0 34m pod/storage-provisioner 1/1 Running 0 34m NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/metrics-server ClusterIP 10.96.241.45 <none> 80/TCP 26s service/kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP 34m service/monitoring-grafana NodePort 10.99.24.54 <none> 80:30002/TCP 26s service/monitoring-influxdb ClusterIP 10.111.169.94 <none> 8083/TCP,8086/TCP 26s -
تحقق من الناتج من
metrics-server:kubectl top pods:سيبدو الناتج مشابهاً للتالي
NAME CPU(cores) MEMORY(bytes) hello-node-ccf4b9788-4jn97 1m 6Miإذا رأيت الرسالة التالية، انتظر وحاول مرة أخرى:
error: Metrics API not available -
تعطيل
metrics-server:minikube addons disable metrics-server:سيبدو الناتج مشابهاً للتالي
metrics-server was successfully disabled
إزالة الموارد
الآن يمكنك إزالة الموارد التي أنشأتها في عنقودك:
kubectl delete service hello-node
kubectl delete deployment hello-node
إيقاف عنقود مينيكيوب
minikube stop
اختياريًا، حذف خادم الافتراضي الخاص بـ مينيكيوب:
# اختياري
minikube delete
إذا كنت ترغب في استخدام مينيكيوب مرة أخرى لتعلم المزيد عن كوبيرنيتيس، فلا حاجة لحذفه.
الختام
تمت تغطية الجوانب الأساسية للحصول على عنقود مينيكيوب جاهزًا للتشغيل. أنت الآن جاهز لنشر التطبيقات.
ما القادم؟
- البرنامج التعليمي لـ نشر التطبيق الأول على كوبيرنيتيس باستخدام kubectl.
- تعلم المزيد عن النشر.
- تعلم المزيد عن نشر التطبيقات.
- تعلم المزيد عن الخدمة.
4.2 - تعلم أساسيات كوبيرنيتيس.
أساسيات كوبيرنيتيس
نتناول في الدرس الآتي أساسيات كوبيرنيتيس، وهو نظام لإدارة العناقيد. ينقسم الدرس إلى عدة وحدات، تحتوي كل منها على بضع المفاهيم بالإضافة إلى برنامج تفاعلي يجسد تلك المفاهيم.
يمكنك تعلم الآتي من خلال تلك البرامج:
- نشر تطبيق معبأ في حاوية على عنقود.
- توسيع ذلك التطبيق.
- تحديث التطبيق المعبأ في حاوية بإصدار جديد للبرنامج.
- معالجة الأعطال في التطبيق.
القيمة المضافة من استخدام كوبيرنيتيس
في سياق تطبيقات الويب الحديثة، يتوقع المستخدمون توفر التطبيقات بشكل متواصل دون أعطال، وينشر المطورون إصدارات جديدة للتطبيقات بشكلٍ متاوصلً أيضاً. تساعد تحوية البرامج على تحقيق تلك الأهداف، ذلك لتمكين إصدار وتحديث التطبيقات دون توقف. يساعد كوبيرنيتيس على ضمان عمل تلك التطبيقات المحزمة في المكان والوقت المرغوب، ويساعدها في العثور على الموارد والأدوات التي تحتاج إليها للعمل. كوبيرنيتيس هو مشروع جاهز للإنتاج، مفتوح المصدر، صُمِّمَ بخبرة جوجل المتراكمة في تنظيم الحاويات، بالإضافة إلى أفضل الأفكار من المجتمع.
4.2.1 - إنشاء عنقود
تعرف على كوبيرنيتيس cluster وإنشاء عنقود بسيط باستخدام مينيكيوب.
4.2.2 - نشر تطبيق
4.2.3 - استكشف تطبيقك
4.2.4 - إتاحة تطبيقك للعموم
4.2.5 - قم بتحجيم تطبيقك
4.2.6 - قم بتحديث تطبيقك
5 - دليل تعريب وثائق كوبيرنيتيس
دليل تعريب وثائق كوبيرنيتيس إلى اللغة العربية
معلومات المعجم التقني العربي
تهدف هذه الوثيقة لتوحيد تراجم المفردات التقنية في وثائق كوبيرنيتس، وذلك لتجنب استعمال أكثر من ترجمة واحدة لنفس المصطلح الإنجليزي. تناقش المصطلحات المدرجة في المعجم التقني من خلال اجتماع لفريق الترجمة العربية أو من خلال إضافة قضية على جيتهاب. إذا وجد تعريب لمصطلح إنجليزي معين في المعجم، فيجب استخدام ذلك التعريب فقط، ولا يجوز استخدام أي تعريب أو ترجمة أخرى للمصطلح في وثائق كوبيرنيتيس. نرحب دائماً بطلبات تحديث المعجم ومناقشة التعريبات.
المعجم التقني العربي
| English | العربية |
|---|---|
| Abstraction | تجريد |
| Agile Software Development | تطوير مرن للبرمجيات |
| Auto Scaling | توسع آلي |
| Bare-metal machine | جهاز حقيقي مجرد |
| Cloud native technologies | تقنية الحوسبة السحابية الأصيلة |
| Cluster | عنقود |
| Command | أمر |
| Container Image | صورة الحاوية |
| Container | حاوية |
| Containerization | تحوية |
| Dependency | تبعيات |
| Expose | إتاحة |
| Kubernetes | كوبيرنيتيس |
| Load Balancer | موزع الحمل |
| Machine | جهاز |
| Minikube | مينيكيوب |
| Namespace | نطاق |
| Node | عقدة |
| Open source | مفتوح المصدر |
| Pod | حجيرة |
| Port | منفذ |
| publicly | للعموم |
| Scaling | تحجيم |
| Service | خدمة |
| Stateful | ذات الحالة |
| Stateless | عديمة الحالة |
| Virtual Machine | جهاز افتراضي |