يوفر تشغيل الحاويات على Google Cloud Platform (GCP) حلاً مرنًا وقابلًا للتطوير لنشر التطبيقات. يقدم GCP خدمات وأدوات متنوعة لتشغيل الحاويات ، مما يسمح للمستخدمين باختيار الخيار الأنسب بناءً على متطلباتهم الخاصة. في هذه الإجابة ، سوف نستكشف الطرق الثلاث الرئيسية لتشغيل الحاويات على GCP: Google Kubernetes Engine (GKE) ، وبيئة App Engine المرنة ، و Cloud Run.
1. محرك جوجل Kubernetes (GKE):
Google Kubernetes Engine (GKE) هو خدمة Kubernetes مُدارة على GCP. Kubernetes هو نظام تنسيق حاويات مفتوح المصدر يعمل على أتمتة نشر التطبيقات المعبأة في حاويات وتوسيع نطاقها وإدارتها. يوفر GKE بيئة مُدارة بالكامل لنشر التطبيقات المعبأة في حاويات وتشغيلها باستخدام Kubernetes.
باستخدام GKE ، يمكنك إنشاء مجموعة من الأجهزة الافتراضية (العقد) التي تعمل كبنية أساسية أساسية لتشغيل الحاويات. يعتني GKE بإدارة مستوى التحكم ، بما في ذلك العقد الرئيسية ، بينما تركز على نشر وإدارة تطبيقاتك. يقدم GKE ميزات مثل التحجيم الآلي ، والشفاء الذاتي ، والتحديثات المتجددة ، مما يجعل من السهل نشر وإدارة التطبيقات المعبأة في حاويات على نطاق واسع.
فيما يلي مثال على استخدام GKE لتشغيل الحاويات:
- أنشئ مجموعة GKE باستخدام Google Cloud Console أو أداة سطر الأوامر ، gcloud.
- أنشئ صورة حاوية لتطبيقك وادفعها إلى سجل حاوية مثل Google Container Registry (GCR).
- حدد بيان نشر Kubernetes الذي يحدد الحالة المطلوبة لتطبيقك ، بما في ذلك صورة الحاوية ومتطلبات الموارد وإعدادات القياس.
- نشر التطبيق على مجموعة GKE باستخدام أداة سطر الأوامر kubectl أو طرق النشر الأخرى.
- ستقوم GKE بجدولة الحاويات على العقد وتضمن الحفاظ على الحالة المطلوبة. يراقب صحة الحاويات ويعيد تشغيلها تلقائيًا إذا لزم الأمر.
2. البيئة المرنة لـ App Engine:
بيئة App Engine المرنة هي عبارة عن نظام أساسي كخدمة (PaaS) يقدم على GCP والذي يسمح لك بتشغيل التطبيقات المعبأة في حاويات. يوفر بيئة تشغيل مُدارة بالكامل لنشر التطبيقات وتوسيع نطاقها دون القلق بشأن البنية التحتية الأساسية.
في بيئة App Engine المرنة ، يمكنك نشر تطبيقك المعبأ في حاويات باستخدام Dockerfile. ينشئ App Engine صورة حاوية من Dockerfile وينشرها إلى مثيل مُدار يعمل على GCP. يقوم تلقائيًا بقياس المثيلات بناءً على الطلب ويتعامل مع موازنة الحمل والفحوصات الصحية.
فيما يلي مثال على استخدام بيئة App Engine المرنة لتشغيل الحاويات:
- إنشاء تطبيق App Engine باستخدام Google Cloud Console أو أداة سطر أوامر gcloud.
- اكتب Dockerfile الذي يحدد بيئة وقت التشغيل والتبعيات للتطبيق الخاص بك.
- أنشئ صورة حاوية باستخدام Dockerfile وادفعها إلى سجل حاوية مثل GCR.
- نشر التطبيق في App Engine باستخدام أداة سطر أوامر gcloud أو طرق النشر الأخرى.
- سيقوم App Engine بإنشاء وإدارة المثيلات التي تقوم بتشغيل تطبيقك المعبأ في حاويات ، وتوسيع نطاقها تلقائيًا بناءً على حركة المرور ومعالجة موازنة الحمل.
3. تشغيل السحابة:
Cloud Run عبارة عن نظام أساسي للحوسبة بدون خادم على GCP يتيح لك تشغيل التطبيقات المعبأة في حاويات دون القلق بشأن البنية التحتية الأساسية. إنه يلخص إدارة البنية التحتية ويقيس حاوياتك تلقائيًا بناءً على الطلبات الواردة.
باستخدام Cloud Run ، يمكنك نشر الحاويات باستخدام خيارات نشر متنوعة ، بما في ذلك صور الحاوية المخزنة في GCR أو أي سجل حاوية آخر. يقوم Cloud Run تلقائيًا بتوسيع نطاق الحاويات لأعلى ولأسفل للتعامل مع الطلبات الواردة ، مما يوفر حلاً قابلاً للتطوير بدرجة عالية وفعال من حيث التكلفة.
فيما يلي مثال على استخدام Cloud Run لتشغيل الحاويات:
- أنشئ صورة حاوية لتطبيقك وادفعها إلى سجل الحاوية.
- نشر التطبيق على Cloud Run باستخدام Google Cloud Console أو أداة سطر أوامر gcloud أو طرق نشر أخرى.
- سينشئ Cloud Run نقطة نهاية HTTP للتطبيق الخاص بك ويقوم تلقائيًا بتوسيع نطاق الحاويات بناءً على الطلبات الواردة.
- يدعم Cloud Run كلاً من التطبيقات عديمة الحالة وذات الحالة ، مما يتيح لك الاتصال بأنظمة التخزين الخارجية أو قواعد البيانات حسب الحاجة.
الطرق الرئيسية الثلاث لتشغيل الحاويات على Google Cloud Platform (GCP) هي Google Kubernetes Engine (GKE) ، وبيئة App Engine المرنة ، و Cloud Run. يوفر GKE بيئة Kubernetes مُدارة ، ويوفر App Engine بيئة PaaS مُدارة بالكامل ، ويوفر Cloud Run نظامًا أساسيًا للحوسبة بدون خادم لتشغيل الحاويات. لكل خيار نقاط قوة خاصة به ويمكن اختياره بناءً على متطلبات محددة.
أسئلة وأجوبة أخرى حديثة بخصوص EITC/CL/GCP Google Cloud Platform:
- إلى أي مدى يعد GCP مفيدًا لتطوير صفحات الويب أو التطبيقات ونشرها واستضافتها؟
- كيفية حساب نطاق عنوان IP لشبكة فرعية؟
- ما الفرق بين Cloud AutoML وCloud AI Platform؟
- ما الفرق بين Big Table وBigQuery؟
- كيف يمكن تكوين موازنة التحميل في GCP لحالة استخدام خوادم الويب الخلفية المتعددة مع WordPress، مع التأكد من أن قاعدة البيانات متسقة عبر العديد من مثيلات WordPress الخلفية (خوادم الويب)؟
- هل من المنطقي تنفيذ موازنة التحميل عند استخدام خادم ويب خلفي واحد فقط؟
- إذا كان Cloud Shell يوفر غلافًا تم تكوينه مسبقًا مع Cloud SDK ولا يحتاج إلى موارد محلية، فما هي ميزة استخدام التثبيت المحلي لـ Cloud SDK بدلاً من استخدام Cloud Shell عن طريق Cloud Console؟
- هل يوجد تطبيق Android للهاتف المحمول يمكن استخدامه لإدارة Google Cloud Platform؟
- ما هي طرق إدارة Google Cloud Platform؟
- ما هي الحوسبة السحابية؟
عرض المزيد من الأسئلة والأجوبة في EITC/CL/GCP Google Cloud Platform