Kubernetes

menu icon

Kubernetes

Kubernetes هي منصة مفتوحة المصدر لتنسيق الحاويات تعمل على التشغيل الآلي لعملية نشر التطبيقات وادارتها وتوسيع نطاقها. تعرف على كيف يتيح Kubernetes التطوير السحابي الأصلي الفعال من حيث التكلفة.

ما هو Kubernetes؟

Kubernetes - المعروف أيضا باسم "k8s" أو "kube" - هو منصة لتنسيق الحاويات لجدولة والتشغيل الآلي للنشر والإدارة وتوسيع نطاق تطبيقات الحاويات.

تم تطوير Kubernetes لأول مرة بواسطة مهندسين في Google قبل أن تكون مفتوحة المصدر في عام 2014. يعد من سلالة Borg، وهو عبارة عن منصة لتنسيق الحاويات يتم استخدامها داخليا في Google. ‏Kubernetes هو مصطلح يوناني بمعنى ربان السفينة أو قائد الطيار، ومن هنا جاءت الدفة في شعار Kubernetes (الرابط خارج IBM).

اليوم ينضج Kubernetes والنظام الإيكولوجي الأوسع للحاويات ليصبحا منصة حوسبة للأغراض العامة ونظاما إيكولوجيا ينافسان - إن لم يتجاوزا - الأجهزة الافتراضية (VMs) باعتبارها لبنات البناء الأساسية للبنية الأساسية والتطبيقات السحابية الحديثة. يسمح هذا النظام الإيكولوجي للمؤسسات بتقديم نظام التشغيل كخدمة (PaaS) بإنتاجية عالية لمعالجة العديد من المهام ذات الصلة بالبنية الأساسية والمهام المرتبطة بالعمليات والقضايا التي تحيط بالتطوير السحابي الأصلي بحيث يمكن لفرق التطوير أن تركز فقط على التعليمات البرمجية والابتكار.     

في الفيديو التالي، يقدم ساي فينام شرحا لمبادئ Kubernetes‏ (10:59):

ما هي الحاويات؟

لنبدأ بالتعريف: تعد الحاوية أحد وحدات البرامج التي يمكن تنفيذها والتي يتم تجميع التعليمات البرمجية للتطبيق بها - مع المكتبات والارتباطات - بطرق عامة بحيث يمكن تشغيلها في أي مكان من جهاز سطح المكتب أو تكنولوجيا المعلومات التقليدية أو البيئة السحابية.

تستفيد الحاويات من شكل من أشكال المحاكاة الافتراضية لنظام التشغيل، الذي يتيح لتطبيقات متعددة مشاركة نظام التشغيل من خلال عزل العمليات والتحكم في مقدار وحدة المعالجة المركزية والذاكرة والقرص التي يمكن لهذه العمليات الوصول اليها.

الحاويات مقابل الأجهزة الافتراضية مقابل البنية الأساسية التقليدية

قد يكون من الأسهل أو الأكثر أهمية فهم الحاويات باعتبارها أحدث نقطة في استمرارية التشغيل الآلي للبنية الأساسية لتكنولوجيا المعلومات والتجريد منها.

في البنية الأساسية التقليدية، يتم تشغيل التطبيقات على وحدة خدمة فعلية واحضار كل المصادر التي يمكنها الحصول عليها. يترك لك ذلك الاختيار بين تشغيل تطبيقات متعددة على وحدة خدمة واحدة مع الأمل في ألا يقوم واحد من التطبيقات باستنزاف المصادر على حساب التطبيقات الأخرى، أو تخصيص وحدة خدمة واحدة لكل تطبيق مما ينتج عنه هدر المصادر وعدم القدرة على التوسع.

الأجهزة الافتراضية (VMs) هي وحدات خدمة يتم استخراجها من أجهزة الكمبيوتر الفعلية، مما يتيح لك تشغيل العديد من الأجهزة الافتراضية على وحدة خدمة فعلية واحدة أو جهاز افتراضي واحد يمتد على أكثر من وحدة خدمة فعلية واحدة. يقوم كل من الأجهزة الافتراضية VM بتشغيل نسخة نظام التشغيل الخاصة به، ويمكنك عزل كل تطبيق في الجهاز الافتراضي VM الخاص به، مما يقلل من فرصة أن تؤثر التطبيقات التي يتم تشغيلها على نفس الجهاز الفعلي على بعضها البعض. تستخدم الأجهزة الافتراضية الموارد بشكل أفضل وهي أسهل بكثير وأكثر فعالية من حيث التكلفة من البنية الأساسية التقليدية. وهي يمكن التخلص منها - في حال لم تعد بحاجة إلى تشغيل التطبيق، يمكنك إزالة الأجهزة الافتراضية.

للحصول على مزيد من المعلومات عن الأجهزة الافتراضية VMs، يمكنك الرجوع الى الدليل "Virtual Machines: An Essential Guide".

تأخذ الحاويات هذا التجريد إلى مستوى أعلى - بشكل خاص، فإنه بالإضافة إلى أنها تتشارك مع الأجهزة الافتراضية المتضمنة، فهي أيضا تتشارك مع الجزء المركزي لنظام التشغيل الافتراضي المتضمن. توفر الحاويات نفس العزل وقابلية التوسع وامكانية التخلص من الأجهزة الافتراضية، ولكن نظرا لأنها لا تحمل نفس البيانات الفعلية لنسخة نظام التشغيل الخاص بها، فانها تكون أخف وزنا (أي أنها تشغل مساحة أقل) من الأجهزة الافتراضية. تعد أكثر كفاءة في استخدام المصادر - فهي تسمح لك بتشغيل مزيد من التطبيقات على أجهزة أقل (افتراضية وفعلية)، مع عدد أقل من نسخ نظام التشغيل. يمكن نقل الحاويات بسهولة أكبر عبر بيئات سطح المكتب ومركز البيانات والبيئات السحابية. وهي مناسبة بشكل كبير لتجارب تطوير DevOps سريعة الحركة.

الدليل "Containers: An Essential Guide" يقدم شرحا كاملا للحاويات والعمل بالحاويات. ومنشور المدونة "الحاويات مقابل الأجهزة الافتراضية: ما الفرق؟" يقدم ملخص كامل للاختلافات.

ما هو Docker؟

Docker هي الأداة الأكثر شيوعا لتكوين وتشغيل حاويات Linux®‎. في حين أنه تم تقديم أشكال بدائية من الحاويات قبل عقود (باستخدام تقنيات مثل نظام FreeBSD Jails وAIX Workload Partitions)، فتم تعميم استخدام الحاويات في عام 2013 عندما نقلها Docker للعامة بتجهيز جديد سهل للمطورين ومناسب للبيئة السحابية.

بدأ Docker كمشروع مفتوح المصدر، ولكنه اليوم يشير أيضا إلى Docker Inc.‎‏‎‎، الشركة التي تقوم بإنتاج Docker - مجموعة أدوات تجارية للحاويات تحقق الإضافة إلى مشروع المصدر المفتوح (وتعود بهذه التحسينات إلى المجتمع ذو المصدر المفتوح).

تم بناء Docker على تقنية Linux Container (LXC)‎ التقليدية، لكنه يتيح المزيد من المحاكاة الافتراضية لعمليات Linux المركزية ويضيف خصائص لجعل الحاويات أسهل للمطورين من بناء ونشر وادارة وتأمين.

بينما تتوافر منصات الحاويات البديلة اليوم (مثل Open Container Initiative (OCI) وCoreOS وCanonical (Ubuntu) LXD)، يعد Docker خيارا مفضلا بشكل واسع والذي يعتبر مرادفا افتراضيا للحاويات وأحيانا يتم اعتباره بالخطأ كمنافس لتقنيات مكملة مثل Kubernetes (شاهد الفيديو "Kubernetes مقابل Docker: انه ليس بسؤال اما/أو" يتم توضيح المزيد بأسفل).

تنسيق الحاويات باستخدام Kubernetes

كما انتشرت الحاويات - اليوم قد تضم المؤسسة مئات أو الآلاف منها - كانت فرق العمليات بحاجة إلى الجدولة والتشغيل الآلي للحاويات وشبكة الاتصالات وقابلية التطور والإتاحة. وعلى ذلك، فقد ولد سوق تنظيم الحاويات.

وفي حين أن خيارات التنسيق الأخرى للحاويات -  وأبرزها Docker Swarm وApache Mesos - اكتسبت بعض الجذب في وقت مبكر، سرعان ما أصبح Kubernetes الأكثر انتشارا (في الواقع، في وقت ما، كان المشروع الأسرع نموا في تاريخ برامج المصدر المفتوح).

اختار المطورون (ويستمرون في اختيار) Kubernetes للاتساع في وظائفه ونظامه الإيكولوجي الواسع والمتنامي من أدوات دعم المصادر المفتوحة ودعمه وقابلية نقله بين رواد مقدمي الخدمات السحابية (بعض منهم يقدمون  الآن خدمات Kubernetes المدارة بالكامل).

للحصول على مزيد من المعلومات عن تنسيق الحاويات، شاهد الفيديو "Container Orchestration Explained" ‏(08:59):

ما الذي يقوم به Kubernetes؟

تقوم Kubernetes بجدولة والتشغيل الآلي لهذه المهام وغيرها من المهام المتعلقة بالحاويات:

  • النشر: لنشر عدد محدد من الحاويات لنظام مضيف محدد والاحتفاظ بهم قيد التشغيل بالحالة المطلوبة.
  • عمليات البدء: البدء هو عبارة عن تغيير في عملية النشر. يسمح لك نظام Kubernetes ببدء أو تعليق أو استئناف أو التراجع عن البدء.
  • اكتشاف الخدمة: يمكن أن يقوم Kubernetes بعرض الحاوية آليا لشبكة الانترنت أو غيرها من الحاويات باستخدام اسم DNS أو عنوان IP.
  • اعداد مساحة التخزين: تحديد Kubernetes لتركيب وحدة تخزين محلية أو سحابية دائمة للحاويات الخاصة بك حسب الحاجة.
  • توازن التحميل وامكانية التوسع: عندما ترتفع حركة ارسال واستقبال البيانات لأحد الحاويات، يمكن أن يقوم Kubernetes باستخدام توازن التحميل والتوسع لتوزيعه عبر شبكة الاتصالات للحفاظ على الاستقرار.
  • المعالجة الذاتية للاتاحة العالية: عند حدوث فشل في الحاوية، يمكن أن يقوم Kubernetes باعادة البدء أو استبداله آليا؛ ويمكن أن يقوم أيضا بأخذ الحاويات التي لا تتفق مع متطلبات التحقق من الصحة.

Kubernetes مقابل Docker

إذا كنت قد قرأت حتى هنا، فإنك تفهم بالفعل أنه في حين أن Kubernetes هو بديل Docker Swarm، فإنه ليس(على عكس التصور الخاطئ الشائع دائما) بديلا أو منافسا بالنسبة إلى Docker نفسه.

في الواقع، اذا كنت قد اعتمدت Docker بشكل متحمس وكنت بصدد انشاء عمليات نشر حاويات على نطاق واسع في Docker، فان تنسيق Kubernetes هو الخطوة المنطقية التالية لادارة أعباء العمل هذه. للتعرف على المزيد، يمكنك الرجوع الى "Kubernetes مقابل Docker: إنها ليست مسألة إما/أو" (08:03):

بنية Kubernetes

المكونات الأساسية لبنية Kubernetes تتضمن ما يلي:

أنظمة المجموعة والوحدات (الحاسب)

أنظمة المجموعة هي لبنات البناء لبنية Kubernetes. تتألف أنظمة المجموعة من الوحدات أو العقد، والتي يمثل كل منها نظام مضيف حوسبي واحد (جهاز افتراضي أو جهاز فعلي).

وتتكون كل من أنظمة المجموعة من العديد من الوحدات العاملة التي تقوم بنشر وتشغيل وادارة التطبيقات الموجودة بحاويات وعقدة أو وحدة رئيسية واحدة تقوم بالتحكم في ومراقبة الوحدات العاملة.

تقوم العقدة الرئيسية بتشغيل خدمة برنامج الجدولة التي يتم تشغيلها آليا عندما يتم نشر الحاويات بناءا على متطلبات النشر المحددة بواسطة وحدة القائم بالتطوير والسعة المتاحة للحوسبة. كل عقدة وحدة عاملة تتضمن الأداة التي يتم استخدامها لإدارة الحاويات - مثل Docker - وأداة برمجية تسمى Kubelet التي تقوم باستلام وتنفيذ الأوامر من العقدة الرئيسية.

للاطلاع على المزيد من التفاصيل حول أنظمة المجموعة من Kubernetes، يمكنك الرجوع الى ارسال المدونة هذا: ‏"Kubernetes Clusters: Architecture for Rapid, Controlled Cloud App Delivery."‏

الأغلفة وعمليات النشر (البرامج)

الأغلفة هي مجموعات من الحاويات التي تشترك في نفس المصادر الحوسبية ونفس شبكة الاتصالات. وهي أيضا الوحدة التي تمثل امكانية التوسع في Kubernetes: إذا كانت الحاوية التي توجد في غلاف بها حركة بيانات أكثر مما يمكنها التعامل معه، سوف يقوم Kubernetes بنسخ الغلاف نسخة متماثلة إلى العقد الأخرى في نظام المجموعة. ولهذا السبب، فانه من الجيد المحافظة على ابقاء الأغلقة مضغوطة بحيث تحتوي على الحاويات التي يجب أن تتشارك في الموارد فقط.

وتقوم عملية النشر بالتحكم في تكوين وتحديد حالة التطبيق الموجود بالحاوية والاحتفاظ به في حالة التشغيل. وهو يحدد عدد النسخ المتماثلة التي يجب أن يقوم الغلاف بتشغيلها على نظام المجموعة. اذا حدث فشل في أحد الأغلفة، ستقوم عملية النشر بتكوين واحدا جديدا.

لمعرفة المزيد عن عمليات نشر Kubernetes، يمكنك مشاهدة "Kubernetes Deployments: الإعداد للبدء سريعا" (03:54):

للحصول على فهم أكثر تفصيلا لعناصر بنية Kubernetes، قم بتجربة هذا البرنامج التعليمي الذاتي: "Kubernetes 101".

يمكنك أيضا التعمق بشكل أكبر في ارسال المدونة "Kubernetes Architecture: Four Approaches to Container Solutions".

شبكة خدمة Istio

يستطيع Kubertenes نشر وتوسيع نطاق الأغلفة، ولكن لا يمكنه ادارة أو التشغيل الآلي لمسار التوجيه بينهم ولا يتيح أي أدوات لمراقبة أو تأمين أو تصحيح أخطاء هذه الوصلات. مع زيادة عدد الحاويات في نظام المجموعة، يتضاعف عدد مسارات الاتصال الممكنة بينها بشكل كبير (على سبيل المثال، تحتوي حاويتان على اثنين من الوصلات المحتملة، ولكن تحتوي 10 أغلفة على 90)، مما قد يشكل كابوسا فيما يتعلق بالتوصيف والإدارة.

أدخل Itiso، وهو طبقة من شبكة الخدمات مفتوحة المصدر من أنظمة المجموعة Kubernetes. لكل نظام مجموعة من Kubernetes، يقوم Istio بإضافة حاوية إضافية - في الأساس تكون غير مرئية للمبرمج ومسؤول النظام - الذي يقوم بتوصيف ومراقبة وإدارة التفاعلات بين الحاويات الأخرى.

باستخدام Istio، تقوم بتحديد مجموعة قواعد واحدة تقوم بتوصيف الوصلات بين الحاويات بحيث لا يتعين عليك توصيف كل وصلة على حدة. هذا يجعل الوصلات بين الحاويات أسهل لتصحيح الأخطاء.

كما يوفر Istio لوحة معلومات يمكن لفرق DevOps والمسؤولين استخدامها لمراقبة فترة الاستجابة والأخطاء في وقت الخدمة وغيرها من خصائص الوصلات بين الحاويات. كما أنه يؤسس للأمان والسرية - تحديدا فيما يتعلق بإدارة أكواد التعريف التي تمنع المستخدمين غير المصرح لهم من انتحال  استدعاء لخدمة بين الحاويات - وإمكانيات التوثيق والتصريح والمراجعة (AAA) التي يمكن للمختصين في مجال الأمان استخدامها لمراقبة نظام المجموعة.

يمكنك الرجوع الى المقال "ما هو Istio؟" للتعرف على المزيد من التفاصيل، بما في ذلك فيديو وبعض الأمثلة لاستخدام Istio.

حوسبة Knative وبدون وحدة خدمة

Knative (وتنطق 'kay-na-native') هو منصة مفتوحة المصدر تقف على قمة Kubernetes ويوفر فئتين هامتين من المزايا للتطوير السحابي الأصلي:

يوفر Knative وسيلة سهلة للوصول الى الحوسبة بدون وحدة خدمة

الحوسبة بدون وحدة خدمة تعد طريقة جديدة نسبيا لنشر الكود الذي يجعل التطبيقات السحابية الأصلية أكثر كفاءة وفعالية من حيث التكلفة. بدلا من نشر نسخة مستمرة من التعليمات البرمجية التي تقف بلا استخدام أثناء انتظار الطلبات، تقوم الحوسبة بدون وحدة خدمة بإحضار التعليمات البرمجية  كما يلزم الامر - حيث يتم توسعتها أو خفضها مع تذبذب الطلب - وبعد ذلك تقوم بإزالة التعليمات البرمجية عندما لا يتم استخدامها. الحوسبة بدون وحدة خدمة تمنع أي اهدار لامكانيات الحوسبة وتفعيل وتقليل التكاليف لأنك ستدفع مقابل تشغيل الكود البرمجي عندما يكون قيد التشغيل بالفعل فقط.

حوسبة Knative تسمح للمطورين ببناء حاوية مرة واحدة وتشغيلها كأحد خدمات البرامج أو كوظيفة بدون وحدة خدمة. الأمر شفاف بالكامل بالنسبة للمطور: وتقوم حوسبة Knative بمعالجة التفاصيل في الخلفية، ويمكن للمطور التركيز على التعليمات البرمجية.

يعمل Knative على تبسيط عملية تطوير الحاويات وتنسيقها

بالنسبة للمطورين، فإن وضع التعليمات البرمجية في الحاويات يتطلب الكثير من الخطوات المتكررة، ويتطلب تنسيق الحاويات الكثير من التوصيف والبرامج النصية (مثل تكوين ملفات التوصيف وتركيب الارتباطات وإدارة التسجيل والتتبع وكتابة البرامج النصية للتكامل المستمر/للنشر المستمر(CI/CD).)

تجعل Knative هذه المهام أسهل من خلال التشغيل الآلي لها من خلال ثلاثة مكونات:

  • البناء: يقوم مكون البناء في Knative بتحويل كود المصدر آليا إلى حاوية أو وظيفة سحابية أصلية. على وجه التحديد، يتم سحب الكود البرمجي من مستودع التخزين، ويتم تركيب الارتباطات المطلوبة، وبناء نسخة الحاوية، ويتم وضعها في سجل الحاوية ليستخدمها مطورو البرامج الآخرون. يحتاج المطورون الى تحديد موقع هذه المكونات حتى يتمكن Knative من العثور عليها، ولكن بمجرد الانتهاء من ذلك، يقوم Knative بالتشغيل الآلي لعملية البناء.
  • تقديم الخدمة: يقوم المكون تقديم الخدمة بتشغيل الحاويات كخدمات قابلة للتوسع؛ ويمكن التوسع فيها الى ما يصل الى الآلاف من نسخ الحاوية أو لأسفل الى لا شيء (وهو ما يسمى المقياس صفر). بالاضافة الى ذلك، يحتوي المكون تقديم الخدمة على اثنين من المميزات المفيدة جدا:
    • التوصيف، الذي يقوم بحفظ النسخ من الحاوية (تسمى لقطات الصور) في كل مرة تقوم فيها بدفع الحاوية الى الانتاج وتسمح لك بتشغيل هذه النسخ في نفس الوقت.
    • توجيه الخدمة، وهو ما يسمح لك بتوجيه كميات مختلفة من عمليات ارسال واستقبال البيانات لهذه النسخ. يمكنك استخدام هذه الخصائص للتدرج في بدء أحد الحاويات بشكل تدريجي أو اجراء اختبار كناري لتطبيق حاوي قبل وضعه في الانتاج الشامل.
  • الحدث: يتيح لأحداث معنية باطلاق الخدمات أو الوظائف القائمة على الحاوية. وهذا جزء لا يتجزأ من امكانيات Knative بدون وحدة خدمة؛ يجب أن يقوم شيء ما باخبار النظام بعرض الوظيفة عند الحاجة. يسمح الحدث للفرق بالتعبير عن الاهتمام  بأنواع الأحداث، وتقوم بعد ذلك بالاتصال آليا بالقائم بإنتاج الحدث وتوجيه الأحداث إلى الحاوية، مما يمحي الحاجة إلى برمجة هذه الوصلات.

يمكنك معرفة المزيد عن Knative من خلال الرجوع الى "Knative: An Essential Guide".

تعهدات Kubernetes GitHub والمزيد من الأدلة على ارتفاع شعبيته

Kubernetes هو واحد من أسرع المشاريع مفتوحة المصدر في التاريخ، والنمو يتسارع. ولا يزال التبني يحلق بين المطورين والشركات التي توظفهم. بعض نقاط البيانات التي تستحق الملاحظة:

  • حتى كتابة هذه السطور، تم تقديم أكثر من 86,200 تعهد إلى مستودع تخزين Kubernetes في GitHub (الرابط موجود خارج IBM) - بما في ذلك ما يقرب من 6,000 تعهد في الشهور الأربعة الأخيرة - وهناك أكثر من 2,300  مساهم فعال في المشروع. وفقا إلى Cloud Native Computing Foundation (الرابط موجود خارج IBM)، تم تسجيل أكثر من 148,000 تعهد في كل مستودعات التخزين ذات الصلة مع Kubernetes (بما في ذلك Kubernetes Dashboard وKubernetes MiniKube).
  • أكثر من 1500 شركة تقوم باستخدام Kubernetes في حزم برامج الانتاج. وهي تشمل الشركات العالمية المعروفة مثل، AirBnB، ‏Bose، ‏CapitalOne، ‏Intuit، ‏Nordstrom، ‏Philips، ‏Reddit، ‏Slack، ‏Spotify، ‏Tinder، وبالتأكيد IBM. تعرف على دراسات حالات التبني هذه وغيرها (الرابط موجود خارج IBM)
  • الدراسة الاستقصائية التي أجريت في يوليو  2019 وذكرت في سجل الحاويات (الرابط الموجود خارج IBM) وجدت زيادة بنسبة 51% في تبني Kubernetes خلال الأشهر الستة السابقة.
  • حضر أكثر من 12,000 شخص إلى مؤتمر KubeCon + CloudNative Con North America 2019 (الرابط خارج IBM) - أي أكثر من 3,000  شخص مقارنة بأرقام الحضور التي تم تسجيلها في السنة السابقة.
  • وفقا إلى ZipRecruiter (الرابط موجود خارج IBM)، فإن متوسط الأجر السنوي (في أمريكا الشمالية) لوظيفة تخص Kubernetes هو USD 144,628. حتى كتابة هذه السطور، يوجد حاليا أكثر من 21,000  من الوظائف ذات الصلة مع Kubernetes المعروضة في LinkedIn (الرابط موجود خارج IBM).

برامج تعليمية لنظام Kubertenes

اذا كنت على استعداد لبدء العمل مع Kubernetes أو تريد بناء مهاراتك فيما يتعلق بنظام Kubernetes وأدوات النظام الايكولوجي من Kubernetes، فعليك بتفقد أحد البرامج التعليمية هذه:

Kubernetes وIBM Cloud

يعد IBM Cloud® Kubernetes Service حل لتنسيق الحاويات المدارة، يقوم بالتشغيل الآلي لعمليات النشر والتشغيل والتوسع والمراقبة لتطبيقات الحاويات في نظام مجموعة من الأنظمة الرئيسية للحوسبة، مع الإضافة في الإمكانيات الخاصة بشركة IBM. يسمح بالتسليم السريع للتطبيقات ويمكنه الربط بالخدمات المتقدمة مثل ‏Blockchain‏ وIBM Watson®‎.

للاطلاع على مقدمة عن كيف تساعدك خدمة Kubernetes المدارة في رحلتك السحابية، شاهد الفيديو الخاص بنا، "Advantages of Managed Kubernetes" ‏(03:14):

يعد Red Hat® OpenShift® on IBM Cloud خدمة شاملة تقدم أنظمة مجموعات OpenShift المدارة بالكامل بمنصة IBM Cloud. (OpenShift هو عبارة عن منصة Kubernetes للمشروع يتم تشغيلها على Red Hat Enterprise Linux.)

اقرأ المزيد عن OpenShift في التقرير الجديد Forrester Wave: Multicloud Container Development Platforms (ملف PDF،‏ 415 كيلوبايت).

للبدء، يجب التسجيل للحصول على IBMid ولانشاء حساب IBM Cloud الخاص بك.