سجل قرار البنية المعمارية: تنسيق الحاويات باستخدام Kubernetes
بيان المشكلة
نحتاج إلى اختيار منصة لتنسيق الحاويات لمحفظة تطبيقاتنا السحابية الأصيلة المتنامية. إن نشرنا الحالي على المنصة القديمة بطيء جدًا وغير رشيق بما يكفي لمواكبة احتياجاتنا المتنامية. ونبحث عن نظام يتيح لنا توسيع خدماتنا بأكثر الطرق كفاءة ممكنة دون المساومة على الرشاقة أو سهولة الاستخدام.
البدائل المدروسة
Docker Swarm
Kubernetes
Apache Mesos
القرار المتخذ
بعد تحليل شامل لكل منصة من منصات تنسيق الحاويات، قررنا اعتماد Kubernetes بوصفها الخيار الأفضل لاحتياجات مؤسستنا. وفيما يلي أسبابنا لاختيار Kubernetes:
قابلية التوسع: تصميم Kubernetes الفريد مثالي لتوسيع التطبيقات، ومع تطور متطلبات التوسع لدينا بمرور الوقت، فإن Kubernetes تمتلك القدرة المدمجة على تلبية هذه التغييرات دون مشكلات.
البنية اللامركزية: تضمن طوبولوجيا السيد والعامل (master-worker) في Kubernetes بنية لامركزية تضمن عدم وجود نقطة فشل وحيدة.
دعم المجتمع: لدى Kubernetes أكبر مجتمع مفتوح المصدر وأكثرها نشاطًا، مما يعني أن لديها عددًا كبيرًا من المساهمين والمطورين والموردين، فيسهل علينا الحصول على المساعدة وإيجاد الموارد.
دعم النظام البيئي: لدى Kubernetes نظام بيئي متنامٍ يضم أدوات متنوعة من أطراف ثالثة وتكاملات مع سجلات الحاويات وخطوط CI/CD وتخزين البيانات وغير ذلك.
وبناءً عليه، قررنا اعتماد Kubernetes منصةً لتنسيق الحاويات لدينا في الوقت الحاضر والمستقبل القريب.