توسّع مشغّلات Kubernetes (Operators) المنصّة لأتمتة إدارة التطبيقات المعقدة. في عام 2026، باتت المشغّلات أساسية لإدارة التطبيقات ذات الحالة والبنية التحتية المخصّصة.
ما هي مشغّلات Kubernetes؟
تُرمّز المشغّلات المعرفة التشغيلية في برمجيات:
- تراقب الموارد المخصّصة لرصد التغييرات
- توفّق بين الحالة المرغوبة والحالة الفعلية
- تؤتمت عمليات اليوم الثاني (التوسيع، النسخ الاحتياطي، التحديثات)
بناء مشغّل باستخدام Operator SDK
// Initialize project
operator-sdk init --domain example.com --repo github.com/example/app-operator
// Create API
operator-sdk create api --group app --version v1 --kind Database --resource --controller
حلقة التوفيق (Reconciliation Loop)
func (r *DatabaseReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) {
var database appv1.Database
if err := r.Get(ctx, req.NamespacedName, &database); err != nil {
return ctrl.Result{}, client.IgnoreNotFound(err)
}
// Ensure deployment exists
deployment := r.deploymentForDatabase(&database)
if err := r.Create(ctx, deployment); err != nil {
if !errors.IsAlreadyExists(err) {
return ctrl.Result{}, err
}
}
// Update status
database.Status.Ready = true
r.Status().Update(ctx, &database)
return ctrl.Result{RequeueAfter: time.Minute}, nil
}
أفضل ممارسات المشغّلات
- اجعل التوفيق عديم التأثير الجانبي (idempotent)
- تعامل مع الإخفاقات الجزئية بسلاسة
- استخدم المُنهيات (finalizers) للتنظيف
- طبّق شروط حالة سليمة
التعليقات (0)
اترك تعليقًا
لا توجد تعليقات بعد. كن أول من يشارك أفكاره!