ساختار OpenStack می تواند رابطهٔ بین رایانش ابری و شبکه را تغییر دهد ، اما آیا این ادعا بیش از حد اغراقآمیز نیست ؟ این سوال یک سوال بسیار مهم است ، اما پاسخ دادن به آن کار دشواری است.
به OpenStack ، به عنوان یک پروژه منبع باز که نوید ایجاد یک پایهٔ مشترک برای ساختن سرور ابری عمومی و سرور ابری خصوصی را می دهد، توجه زیادی شده است. در صورتی که این پروژه بتواند در مقیاس وسیع موفق باشد ، ساختار OpenStack میتواند سبب تسهیل در ساخت ابرهای هیبریدی شود ، به تجمیع سرورهای ابری کمک کند و پشتیبان مناسبی برای انجام وظایف اصلی سرور ابری و تأمین عملکرد موثر این سرور مجازی باشد .
این ساختار حتی می تواند نحوهٔ ارتباط بین رایانش ابری و شبکه را تغییر دهد. اما آیا در مورد OpenStack نیز مانند بسیاری از تکنولوژیهای موجود بیش از حد غلو میشود ؟ ممکن است این سوال مهمترین سؤال در رایانش ابری باشد و پاسخ دادن به آن کار دشواری است.
ساختار OpenStack : مانعی بر سر راه رقابت ؟
OpenStack ابتدا پروژهٔ ناسا و Rackspace بود که قالبی از رایانش ابری را برای اجرا بر روی محصولات نرمافزاری موجود در بازار ارائه می کرد. ساختار OpenStack مدلی از رایانش ابری به وجود آورد که شامل اختصاص منابع ، ثبت و کنترل ماشین وimage و ذخیرهٔ دادهها نیز میشود . در حال حاضر بیش از ۱۵۰ سازمان از این پروژه حمایت میکنند ، که این امر سبب میشود که این پروژه احتمالاً محبوب ترین ابزار نرم افزاری برای ایجاد محیط های IaaS باشد .
با این وجود ، به عنوان یک پلتفرم تجاری ابری ، همچنان از نظر کاربران Elastic Cloud Compute) EC2) در آمازون در جایگاه نخست قرار دارد و پلتفرم Azure مایکروسافت نیز رقیبی جدی برای این ساختار محسوب میشود . ترکیب تمرکز آن برIaaS ، پشتیبانی گستردهٔ آن از صنعت و رقابت شدید و تنگاتنگ آن با دیگر پلتفرمها از یک سو سبب قدرت OpenStack می شود – و از سوی دیگر نقطه ضعفی برای این ساختار به حساب میآید.
IaaS اساسی ترین شکل رایانش ابری است که در واقع یک ماشین مجازی و bare را به عنوان سرویس ارائه می دهد. از آنجا که IaaS تنها جایگزین سرور مجازی و احتمالاً حافظهٔ داخل سازمانی میشود ، هزینهٔ جابجایی اطلاعات را برای کاربر کاهش میدهد و بنابراین نسبت به خویشاوندان خود ، PaaS و SaaS حاشیهٔ سود کمتری دارد.
سرور ابری و IaaS
با اینکه عرضهکنندگان و کاربران بالقوهٔ سرور ابری PaaS و SaaS را برتر از IaaS میدانند ، اندازه گیری مزایای این پیکربندی پیچیده تر، سخت تر است. اما اگر اپراتورها روی OpenStack IaaS متمرکز شوند ، ممکن است IaaS به پلتفرم برتری تبدیل شود که رقبا آن را عرضه کردهاند ، که در این صورت هیچ راهی جز قیمتگذاری برای متمایز کردن این سرویسهای ابری از یکدیگر باقی نمی ماند – یا حداقل اینگونه به نظر میرسد .
دیدگاه مخالفی نیز وجود دارد که معتقد است ساختار OpenStack با ارائهٔ کلیه پایه های اصلی برای IaaS در واقع می تواند به ارائه دهندگان خدمات کمک کند تا ، خدمات ابری ارائه شدهٔ خود را ازدیگر خدمات متمایز کنند و به عرضهکنندگان این امکان را می دهند که روی سایر قابلیتها و پیشرفت آنها تمرکز کنند.
OpenStack یک پروژهٔ منبع باز است که میتوان به منظور ارتقاء قابلیت های اساسی آن ، به آسانی آن را با پروژههای دیگر ادغام کرد و در حال حاضرنیز به همراه تعدادی از پروژه های جالب در حال انجام است . این واقعیت که بسیاری از این پروژه ها با یکدیگر همپوشانی دارند، اثبات این مسئله است که ممکن است انواع استقرار مبتنی بر OpenStack وجود داشته باشد که فرصت های خاصی را در بازار مورد هدف قرار می دهد و فضای کافی را برای عرضهکنندگان ایجاد میکند تا خدمات ارائهشدهٔ خود را از سایر رقبا متمایز کنند.
با این حال ، آمازون ، بزرگترین رقیب عرضهکنندهٔ خدمات ابری، اجراکنندهٔ دیگر OpenStack نیست.
بر خلاف سایر ابزارهای ابری IaaS مانند Eucalyptus یا Nebula ، اساس کار ساختار OpenStack بر سازگاری با EC2 قرار نگرفته است. رابط های برنامه نویسی اپلیکیشنها (API) برای رایانش OpenStack بر مبنای مدل EC2 عمل نمیکنند ، اما سازندگان OpenStack قول دادهاند سازگاری با EC2 را برای اجرای برنامه های قدیمی حفظ کنند. اگرچه ممکن است همچنان برنامه های کاربردی در OpenStack ساخته شود که بر روی EC2 اجرا شود و برعکس ، اما این احتمال هم وجود دارد که برنامه های مبتنی بر OpenStack IaaS ساخته شوند که هیچ سازگاری ، حتی به صورت تصادفی ، با EC2 ندارند.
این دو پلتفرم از نظر مدیریت image و ذخیرهسازی تفاوتهای واضحی با یکدیگر دارند. این جمله به آن معنی است که : پشتیبانی از مشتریی که از هر دو پلتفرم EC2 و OpenStack استفاده میکند ، دشوارتر است و عرضهکنندگان سرویسهای ابری که از OpenStack استفاده میکنند ، نمی توانند انتظار داشته باشند که کاربران EC2 بدون آنکه تغییری در برنامه ها یا محیط خود ایجاد کنند ، به استفاده از سرویسهای آنان روی بیاورند.
DevOps و OpenStack : علاقه در کجاست ؟
در مورد کامل بودن ساختار OpenStack از نظر تکنیکی نیز مشکلاتی وجود دارد .
می توان مکانیسم اصلی کنترل منابع OpenStack را توسعه داد تا از مدلی از “تأمین کاتینر” که در آن اپلیکیشنها با کانتینرهای حاوی سیاست هایی در مورد نحوهٔ تخصیص منابع به یک برنامه معین و نحوهٔ رسیدگی به آن هنگام استفاده از اپلیکیشن هستند ، همراه هستند، پشتیبانی کند . این پروژه ها در یک گروه کلی قرارمیگیرند که اتحادیهٔ توسعه اپلیکیشنهای ابری ، تأمین سرور ابری و نصب برنامه ها آن را به DevOps مینامند. DevOps در IaaS های ابری که صرفا از ماشینهای مجازی برای جایگزینی سرورهای اختصاصی محلی استفاده می کنند ، اهمیت چندانی ندارد ، اما اگراز سرویس IaaS برای ساختن اپلیکیشنهای اختصاصی سرور ابری استفاده شود ، DevOps کاملاً حیاتی خواهد بود .
مطالعهای که اخیرا IBM در مورد اهمیت استفاده از سرور ابری برای مهندسی مجدد فرآیندهای تجاری – و نه فقط برون سپاری اپلیکیشنهای قدیمی ـ انجام داده است ،نشان می دهد که احتمالا موفقیت سرور ابری در سالهای آینده بیشتر براین اساس است که این سرور تا چه حد قادر خواهد بود کارهایی که درحال حاضر در دیتاسنترها قابل انجام نیست ، انجام دهد . سروری که تنها اقدامات فعلی را به روزرسانی کند ، در آینده چندان مورد توجه نخواهد بود . این به معنی نوشتن اپلیکیشنای ابری جدید است.
معرفی DevOps
اگر این اپلیکیشنهای جدید نوشته شوند ، پس از آن باید با شیوه های نرم افزاری مدرن مانند ( DevOps که مشوق مؤلفهسازی و هماهنگ کردن عناصر نرم افزاری است) راهی برای آنکه این مؤلفههای نرمافزاری یکدیگر را در سرور ابری شناسایی کنند ، ایجاد کرد . در صورت استفاده از سرویس IaaS در سرور ابری برای هاستینگ خدمات PaaS یا SaaS ، وجود این سطح از انعطاف پذیری در اپلیکیشن ضروری است.
فقط یک مشکل وجود دارد: DevOps برای OpenStack هم ناقص و هم تکه تکه است ، و تا زمانی که همهٔ اجزای DevOps مرتب در کنار یکدیگر قرار نگیرند ، ممکن است که برنامه های PaaS ، SaaS یا اپلیکیشنهای ابری اختصاصی را نتوان به راحتی در ساختار OpenStack اجرا نمود.
این بسیار غیرمنصفانه خواهد بود که بگوییم همه مشکلات OpenStack تنها مختص OpenStack است. در واقع ، بیشتر این مشکلات به مدل IaaS خدمات ابری مربوط میشود. اما در حال حاضر ، پذیرش OpenStack یک تعهد برای سرویس IaaS در بازار است که ممکن است IaaS تنها یکی از بسیاری از گزینه های خدمات در این بازار باشد – و شاید بهترین گزینهٔ موجود برای ارائه دهندگان در دراز مدت نیز نیاشد . بهتر است قبل ازانتخاب ساختار OpenStack به عنوان بهترین قالب برای ایجاد زیرساخت های عمومی ، تمام این موارد را در نظر بگیرید.