لینوکس ۳۰۵؛ شب ۵۲: مدلهای cloud و معماری OpenStack
فهرست نوشته
cloud صرفاً یک VM قابل اجاره نیست؛ قرارداد مسئولیت و API دارد. امشب IaaS، PaaS و SaaS را مقایسه و مسیر ساخت یک instance در OpenStack را از هویت تا شبکه دنبال میکنیم.
این جلسه بخشی از دورهٔ لینوکس ۳۰۵ در ۶۰ شب است.
جایگاه در دوره: هدفهای 353.1 آزمون 305-300.
محیط: مطالعهٔ معماری؛ بخش فرمان فقط برای OpenStack آزمایشگاهی موجود با project کماختیار و credential خصوصی است. هیچ cloud عمومی از روی این درس ساخته نمیشود.
| مدل | چیزی که مصرف میکنی | نمونهٔ مسئولیت باقیمانده |
|---|---|---|
| IaaS؛ زیرساخت بهصورت سرویس | VM، شبکه و دیسک با API | guest OS، patch و برنامه |
| PaaS؛ بستر بهصورت سرویس | محیط اجرای برنامه | کد، تنظیم و داده |
| SaaS؛ نرمافزار بهصورت سرویس | خود سرویس کاربردی | حساب، دسترسی و دادهٔ سازمان |
مرز دقیق به قرارداد provider وابسته است. private/public مدل مالکیت/دسترسیاند و معادل IaaS/PaaS نیستند.
اجزای OpenStack#
Keystone هویت و token، Nova compute، Glance image، Neutron شبکه، Cinder block storage و Swift object storage را مدیریت میکنند. Horizon رابط وب و Heat ابزار orchestration الگوهاست. این سرویسها با libvirt یا backendهای دیگر همکاری میکنند؛ هر جزء یک hypervisor مستقل نیست.
در client آمادهٔ lab، credential را از روش مورد تأیید administrator در clouds.yaml خصوصی یا environment دریافت کن؛ چاپ env و token لازم نیست:
openstack --os-cloud lab305 catalog list
openstack --os-cloud lab305 image list
openstack --os-cloud lab305 flavor list
openstack --os-cloud lab305 network list
openstack --os-cloud lab305 server list
image قالب boot است؛ flavor بودجهٔ CPU/RAM/disk؛ security group سیاست port، و floating IP مسیر reachability خارج subnet است. برای ساخت واقعی باید همهٔ IDها، quota، keypair و policy مشخص شوند؛ دیدن VM ACTIVE بهتنهایی SSH یا سلامت سرویس را ثابت نمیکند.
تمرین: درخواست ساخت instance را رسم کن و برای خطای token، نبود capacity compute، image نامعتبر و DHCP/security group، سرویس صاحب evidence را مشخص کن.
Terraform ابزار مدیریت desired infrastructure با provider است؛ در شب بعد چرخهٔ آن را محلی تمرین میکنیم. CloudStack، Eucalyptus و OpenNebula را بهعنوان پلتفرمهای مرتبط سرفصل بشناس و وضعیت نگهداری هر release را جدا بررسی کن.
بازگشت: این فرمانها read-only هستند؛ حذف project یا network برای پاک کردن یک VM لازم نیست. credential آزمون پس از پایان از دسترس عمومی خارج و طبق policy لغو شود.
منبع: OpenStack overview ، راهنمای کاربر ، Terraform .