سیستم OpenStack یک مجموعه از نرم افزارهای ابری است که توانایی اجرا بر روی سیستم های عادی را دارد. این سیستم برای اجرا به سخت افزار خاص یا پیش نیاز نرم افزاری خاصی نیاز ندارد و میتواند با محصولات دیگر هماهنگ شده و کارایی مناسبی دارد. به عنوان دیگر میتوان گفت این محصول میتواند به عنوان زیرساخت یک سازمان استفاده شود.
این سیستم در ابتدا توسط سازمان NASA و RackSpace توسعه پیدا کرد و اولین انتشار آن در سال 2010 بوده است. این محصول از ابتدا برای استفاده عمومی بوده و به صورت متن باز عرضه شده است.
کلود چیست؟
در ابتدا در مورد چیستی کلود و محاسبات ابری مطالبی عنوان میکنم. محاسبات ابری بر پایه تکنولوژی های موجود مانند مجازی سازی و کلاستربندی برای مجازی سازی سخت افزار، نرم افزار، ذخیره سازی، و منابع شبکه ای به صورت واحد های قابل انعطاف است که میتواند برای رسیدن به هدف خاصی تخصیص پیدا کند. بنابراین در عوض ساختار ایستای قدیمی که سخت افزار فیزیکی برای کارهای مختلفی در نظر گرفته میشد و ساختار ایستای شبکه و ذخیره سازی موجود قبلی در این روش به صورت یک مجموعه منایع شکل میگیرند. در این روش استفاده از سخت افزار بسیار آسان تر خواهد بود همچنین افزایش و کاهش میزان قدرت مورد نیاز نیز به سادگی انجام میشود.
سرویس های ابری میتواند به صورت خصوصی و به صورت عمومی مانند amazon ec2 باشد. میتوان سرویسهای ابری خصوصی و عمومی را با یکدیگر ترکیب کرد. برای مثال میتوان داده های مهم را در محیط ابری خصوصی نگه داری کرد. تمامی منابع امکان اشتراکی سازی بر روی فضای ابری را دارا میباشند. مدلهای اصلی سرویس ارائه شده به صورت زیر است:
- SaaS – Software as a Service
- PaaS – Platform as a Service
- IaaS – Infrastructure as a Service
نرم افزار به عنوان سرویس (SaaS) شامل یک کاربرد سرویس دهنده مرکزی است که از طریق کاربردهای سمت مشتری قابل دستیابی است، داده ها در سمت سرویس دهنده نگه داری میشود و از هر مکانی قابل دستیابی است.ایس معماری مشابه معماری سیستم های قدیمی است که به صورت مشتری-خدمت گذار بوده است، اما در این معماری جدی، تمامی کاربرد از طریق کاوشگر وب عرضه میشود. معماری SaaS توسط تولید کنندگان نرم افزار بسیار مورد استفاده قرار میگیرد، دلیل این امر کاهش هزینه پشتیبانی نرم افزار، افزایش قدرت کنترل بر روی سیستم، و همچنین قابلیت پشتیبانی سطح آخر میباشد. این مدل برای مشتری نیز به دلیل عدم وجود مشکلات نصب و راه اندازی بهتر میباشد.
PaaS یک انتخاب مناسب برای سازمانهایی است که خواهان کنترل بیشتری بر روی پایگاه داده (datacenter) خود میباشند امامشکلات ناشی از مدیریت شبکه و سیستم ها را نمیخواهند (یا نمیتوانند) مدیریت کنند. یک مثال برای این سیستم ها، سرویس ابری میزبان سرور وب میباشد که سازمان فراهم کننده سرویس ابری، مدیریت سخت افزار، سیستم عامل، شبکه، میزان بار کاری، تنظیم میزان بار کاری (load balancing) و مدیریت پشتیبان گیری و دیگر مسائل را بر عهده دارد. فراهم کننده سرویس، برای مشتری راه اندازی و پیکربندی سرویس های مورد نیاز را فراهم میکند.
IaaS یک سیستم مجازی در اختیار مشتری قرار میدهد و مدیریت سخت افزار و نرم افزاری این سیستم به عهده مشتری است. سرویس دهنده در این مدل، مدیریت خود سیستم سخت افزاری و منبع انرژی و مسائل نگه داری سخت افزار را بر عهده دارد.
واکاوی OpenStack
ساختار هسته openstack شامل اجزای زیر است:
- OpenStack Compute: ماژول مدیریت و فراهم آوردن ماشین مجازی است. این ماژوا با عنوان Nova شناخته میشود. این ماژول ناظرهای (hypervisor)،از قبیل KVM, QEMU, LXC و XenServer را پشتیبانی میکند. این ماژول کنترل تمامی بخشهای: شبکه بندی، پردازشگر، ذخیره سازی، حافظه اصلی، ساخت ، کنترل و حذف ماشین های مجازی، امنیت و کنترل دسترسی را بر عهده دارد. این مدیریت میتواند از طریق خط فرمان یا محیط گرافیکی وبی انجام شود.
- OpenStack Glance: مدیریت سرویس ایمیج (image) سیستم openstack را بر عهده دارد. این زیر سیستم ایمیج های ماشین مجازی از قبیل Raw, Hyper-V, Virtual Box, QEMU/KVM و VMware(VMDK,OVF) را پشتیبانی میکند.
- OpenStack Object Store: همانگونه که از نام این سرویس مشخص است، مدیریت ذخیره سازی را بر عهده دارد. به منظور قابلیت ذخیره سازی در تمام فرمتهای مورد نیاز، این زیر سیستم به صورت توزیع شده است. چندین لایه افزونگی و تکرار خودکار به منظور جلوگیری از پاک شدن داده ها وجود دارد و بازگردانی داده ها به صورت خودکار انجام میشود.
برگرفته شده از luxos.blog.ir