OpenStack یک پلتفرم رایگان و متنباز است که خدمات زیرساخت IAAS ابری عمومی و اختصاصی را فراهم میکند. پلتفرم OpenStack متشکل از چند پروژه داخلی است که کنترل سختافزار، منابع ذخیره و شبکه یک دیتاستنر را برعهده دارند. از جمله این پروژهها میتوان به محاسبات، سرویس ایمیج، بلوک ذخیره داده، سرویس شناسایی، شبکهگذاری، ذخیره آبجکت، تلهمتری و پایگاه داده اشاره کرد. مدیریت این بخشها را میتوان از طریق رابط کاربری تحتوب و یا با کمک خط فرمان OpenStack انجام داد.
در این آموزش، نحوه بهکارگیری یک زیرساخت ابری اختصاصی با پلتفرم OpenStack را بررسی میکنیم. چنین کاری در یک سیستم مبتنی بر یکی از توزیعهای لینوکس CentOS 7، CentOS 7 یا فدورا با استفاده از منابع rdo صورت میگیرد. البته از این پلتفرم در چند سیستم نیز میتوان بهره گرفت.
پیشنیازها
حداقلهای مورد نیاز برای نصب CentOS 7
حداقلهای موردنیاز برای نصب RHEL 7
گام ۱) تنظیمات اولیه سیستم برای نصب پلتفرم OpenStack
۱) قبل از اینکه سیستم خود را برای داشتن یک زیرساخت مجازی ابری اختصاصی آماده کنید، ابتدا باید با یک حساب کاربری روت وارد شوید. همچنین باید مطمئن شوید که بروزرسانیهای سیستم انجام شده باشند.
۲) سپس از فرمان ss –tulpn برای تهیه فهرست از تمام سرویس های در حال اجرا استفاده کنید.
# ss -tulpn

لیست تمام سرویسهای در حال اجرا در لینوکس
۳) اکنون تمام سرویسهایی را که به آنها احتیاجی ندارید، شناسایی کنید و سپس آنها را متوقف، غیرفعال و حذف نمایید. postfix، NetworkManager و firewalld میتوانند از این دست سرویسها باشند. در نهایت، تنها ابزاری که میبایست در سیستم شما در حال اجرا باشد، sshd است.
# systemctl stop postfix firewalld NetworkManager # systemctl disable postfix firewalld NetworkManager # systemctl mask NetworkManager # yum remove postfix NetworkManager NetworkManager-libnm
۴) سیستم امنیتی Selinux را به صورت کامل و با استفاده از فرمانهای زیر غیرفعال کنید. همچنین فایل /etc/selinux/config را ویرایش کرده و خط SELINUX را مطابق تصویر تنظیم کنید.
# setenforce 0 # getenforce # vi /etc/selinux/config

غیرفعالکردن SELinux
۵) در مرحله بعد، با استفاده از فرمان hostnamectl عنوان هاست سیستم لینوکس خود را تعیین کنید. همچنین پارامتر FQDN را مطابق با آن تغییر دهید.
# hostnamectl set-hostname cloud.centos.lan

تنظیم عنوان هاست سیستم لینوکس
۶) نهایتاً ابزار ntpdate را برای هماهنگسازی زمانی با یک سرورNTP که در مجاورت خود درنظر گرفتهاید، نصب کنید.
# yum install ntpdate
گام ۲) نصب پلتفرم OpenStack در CentOS و RHEL
۷) پلتفرم OpenStack از طریق بسته PackStack که در منبع rdo ارائه شده، در سیستم شما مورد استفاده قرار خواهد گرفت. برای فعالکردن منبع rdo در RHEL 7 میتوانید از فرمان زیر استفاده کنید.
# yum install https://www.rdoproject.org/repos/rdo-release.rpm
در CentOS 7، منبع Extras شامل RPM است که منبع OpenStack را نیز فعال میکند. با فعالبودن Extras، شما به راحتی میتوانید به بسته پلتفرم OpenStack دست پیدا کنید.
# yum install -y centos-release-openstack-mitaka # yum update -y
۸) حالا نوبت نصب بسته PackStack است. Packstack شامل ابزاری است که استفاده از اجزای OpenStack را از طریق ارتباط SSH و ماژولهای Puppet تسهیل میکند.
نصب بسته Packstat در لینوکس با استفاده از فرمان زیر صورت میگیرد.
# yum install openstack-packstack
۹) در مرحله بعدی، یک فایل پاسخ برای Packstack همراه با تنظیمات پیشفرض ایجاد کنید. این فایل بعد با پارامترهای لازم برای استفاده از پلتفرم Openstack در یک سیستم ویرایش خواهد شد.
نام این فایل بر اساس تاریخ روز کنونی ( روز، ماه و سال) انتخاب میشود.
# packstack --gen-answer-file='date +"%d.%m.%y"'.conf # ls

ایجاد فایل تنظیمات پاسخ Packstack
۱۰) حالا فایل تنظیمات پاخ را با استفاده از یک ویرایشگر متنی ویرایش کنید.
# vi 13.04.16.conf
در این فایل، مقادیر پارامترها را مطابق زیر تنظیم کنید. برای امنیت بیشتر، فیلدهای مربوط به کلمه عبور را نیز به همین ترتیب تغییر دهید.
CONFIG_NTP_SERVERS=0.ro.pool.ntp.org
با کمک آدرس http://www.pool.ntp.org/en/ و مشاهده لیست سرورهای عمومی NTP، میتوانید نزدیکترین سرور NTP از نظر فیزیکی به خودتان را پیدا کنید.

اضافهکردن سرور NTP در Packstack
CONFIG_PROVISION_DEMO=n

اضافهکردن Provision در Packstack
CONFIG_KEYSTONE_ADMIN_PW=your_password for Admin user

اضافهکردن حساب کاربری ادمین در Packstack
دسترسی به داشبورد پلتفرم OpenStack با استفاده از HTTP همراه با فعالبودن SSL
CONFIG_HORIZON_SSL=y

فعالکردن HTTPS برای پلتفرم OpenStack
کلمه عبور روت برای سرور MySQL را به صورت زیر تنظیم کنید.
CONFIG_MARIADB_PW=mypassword1234

تنظیم کلمهعبور روت MySQL در پلتفرم OpenStack
یک کلکه عبور برای کاربر nagiosadmin تنظیم کنید تا به پنل وب Nagios دسترسی داشته باشید.
CONFIG_NAGIOS_PW=nagios1234

تنظیم پسورد ادمین Nagios
۱۱) پس از تکمیل ویرایش، فایل را ذخیره کرده و ببندید. همچنین فایل تنظیمات سرور SSH را باز کنید و با برداشتن علامت هشتگ از جلوی خط PermitRootLogin، آن را از حالت کامنت خارج کنید.
# vi /etc/ssh/sshd_config

فعالسازی ورود کاربری روت SSH
سپس سرویس SSH را دوباره راهاندازی کنید تا تغییرات اِعمال شوند.
# systemctl restart sshd
گام ۳) شروع نصب پلتفرم Openstack با استفاده از فایل پاسخ Packstack
۱۲) مراحل نصب پلتفرم Openstack را با استفاده از فایل پاسخی که قبلاً ویرایش کرده بودیم، آغاز میکنیم. ابتدا با قالب فرمان زیر شروع میکنیم.
# packstack --answer-file 13.04.16.conf

نصب پلتفرم Openstack در CentOS
۱۳) وقتی نصب اجزای OpenStack به اتمام رسید، برنامه نصبکننده یک سری خطوط با لینک داشبوردهای محلی برای OpenStack و Nagios نمایش خواهد داد. همچنین مجوّزهای لازم برای برای ورود به هر دو پنل نشان داده میشود.

تکمیل نصب OpenStack
همچنین این مجوّزها در دایرکتوری خانگی در فایل keystonerc_admin ذخیره میشوند.
۱۴) اگر به هر دلیلی فرآیند نصب با پیغام خطایی در رابطه با سرویس httpd خاتمه یافت، فایل تنظیمات /etc/httpd/conf.d/ssl.conf را باز کنید و مطمئن شوید که مطابق تصویر زیر، این خط را به صورت کامنت دربیاورید.
#Listen 443 https

غیرفعالکردن پورت HTTPS SSL
سپس سرویس آپاچی را دوباره راهاندازی کنید تا تغییرات اِعمال شوند.
# systemctl restart httpd.service
نکته: در صورتی که نتوانید پنل وب Openstack را در پورت ۴۴۳ باز کنید، فرآیند نصب را دوباره از ابتدا آغاز نمایید و فرمانهای مربوطه را به کار ببرید.
# packstack –answer-file /root/13.04.16.conf
گام ۴) دسترسی از راه دوره به داشبورد پلتفرم OpenStack
۱۵) برای دسترسی ریموت به پنل وب OpenStack از طریق یک هاست در شبکه LAN باید از آدرس IP سیستم یا FQDN با پروتکل HTTPS استفاده کنید.
به دلیل اینکه از یک گواهی شخصی با یک منبع مجوّز غیرمعتبر استفاده میکنید، احتمالاً یک پیغام خطا در مرورگرتان ظاهر میشود.
این پیغام خطا را تأیید کنید و با استفاده از کاربری ادمین و کلمهعبوری که در فایل پاسخ برای پارامتر CONFIG_KEYSTONE_ADMIN_PW تعیین کرده بودید، به داشبورد وارد شوید.
https://192.168.1.40/dashboard

داشبورد ورودی OpenStack

پروژههای Openstack
۱۶) در عین حال، اگر بخواهید ابزار Nagios را برای OpenStack نصب کنید، میتوانید با استفاده از آدرس زیر پنل وب Nagios را باز کنید. ورود به این پنل نیز با استفاده از چیزی است که قبلاً در فایل پاسخ تنظیم کردهاید.
https://192.168.1.40/nagios

داشبورد ورودی Nagios
رابط کاربری مانیتورینگ Nagios لینوکس
به این ترتیب، حالا میتوانید کار با فضای ابری داخلی خود را شروع کنید. امیدواریم که این آموزش نیز مورد توجه شما قرار گرفته باشد.
منبع: Tecmint.com