درک واحدهای اعدام در آمازون با فارگیت

🧱 درک واحدهای اعدام در آمازون EK با Fargate
Amazon EKS (سرویس الاستیک Kubernetes) با Fargate یک موتور محاسباتی کاملاً مدیریت شده و بدون سرور را برای ظروف فراهم می کند. اما وقتی در حال ساخت برنامه های کاربردی در EKS با Fargate هستید ، درک مدل اجرای اصلی مهم است: در واقع چه برنامه ریزی شده و زیر کاپوت اجرا می شود؟
در این مقاله ، ما سلسله مراتب واحد اجرای را در EKS (حالت Fargate) تجزیه می کنیم ، از کانتینر شروع می کنیم و راه خود را انجام می دهیم.
🔽 حداقل واحد اجرای: غلاف
در کوچکترین واحد اعدام در EKS (و به طور کلی Kubernetes) یک ظرف نیست – غلافبشر
غلاف واحد اتمی است که برنامه ریز Kubernetes با آن کار می کند. تمام بارهای کاری در EK ها در سطح POD برنامه ریزی شده است.
هر غلاف می تواند حاوی یک یا چند ظروف باشد که:
- اشتراک همان فضای نام شبکه (همان IP ، پورت ها)
- سهم حجم (مانند EFS یا ذخیره سازی زودگذر)
- شروع و متوقف کردن با هم
در فارگیت ، شما نمی توانید به خودی خود یک ظرف را اجرا کنید – باید درون یک غلاف باشد. Fargate مقررات زمان اجرا و منابع مربوط به غلاف را دارد ، نه ظروف جداگانه.
🔁 هنگام استقرار چه اتفاقی می افتد؟
وقتی یک Kubernetes اجرا می کنید Deployment
با Job
، یا CronJob
، Kubernetes:
- آن را به یک مطلوب تبدیل می کند الگوی غلاف
- برنامه ریز EKS Fargate با مشخصات POD در برابر a مطابقت دارد مشخصات فارگیت
- Fargate یک VM سبک را برای اجرای آن غلاف راه اندازی می کند
حتی اگر غلاف شما فقط یک ظرف (که رایج است) داشته باشد ، هنوز هم به عنوان یک غلاف پیچیده و مدیریت می شود.
🧱 اجرای سلسله مراتب در EKS (حالت Fargate)
در اینجا چگونه سلسله مراتب اعدام و گروه بندی کار می کند:
سطح | واحد | شرح |
---|---|---|
1 | کانتینر | زمان اجرا تک تصویر – IP و حجم را با دیگران در POD به اشتراک می گذارد |
2 | غلاف (✅ حداقل واحد) | برنامه ریزی شده در Fargate – دارای IP ، چرخه عمر و مرزهای خاص خود است |
3 | اعزام | غلاف را از طریق مجموعه های ماکت مدیریت می کند ، به روزرسانی های نورد را کنترل می کند |
4 | نام | جداسازی منطقی – آیا می تواند چندین برنامه یا محیط را گروه بندی کند |
5 | خوشه | همه گره ها ، فضای نام ، بارهای کاری و کنترل منابع هواپیما |
ظروف Sidecars و init
Fargate کاملاً پشتیبانی می کند غلافهای چند کانتینر، از جمله Sidecars و ظروف اولیه.
- سکه معمولاً برای عوامل ورود به سیستم ، پراکسی مش سرویس یا ابزارهای نظارت استفاده می شود.
- ظروف اولیه می تواند وظایف راه اندازی مانند انتظار برای وابستگی یا تنظیم حجم را انجام دهد.
تمام ظروف در همان غلاف:
- همان چرخه عمر را به اشتراک بگذارید (شروع/متوقف کردن با هم)
- در همان فضای شبکه اجرا کنید
- حجم و زمینه محیط را به اشتراک بگذارید
این بدان معناست که شما می توانید الگوهای برنامه غنی (مانند مشاهدات مبتنی بر Sidecar یا دروازه) ایجاد کنید در حالی که هنوز از سادگی Fargate بهره مند می شوید.
⚡ محدودیت های خاص برای Fargate
در حالی که Fargate پیچیدگی های زیادی را از بین می برد ، همچنین محدودیت هایی را تحمیل می کند:
- ❌ هیچ حمایتی از Daemonsets وجود ندارد – از آنجا که هیچ گره مداوم وجود ندارد
- ❌ بدون دسترسی به سطح میزبان – شما نمی توانید بازرسی کنید
/var/log
یا به سیستم فایل میزبان دسترسی پیدا کنید - ⏱ سرما شروع می شود ممکن است با تهیه ریزگردها جدید برای غلافها اتفاق بیفتد
- ⚙ گزینه های حجم محدود – EFS و فقط زودگذر (بدون EBS)
- 📦 تمام ظروف موجود در یک غلاف CPU/حافظه ثابت – در مشخصات POD مشخص شده است
در بیشتر موارد استفاده ، این معاملات در ازای سادگی عملیاتی و مقیاس پذیری قابل قبول است.
📆 چرا این مهم است
- شبکه: IAM نقش برای حساب های خدمات (IRSA) ، گروه های امنیتی و DNS در هر غلاف اختصاص می یابد.
- ورود به سیستم: سیاههها در سطح POD جمع آوری می شوند (جمع آوری تمام خروجی کانتینر).
- برنامه ریزی: برنامه های هواپیمای کنترل Fargate غلاف ، نه ظروف.
درک اینکه POD حداقل واحد اجرای به شما کمک می کند:
- طراحی بهتر kubernetes
- اشکال زدایی موثرتر (به عنوان مثال سیاهههای مربوط ، اجرای ، محدودیت منابع)
- IAM ، شبکه سازی و مشاهده را به درستی پیکربندی کنید
✅ tl ؛ دکتر
مفهوم | پاسخ |
---|---|
حداقل واحد اجرای در EKS Fargate؟ | غلاف ✅ |
آیا می توانم یک ظرف را اجرا کنم؟ | بله – داخل یک غلاف |
آیا یک غلاف می تواند چندین ظروف داشته باشد؟ | بله (به عنوان مثال Sidecars) |
Fargate در واقع چه کاری اجرا می کند؟ | یک غلاف ، نه یک ظرف |
درک این مدل برای ساخت برنامه های آماده تولید در EKS با Fargate اساسی است. غلاف جایی است که همه چیز شروع می شود – از ورود به شبکه به شبکه تا خود اعدام.
استقرار مبارک! 🚀