داکرهمه
موضوعات داغ

انتقال VM ها به کوبرنتیز ( Kubernetes )

انتقال VM ها به کوبرنتیز(Kubernetes) امکان پذیر است؟ Developer ها با پیشرفت تکنولوژی بنا به دلایل متعددی برای مدیریت کانتینرها به سیستم‌های متن‌باز روی آوردند؛ همین امر منجر گردید تا دست اندرکاران فناوری نیز پا بر عرصه بگذارند و به معرفی پلتفرم‌‌های مختلفی را برای مدیریت کانتینرها بپردازند. یکی از این پلتفرم‌های کاربردی کوبرنتیز است؛ از این رو ما در مقاله‌ای تحت عنوان مفهوم کوبرنتیز چیست به طور کامل به بررسی این پلتفرم پرطرفدار پرداختیم؛ پس پیشنهاد می‌کنیم پیش از شروع سری به این مقاله بزنید و با دانش کافی به خواندن ادامه این مطلب بپردازید.

اوپن استک نیز مانند کوبرنتیز یک ارکستریتور است؛ با این تفاوت که کوبرنتیز وظیفه مدیریت داکر را بر عهده دارد؛ اما اوپن استک هایپر وایزر را مدیریت می‌کند؛ OpenStack در واقع مجموعه ای از نرم افزار ها برای ایجاد و مدیریت پلتفرم های پردازش ابری Public و Private است که مفهوم Cloud را پیاده سازی میکند؛ ما در مقاله OpenStack چیست به طور کامل از تاریخچه آن شروع کردیم و معماری آن را به طور کامل مورد بررسی قرار دادیم.

آیا انتقال VM ها به کوبرنتیز (Kubernetes)  قابل انجام است؟

بله. چراکه نه؛ انتقال VM ها به کوبرنتیز(Kubernetes) امری امکان پذیر است. جهان امروز به سرعت در حال حرکت به سمت قالب های کانتینریزه  و برنامه های بدون سرور و دور شدن از پایه های زیر ساختی سنتی بر روی ماشین ها و سرورهای مجازی وسرور های  اختصاصی  است. البته لازم به ذکر است که ماشین های مجازی و سرور های اختصاصی بخش عمده ای از زیرساخت ها را تشکیل می دهند اما مورد غفلت قرار گرفته اند.

توسعه دهندگان  نیز دیگر نگران این نیستند که با تغییر یکی از اجزای برنامه های خود ممکن است همه برنامه های در حال اجرایشان تحت تاثیر آن قرار گرفته و دچار اختلال و سوء عملکرد شوند، چراکه دیگر در سال ۹۴ نیستیم! این روز ها فقط یک کانتینر درست می کنیم که فقط برنامه ی ما در آن قرار می گیرد. معما حل شد!

صحیح، صحیح… اما شما کمی قبل به موضوعی راجع به انتقال VM ها به کوبرنتیز ها اشاره کردید، درسته؟

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

پروژه کوب ورت (Kubevirt)

انتقال VM ها به کوبرنتیز

در باره ی مورد دوم بحث خواهیم کرد. در حالی که شما می خواهید به صورت بلند مدت پلتفرم استک تان را تغییر دهید، قطعا به صورت کوتاه مدت از چیزی سود خواهید برد که همزمان با اینکه قابلیت هایش بدون تغییر باقی می ماند، اجازه ی ایجاد رد پای این تغییر در زیرساخت شما را نمی دهد. اینجاست که پروژه هایی مانند کوب ورت   (Kubevirt)وارد عمل می شوند. کوب ورت(Kubevirt)  یک نوع از اکستنشن های کوبرنتیز (Kubernetes) است که قابلیت های مربوط به مدیریت ماشین مجازی را به همه ی شاخه ها یا کلاسترهای (cluster) موجود می افزاید.

این روش از  منابع همان برنامه های کوبرنتیز (Kubernetes APLs) که شما در حال استفاده برای ایجاد کانتینر ها هستید استفاده کرده، و مجموعه نرم افزاری لیبورت (Libvert) را برای ایجاد نمونه های مجازی  ای که برمبنای  KVMهستند، به کار می برد.

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

چگونه vm ها را به کوبرنتیز انتقال دهیم

بله، درسته، با این کار حالا می توانید در کوبرنتیز ماشین مجازی بسازید. اما این کار چه اهمیتی دارد؟ در واقع بهتر است بپرسم چه کاربرد هایی دارد؟

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

هیچ  پیکر بندی شبکه ای پیچیده ای برای برقراری ارتباط بین ساکنان موقت شبکه ی VM  شکل و شبکه پاد (POD Network) ( نوعی شبکه که سرویس های مربوط به شبکه سازی ارائه می دهد)، در کلاستر ها یا شاخه های شما وجود ندارد.

برای انتقال VM ها به کوبرنتیز هیچ پلتفرمی که کانتینر ها و ماشین های مجازی را ترکیب کند هم، وجود ندارد. تنها یک پلتفرم قابلیت ایجاد تعامل متقابل بین کانتینر ها و VM ها که از لحاظ مجازی نیز واضح و شفاف باشد را دارا است و آن کوبرنتیز است.

نیازی به تغییر شکل و قالب همه چیز نیستید

شما ممکن است فکر کنید در حالی که همه چیز عالی به نظر میرسد، هم اکنون نیز همه چیز را طبق قالب و شکل VMها در اختیار دارید. تغییر شکل همه چیز روی ماشین های مجازی متفاوت داخل کوبرنتیز کاری بسیار پرمشقت و زمان بر است که به منابع زیادی هم نیازمند است. در بسیاری از موارد هم ممکن است اصلا امکان پذیر نباشد، و یا ویژگی ها و خصوصیات سیستم های قدیمی که  بعد از EoL برروی ماشین های قدیمی در حال اجرا هستند را با پشتیبانی گسترده داشته باشد.

اما خبر خوب این است که شما دیگر مجبور به تغییر شکل و قالب هیچ چیز نیستید. فقط کافیست میزان و حجم کار(workload) به همه ی بخش ها ی آن انتقال دهید. به همین سادگی!

انتقال به کوب ورت (Kubevirt) با استفاده از کوریولیس (Coriolis)

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

  • VMware
  • Azure
  • AWS
  • OCI-C (Oracle Cloud Infrastructure Classic)
  • OVM (Oracle VM server)
  • OpenStack
  • Hyper-V

انتقال ماشین مجازی به کوب ورت (Kubevirt)

آیا شما یک مدل و قالب از ماشین های مجازی داخل یک ابر اختصاصی یا اشتراکی دارید و می خواهید آن را به قالب  کوب ورت تان انتقال دهید؟ این کار شدنی است!

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

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

تست کردن قبل از ایجاد تغییرات

خب، حالا می خواهید یکی از این قالب ها را قبل از ایجاد  تغییر واقعی ترافیک به کوبرنتیز امتحان کنید؟ هیچ اشکالی ندارد!

کوریولیس این امکان را به شما می دهد که هر چقدر قالب از حجم و میزان کارتان را که می خواهید امتحان کنید. داده های ماشین مجازی از قبل در شاخه یا کلاستر های کوبرنتیز تان همگام سازی شده اند.

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

امیدوارم تا حالا به قدر کافی توانسته باشیم شما را در رابطه با این موضوع کنجکاو بکنیم. منتظر مقاله های دیگر ما در همین مورد باشید…

دیدگاهتان را بنویسید

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

دکمه بازگشت به بالا