نشر تطبيق من عدّة ملفّات YAML يدويًا مرهق ويصعب تكراره. Helm — مدير حزم Kubernetes — يحلّ هذا. درس عملي يبني على نشر تطبيق.
⚠️ الأوامر تمثيلية؛ شغّلها على عنقودك للتأكّد.
ما هو Helm؟
Helm هو مدير الحزم لـ Kubernetes — أشبه بـ apt أو npm لكن للعناقيد. يتيح لك تغليف تطبيق (بكل ملفّاته: Deployment، Service، ConfigMap...) في وحدة واحدة قابلة للتثبيت والمشاركة والإصدار.
المفهوم المحوري: الـ Chart
الـ Chart هو حزمة Helm: مجموعة قوالب YAML لتطبيق كامل، مع قيم قابلة للتخصيص. بدل نسخ ولصق ملفّات لكل بيئة، تثبّت Chart واحدًا وتمرّر له القيم المناسبة.
القيم (Values): التخصيص دون تعديل القوالب
يفصل Helm القوالب عن القيم. ملفّ values.yaml يحوي الإعدادات القابلة للتغيير (عدد النسخ، الصورة، المنافذ)، فتخصّص التثبيت لكل بيئة دون لمس القوالب. هذا هو سرّ قابلية إعادة الاستخدام.
سير العمل الأساسي
helm install my-app ./my-chart # تثبيت تطبيق من chart
helm upgrade my-app ./my-chart # ترقية بعد تغيير القيم أو الإصدار
helm rollback my-app 1 # التراجع إلى إصدار سابق
helm uninstall my-app # إزالة التطبيق كاملًا
helm list # سرد ما هو مثبّت
لماذا Helm؟
- قابلية إعادة الإنتاج: تثبيت متطابق في كل بيئة من نفس الـ Chart.
- الإصدارات والتراجع: يتتبّع Helm الإصدارات، فتتراجع بأمان عند الخطأ.
- إعادة الاستخدام والمشاركة: charts جاهزة لتطبيقات شائعة توفّر عليك كتابة كل شيء من الصفر.
الخطوات التالية
راجع نشر تطبيق يدويًا لتقدّر ما يوفّره Helm، وورقة أوامر kubectl للرجوع السريع.