بلاگ/نصب پلتفرم OpenStack در لینوکس RHEL/CentOS 7
به‌روز شده

نصب پلتفرم OpenStack در لینوکس RHEL/CentOS 7

OpenStack یک پلتفرم رایگان و متن‌باز است که خدمات زیرساخت IAAS ابری عمومی و اختصاصی را فراهم می‌کند. پلتفرم OpenStack متشکل از چند پروژه داخلی است که کنترل سخت‌افزار، منابع ذخیره و شبکه یک دیتاستنر را برعهده دارند. از جمله این پروژه‌ها می‌توان به محاسبات، سرویس ایمیج، بلوک ذخیره داده، سرویس...

1399/04/272961 بازدید
نصب پلتفرم OpenStack در لینوکس RHEL/CentOS 7
OpenStack یک پلتفرم رایگان و متن‌باز است که خدمات زیرساخت IAAS ابری عمومی و اختصاصی را فراهم می‌کند. پلتفرم OpenStack متشکل از چند پروژه داخلی است که کنترل سخت‌افزار، منابع ذخیره و شبکه یک دیتاستنر را برعهده دارند. از جمله این پروژه‌ها می‌توان به محاسبات، سرویس ایمیج، بلوک ذخیره داده، سرویس شناسایی، شبکه‌گذاری، ذخیره آبجکت، تله‌متری و پایگاه داده اشاره کرد. مدیریت این بخش‌ها را می‌توان از طریق رابط کاربری تحت‌وب و یا با کمک خط فرمان OpenStack انجام داد. نصب پلتفرم OpenStack در سیستم‌عامل لینوکس CentOS 7 در این آموزش، نحوه به‌کارگیری یک زیرساخت ابری اختصاصی با پلتفرم OpenStack را بررسی می‌کنیم. چنین کاری در یک سیستم مبتنی بر یکی از توزیع‌های لینوکس CentOS 7، CentOS 7 یا فدورا با استفاده از منابع rdo صورت می‌گیرد. البته از این پلتفرم در چند سیستم نیز می‌توان بهره گرفت.

پیش‌نیازها

حداقل‌های مورد نیاز برای نصب CentOS 7 حداقل‌های موردنیاز برای نصب RHEL 7

گام ۱) تنظیمات اولیه سیستم برای نصب پلتفرم OpenStack

۱) قبل از اینکه سیستم خود را برای داشتن یک زیرساخت مجازی ابری اختصاصی آماده کنید، ابتدا باید با یک حساب کاربری روت وارد شوید. همچنین باید مطمئن شوید که بروزرسانی‌های سیستم انجام شده باشند. ۲) سپس از فرمان ss –tulpn برای تهیه فهرست از تمام سرویس های در حال اجرا استفاده کنید.
php
# ss -tulpn
لیست تمام سرویس‌های در حال اجرا در لینوکس
لیست تمام سرویس‌های در حال اجرا در لینوکس
۳) اکنون تمام سرویس‌هایی را که به آنها احتیاجی ندارید، شناسایی کنید و سپس آنها را متوقف، غیرفعال و حذف نمایید. postfix، NetworkManager و firewalld می‌توانند از این دست سرویس‌ها باشند. در نهایت، تنها ابزاری که می‌بایست در سیستم شما در حال اجرا باشد، sshd است.
php
# systemctl stop postfix firewalld NetworkManager# systemctl disable postfix firewalld NetworkManager# systemctl mask NetworkManager# yum remove postfix NetworkManager NetworkManager-libnm
۴) سیستم امنیتی Selinux را به صورت کامل و با استفاده از فرمان‌های زیر غیرفعال کنید. همچنین فایل /etc/selinux/config را ویرایش کرده و خط SELINUX را مطابق تصویر تنظیم کنید.
php
# setenforce 0# getenforce# vi /etc/selinux/config
غیرفعال‌کردن SELinux
غیرفعال‌کردن SELinux
۵) در مرحله بعد، با استفاده از فرمان hostnamectl عنوان هاست سیستم لینوکس خود را تعیین کنید. همچنین پارامتر FQDN را مطابق با آن تغییر دهید.
php
# hostnamectl set-hostname cloud.centos.lan
تنظیم عنوان هاست سیستم لینوکس
تنظیم عنوان هاست سیستم لینوکس
۶) نهایتاً ابزار ntpdate را برای هماهنگ‌سازی زمانی با یک سرورNTP که در مجاورت خود درنظر گرفته‌اید، نصب کنید.
php
# yum install ntpdate

گام ۲) نصب پلتفرم OpenStack در CentOS و RHEL

۷) پلتفرم OpenStack از طریق بسته PackStack که در منبع rdo ارائه شده، در سیستم شما مورد استفاده قرار خواهد گرفت. برای فعال‌کردن منبع rdo در RHEL 7 می‌توانید از فرمان زیر استفاده کنید.
php
# yum install https://www.rdoproject.org/repos/rdo-release.rpm
در CentOS 7، منبع Extras شامل RPM است که منبع OpenStack را نیز فعال می‌کند. با فعال‌بودن Extras، شما به راحتی می‌توانید به بسته پلتفرم OpenStack دست پیدا کنید.
php
# yum install -y centos-release-openstack-mitaka# yum update -y
۸) حالا نوبت نصب بسته PackStack است. Packstack شامل ابزاری است که استفاده از اجزای OpenStack را از طریق ارتباط SSH و ماژول‌های Puppet تسهیل می‌کند. نصب بسته Packstat در لینوکس با استفاده از فرمان زیر صورت می‌گیرد.
php
# yum install  openstack-packstack
۹) در مرحله بعدی، یک فایل پاسخ برای Packstack همراه با تنظیمات پیش‌فرض ایجاد کنید. این فایل بعد با پارامترهای لازم برای استفاده از پلتفرم Openstack در یک سیستم ویرایش خواهد شد. نام این فایل بر اساس تاریخ روز کنونی ( روز، ماه و سال) انتخاب می‌شود.
php
# packstack --gen-answer-file='date +"%d.%m.%y"'.conf# ls
ایجاد فایل تنظیمات پاسخ Packstack
ایجاد فایل تنظیمات پاسخ Packstack
۱۰) حالا فایل تنظیمات پاخ را با استفاده از یک ویرایشگر متنی ویرایش کنید.
php
# vi 13.04.16.conf
در این فایل، مقادیر پارامتر‌ها را مطابق زیر تنظیم کنید. برای امنیت بیشتر، فیلدهای مربوط به کلمه عبور را نیز به همین ترتیب تغییر دهید.
php
CONFIG_NTP_SERVERS=0.ro.pool.ntp.org
با کمک آدرس http://www.pool.ntp.org/en/ و مشاهده لیست  سرور‌های عمومی NTP، می‌توانید نزدیک‌ترین سرور NTP از نظر فیزیکی به خودتان را پیدا کنید.
اضافه‌کردن سرور NTP در Packstack
اضافه‌کردن سرور NTP در Packstack
php
CONFIG_PROVISION_DEMO=n
اضافه‌کردن Provision در Packstack
اضافه‌کردن Provision در Packstack
php
CONFIG_KEYSTONE_ADMIN_PW=your_password  for Admin user
اضافه‌کردن حساب کاربری ادمین در Packstack
اضافه‌کردن حساب کاربری ادمین در Packstack
دسترسی به داشبورد پلتفرم OpenStack با استفاده از HTTP همراه با فعال‌بودن SSL
php
CONFIG_HORIZON_SSL=y
فعال‌کردن HTTPS برای پلتفرم OpenStack
فعال‌کردن HTTPS برای پلتفرم OpenStack
کلمه عبور روت برای سرور MySQL را به صورت زیر تنظیم کنید.
php
CONFIG_MARIADB_PW=mypassword1234
تنظیم کلمه‌عبور روت MySQL در پلتفرم OpenStack
تنظیم کلمه‌عبور روت MySQL در پلتفرم OpenStack
یک کلکه عبور برای کاربر nagiosadmin تنظیم کنید تا به پنل وب Nagios دسترسی داشته باشید.
php
CONFIG_NAGIOS_PW=nagios1234
تنظیم پسورد ادمین Nagios
تنظیم پسورد ادمین Nagios
۱۱) پس از تکمیل ویرایش، فایل را ذخیره کرده و ببندید. همچنین فایل تنظیمات سرور SSH را باز کنید و با برداشتن علامت هشتگ از جلوی خط PermitRootLogin، آن را از حالت کامنت خارج کنید.
php
# vi /etc/ssh/sshd_config
فعالسازی ورود کاربری روت SSH
فعالسازی ورود کاربری روت SSH
سپس سرویس SSH را دوباره راه‌اندازی کنید تا تغییرات اِعمال شوند.
php
# systemctl restart sshd

گام ۳) شروع نصب پلتفرم Openstack با استفاده از فایل پاسخ Packstack

۱۲) مراحل نصب پلتفرم Openstack را با استفاده از فایل پاسخی که قبلاً ویرایش کرده بودیم، آغاز می‌کنیم. ابتدا با قالب فرمان زیر شروع می‌کنیم.
php
# packstack --answer-file 13.04.16.conf
نصب پلتفرم Openstack در CentOS
نصب پلتفرم Openstack در CentOS
۱۳) وقتی نصب اجزای OpenStack به اتمام رسید، برنامه نصب‌کننده یک سری خطوط با لینک داشبوردهای محلی برای OpenStack و Nagios نمایش خواهد داد. همچنین مجوّزهای لازم برای برای ورود به هر دو پنل نشان داده می‌شود.
تکمیل نصب OpenStack
تکمیل نصب OpenStack
همچنین این مجوّزها در دایرکتوری خانگی در فایل keystonerc_admin ذخیره می‌شوند. ۱۴) اگر به هر دلیلی فرآیند نصب با پیغام خطایی در رابطه با سرویس httpd خاتمه یافت، فایل تنظیمات /etc/httpd/conf.d/ssl.conf را باز کنید و مطمئن شوید که مطابق تصویر زیر، این خط را به صورت کامنت دربیاورید.
php
#Listen 443 https
غیرفعال‌کردن پورت HTTPS SSL
غیرفعال‌کردن پورت HTTPS SSL
سپس سرویس آپاچی را دوباره راه‌اندازی کنید تا تغییرات اِعمال شوند.
php
# systemctl restart httpd.service
نکته: در صورتی که نتوانید پنل وب Openstack را در پورت ۴۴۳  باز کنید، فرآیند نصب را دوباره از ابتدا آغاز نمایید و فرمان‌های مربوطه را به کار ببرید. # packstack --answer-file /root/13.04.16.conf گام ۴) دسترسی از راه دوره به داشبورد پلتفرم OpenStack ۱۵) برای دسترسی ریموت به پنل وب OpenStack از طریق یک هاست در شبکه LAN باید از آدرس IP سیستم یا FQDN با پروتکل HTTPS استفاده کنید. به دلیل اینکه از یک گواهی شخصی با یک منبع مجوّز غیرمعتبر استفاده می‌کنید، احتمالاً یک پیغام خطا در مرورگرتان ظاهر می‌شود. این پیغام خطا را تأیید کنید و با استفاده از کاربری ادمین و کلمه‌عبوری که در فایل پاسخ برای پارامتر CONFIG_KEYSTONE_ADMIN_PW تعیین کرده بودید، به داشبورد وارد شوید.
php
https://192.168.1.40/dashboard
داشبورد ورودی OpenStack
داشبورد ورودی OpenStack
پروژه‌های Openstack
پروژه‌های Openstack
۱۶) در عین حال، اگر بخواهید ابزار Nagios را برای OpenStack نصب کنید، می‌توانید با استفاده از آدرس زیر پنل وب Nagios را باز کنید. ورود به این پنل نیز با استفاده از چیزی است که قبلاً در فایل پاسخ تنظیم کرده‌اید.
php
https://192.168.1.40/nagios
داشبورد ورودی Nagios
داشبورد ورودی Nagios
رابط کاربری مانیتورینگ Nagios لینوکس به این ترتیب، حالا می‌توانید کار با فضای ابری داخلی خود را شروع کنید. امیدواریم که این آموزش نیز مورد توجه شما قرار گرفته باشد. منبع: Tecmint.com