تاکتیکهای شناسایی خدمات کوبرنتیز

با تسلط بر مجموعه ی ویژگی های کوبرنتیز ، امور مربوط به شناسایی خدمات و سرویس های اپلیکیشن های مبتنی بر کانتینر را دقیقا مطابق خواسته ی خود تنظیم کنید و یا به صورت خودکار انجام دهید.

روش ها و تاکتیک های شناسایی خدمات کوبرنتیز

در اپلیکیشنهای میکروسرویس که هر سرویس توسط یک کانتینر _ و در مورد کوبرنتیز توسط خوشه های کانتینری_ ارائه می شوند. عمر نمونه های (instance) کانتینرها کوتاه است . با این حال علی رغم ماهیت پویای کانتینرهای زمینه ای ، میکرو سرویس ها قابلیت دسترسی بسیار بالایی دارند. با جایگزینی کانتینرهای جدید به جای کانتینرهای قدیمی و از رده خارج ، دائماً شاهد توقف کار یک کانتینر و شروع به کار کانتینر دیگر هستیم . شناسایی سرویسها و خدمات در چنین محیط پویایی ، یک مسئله ی ضروری و حیاتی در سرور های ابری و سرور مجازی است .

شناسایی خدمات کوبرنتیز

وقتی کانتینرها و میکروسرویسهای جدید ساخته می شوند. لازم است که در شبکه ثبت شوند و یرای سایر کانتینرها و میکروسرویسها قابل مشاهده باشند. این امر سبب بهبود ترافیک داده ها می شود ، زیرا ترافیک داده ها دائماً میان کانتینرها و سرویسهای جدید تعدیل می شود.

قابلیت شناسایی خدمات کارایی اپلیکیشنهای میکروسرویس را در پردازش درخواستهای ورودی تضمین می کند و اطمینان می دهد که این اپلیکیشنها قادرند به خوبی خود را با تغییرات بار کاری سیستم و همچنین اصلاحات ایجاد شده در خود اپلیکیشن وفق دهند. با وجود اینکه به صورت گسترده از کوبرنتیز برای مدیریت محیط کانتینرها و میکروسرویسها استفاده می شود ، اما کمتر کسی از کاربرد آن در امر شناسایی خدمات و سرویسها آگاهی دارد.

آدرسهای IP منحصر به فرد

شناسایی خدمات و سرویسهای کوبرنتیز ، به خاطر ساختار ابزار ارکستراسیون ، شامل چند لایه می شود. کانتینرهای کوبرنتیز به دو دسته ی Pod ها و nod ها تقسیم می شوند. Pod ها به خوشه ها تقسیم می شوند. و چند خوشه بر روی یک nod اجرا می شود. هر pod در کوبرنتیز یک آدرس IP منحصر به فرد و یک نسخه ی دوم ( المثنی ) دارد. وقتی یک pod از کار می افتد. آدرس IP مربوط به آن نیز از رده خارج می شود و pod جدیدی که کوبرنتیز می سازد ، آدرس IP اختصاصی جدیدی برای خود خواهد داشت. آدرس IP نقش مهمی در کنترل امور مربوط به شبکه از قبیل شناسایی خدمات و تعدیل بار کاری دارد.

برچسب ها و انتخابگرها

قابلیت کوبرنتیز تنها ارائه ی اسامی قوی به عنوان پیش فرض برای آدرسهای IP نیست. این سیستم برچسب ها و انتخابگر های مدیریتی را به سازماندهی و مدیریت بهتر pod ها اختصاص می دهد. برچسب ها به کانتینر اصلی ( مدیر) کمک می کنند تا آسان تر اجزای سیستم را شناسایی کند. و انتخابگرها شیوه ی اجرای عملیات گروههای کاربر و مجریان را در اجزایی که دارای یک برچسب هستند ، ساده تر می کنند. در اصل ، برچسب ها و انتخابگرها دو فراداده ی ارزشمند و کلیدی هستند که از اجزای سیستم مرکزی نبوده و در منابع آزادی همچون pod ها مورد استفاده قرار می گیرند.

برچسب ها و انتخابگرها به مدیریت pod هایی که در مراحل مختلف چرخه ی حیات یک نرم افزار به کار می روند ، نیز کمک می کند. برای مثال از برچسب ها و انتخاب گر ها برای سازماندهی نصب نرم افزارهای مختلف ، نصب یک نرم افزار در محیطهای متفاوت یا حتی برای سازماندهی داده های مشتریان متفاوت ، استفاده می شود. مثلاً یک میکروسرویس تحت سه برچسب مختلف آلفا، بتا و stable ( ثابت ) نصب می شود . این برچسب ها و انتخابگرهای متعدد کار سرویس شناسایی خدمات کوبرنتیز را در سرور مجازی و سرور ابری ساده تر می کنند.

کنترل کننده های replication ( تکرار)

ویژگی کنترل کننده ی replication در کوبرنتیز ، ساخت و حذف خودکار pod ها و نسخه های المثنی آنها را کنترل می کند. هدف از این قابلیت این است که سطح دسترسی به منابع را همیشه در حد بالا نگه دارند. این کنترل کننده برچسب ها و انتخابگرها را تشخیص می دهد و بر اساس اطلاعات به دست آمده از آنها عملیات خود را بر روی podها انجام می دهد.

سپس این اطلاعات در یک فایل YAML قرار می گیرد و می تواند هر تعداد pod را که در سیستم وجود دارد ، تعریف و مشخص کند. از آنجا که برچسب ها یک بخش جداگانه هستند و تنها مرجع شناسایی pod ها نیستند. موجودیتی مستقل از کنترل کننده ی replication دارند. حتی اگر کنترل کننده هم تعویض شود ، این برچسب ها برای کنترل کننده ی جدید نیز قابل دسترسی خواهند بود. بدین ترتیب برچسب سبب ایجاد ثبات در یک سیستم پویا می شود.

متغیرهای محیطی و DNS

کوبرنتیز از دو شیوه برای ارائه ی سرویس شناسایی خدمات استفاده می کند : شیوه ی استفاده از متغیرهای محیطی و شیوه ی استفاده از DNS متغیر محیطی که envar هم نامیده می شود ، شیوه ی نامگذاری pod را مشخص می کند، در این روش نام pod از نام همان فایل پیکربندی که به آن اختصاص داده شده است ، گرفته می شود. شیوه ی متغیرهای محیطی به گونه ای منحصر به فرد ، شناسایی ها را ساده می کند. و این اطمینان را می دهد که همه ی podها قابل شناسایی هستند. می توانید متغیرهای محیطی را نه فقط در سطح pod ها ، بلکه در سطح کانتینرها و سرور های ابری و سرور مجازی هم مورد استفاده قرار داد. علاوه براین ، با اجرای فرمان printenv می توانید لیستی از تمام متغیرهای محیطی را مشاهده کنید .

نظر

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *