انتقل إلى المحتوى الرئيسي

المختبر 10.4 - Helmfile والبيئات المتعددة

أهداف المختبر​

في نهاية هذا المختبر، ستكون قادرًا على:

  • تثبيت Helmfile.
  • فهم بنية ملف helmfile.yaml.
  • إدارة بيئات متعددة (dev، staging، prod).
  • نشر التطبيقات باستخدام Helmfile.

المدة المقدرة​

45-60 دقيقة

المتطلبات المسبقة​

  • تثبيت وتكوين Helm.
  • وجود عنقود Kubernetes محلية تعمل.
  • معرفة بـ Helm (المختبرات السابقة).

الجزء 1: تثبيت Helmfile​

الخطوة 1.1: تثبيت Helmfile​

على Linux/Mac:

wget https://github.com/helmfile/helmfile/releases/download/v0.153.1/helmfile_0.153.1_linux_amd64.tar.gz
tar -xzf helmfile_0.153.1_linux_amd64.tar.gz
sudo mv helmfile /usr/local/bin/

على Windows (باستخدام Chocolatey):

choco install helmfile

تحقق:

helmfile version

الجزء 2: إنشاء helmfile.yaml​

الخطوة 2.1: إنشاء helmfile.yaml بسيط​

أنشئ helmfile.yaml:

repositories:
- name: bitnami
url: https://charts.bitnami.com/bitnami

releases:
- name: nginx
namespace: default
chart: bitnami/nginx
values:
- replicaCount: 2
service:
type: ClusterIP

الخطوة 2.2: النشر باستخدام Helmfile​

helmfile sync

الجزء 3: البيئات المتعددة​

الخطوة 3.1: إنشاء الهيكل​

أنشئ مجلدات للبيئات:

mkdir -p environments/{dev,staging,prod}

الخطوة 3.2: إنشاء helmfile.yaml مع البيئات​

أنشئ helmfile.yaml:

environments:
default:
values:
- environments/dev/values.yaml
staging:
values:
- environments/staging/values.yaml
prod:
values:
- environments/prod/values.yaml

releases:
- name: my-app
namespace: {{ .Values.namespace }}
chart: bitnami/nginx
values:
- replicaCount: {{ .Values.replicaCount }}

الخطوة 3.3: إنشاء ملفات القيم​

أنشئ environments/dev/values.yaml:

namespace: dev
replicaCount: 1

أنشئ environments/staging/values.yaml:

namespace: staging
replicaCount: 2

أنشئ environments/prod/values.yaml:

namespace: prod
replicaCount: 3

الخطوة 3.4: النشر لبيئة معينة​

# التطوير
helmfile -e dev sync

# التهيئة
helmfile -e staging sync

# الإنتاج
helmfile -e prod sync

الجزء 4: الإدارة باستخدام Helmfile​

الخطوة 4.1: سرد الإصدارات​

helmfile list

الخطوة 4.2: الحذف​

helmfile destroy

ملخص المختبر​

في هذا المختبر، استخدمت Helmfile لإدارة عمليات النشر في بيئات متعددة. تعلمت كيفية تنظيم تكويناتك والنشر في بيئات مختلفة.


الخطوات التالية​

هذه الوحدة حول Helm الآن مكتملة. يمكنك الانتقال إلى الوحدة 11 حول المراقبة والملاحظة.

الوحدة 11: المراقبة والملاحظة


تم إنشاء المختبر في: ديسمبر 2024