Dezkubeدزکوب

فناوری · زنجیرهٔ تأمین

GitOps (اختیاری) در دزکوب

حالت تحویل اختیاری برای تیم‌هایی که GitOps دارند

نسخهٔ پین‌شده
⟦V_ARGOCD⟧
لایسنس
Apache 2.0
گروه در استک
زنجیرهٔ تأمین

GitOps (اختیاری) چیست

موتور تحویل دزکوب GitOps نیست. مدل ما امری است و منبع حقیقتش خودِ کلاستر. اگر تیم شما امروز روی GitOps کار می‌کند، این صفحه توضیح می‌دهد چطور دو مدل کنار هم می‌نشینند — و کجا نمی‌نشینند.

تفاوت دو مدل

تفاوت دو مدل
GitOps خالصدزکوب
منبع حقیقتمخزن گیتخودِ کلاستر
جهتکنترلر از گیت می‌کشدکنترل‌پلن به کلاستر می‌نویسد
تغییر خارج از مسیربرگردانده می‌شود به حالت گیتreconciler می‌بیند: برمی‌گرداند یا گزارش می‌دهد
مدل عملیاتیتغییر = commitتغییر = عمل در پلتفرم، با ممیزی

چرا GitOps را موتور اصلی نکردیم: اگر یک موتور GitOps بالای کنترل‌پلن دزکوب بنشیند، دو مالک برای یک شیء پیدا می‌شود. هر دو مدل «درست» رفتار می‌کنند و نتیجه‌اش نوسان بی‌پایان است: یکی می‌نویسد، دیگری برمی‌گرداند. این مشکل قابل حل است، ولی راه‌حلش انتخاب یک مالک به‌ازای هر شیء است — نه اجرای هم‌زمان هر دو روی یک منبع.

ما دقیقاً چطور استفاده‌اش می‌کنیم

  • تفکیک مالکیت. برخی namespaceها تحت GitOps، بقیه تحت دزکوب — هر شیء یک مالک.
  • GitOps برای پیکربندی، دزکوب برای چرخهٔ حیات. تیم شما manifest می‌نویسد، دزکوب زیرساخت و حاکمیت را می‌دهد.
  • افزونه در کاتالوگ. موتور GitOps به‌عنوان یک افزونهٔ پین‌شده نصب می‌شود.

برای شما چه چیزی عوض می‌شود

  • دو سامانه سر یک منبع می‌جنگندیک مالک به‌ازای هر شیء
  • مهاجرت اجباری از GitOpsGitOps فعلی‌تان می‌ماند

مرزها و محدودیت‌ها

این سکشن در هر صفحهٔ فناوری اجباری است. هر ابزاری مرزی دارد؛ صفحه‌ای که مرزش را نگوید، بقیه‌اش هم قابل اتکا نیست.

  • اجرای هم‌زمان GitOps و مدیریت دستی روی یک منبع پشتیبانی نمی‌شود و باعث نوسان می‌شود. این باید در جلسهٔ استقرار صریح تعریف شود.
  • همین هشدار دربارهٔ ارائه‌دهندهٔ Terraform هم صدق می‌کند.

این را روی زیرساخت خودتان ببینید.

همین مؤلفه را در کلاستر شما پیکربندی می‌کنیم و نشان می‌دهیم.