1. 程式人生 > >OpenStack多節點安裝(一):基本環境

OpenStack多節點安裝(一):基本環境

    本文開始,記錄一下自己安裝OpenStack各服務元件的過程,將其中碰到的一些問題也與大家分享一下,希望能對各位有些許的幫助!

在此之前一直都是使用的DevStack開發環境在除錯程式碼,這段時間開始嘗試著部署OpenStack(Ocata版本)多節點(我自己的是兩個節點:controller和compute,當然可以在這個基礎上再自己增加節點)環境,主要參照官方文件:OpenStack官方文件

系統環境:VMware+Ubuntu16.04-Server
提醒:對於預設的Ubuntu軟體源安裝速度慢的問題,請參考我部落格園中的更改Ubuntu軟體源一文。

1.硬體要求,下圖給出的是官網建議的硬體引數:


我自己則是利用VMware虛擬了兩臺主機,每臺主機的硬體引數如下:2G CPU,2 NIC,sda 60G ,雖不滿足上述圖片中的要去求,但不影響安裝,只是效能得不到保障。而且官網也給出了最低硬體要求限制如下所示:


2. 配置網路介面(controller節點) (一)配置第一個網路介面作為管理介面(外部網路)
IP Address:192.168.152.166
Network mask: 255.255.255.0(or /24)
Default gateway;192.168.152.1
(二)配置第二個網路介面作為內部網路(雲平臺中虛機網路) 編輯檔案/etc/network/interfaces,並加入以下內容:
# The provider network interface
auto INTERFACE_NAME(將INTERFACE_NAME換成你自己的第二個網路介面的名字,如eth0/ens33等)
iface INTERFACE_NAME inet manual
up ip link set dev $IFACE up
down ip link set dev $IFACE down

3. 配置名字解析(controller節點) 設定主機名為controller(虛擬機器安裝之後預設主機名為ubuntu),編輯/etc/hostname,將ubuntu改為controller 編輯/etc/hosts檔案,並加入以下內容:
# controller
192.168.152.166       controller

# compute
192.168.152.167       compute
最後記得將將127.0.1.1這項註釋掉 compute節點的網路設定與controller節點(第2,3個步驟)類似,只是需要注意將IP地址改為compute節點本身的地址即可。 當然做完這些配置之後可以使用ping命令來驗證兩個虛擬機器之間以及虛擬機器和Internet之間是否互通:ping -c 4 hostname(需首先重啟兩個虛擬主機)。 4. 安裝ntp服務(controller節點)
sudo apt install chrony
編輯/etc/chrony/chrony.conf,新增:server NTP_SERVER iburst,同時註釋掉檔案內自帶的:pool 2.debian.pool.ntp.org offline iburst, 我自己使用的NTP_SERVER是cn.pool.ntp.org 為了使得compute節點能夠使用controller節點的ntp服務,在/etc/chrony/chrony.conf中加入:allow 192.168.152.0/24 重啟服務:sudo service chrony restart compute節點上安裝ntp服務與controller節點類似,只是需要將NTP_SERVER改為controller即可。
5. 新增openstack軟體倉庫
sudo apt install software-properties-common
sudo add-apt-repository cloud-archive:ocata
執行更新
sudo apt update
sudo apt dist-upgrade
安裝openstack客戶端
sudo apt install python-openstackclient
6. 安裝msyql資料庫
sudo apt install mysql-server python-pymysql
建立一配置檔案/etc/mysql/mysql.conf.d/99-openstack.cnf,並加入以下內容:
[mysqld]
bind-address = 192.168.152.166(改為你自己controller節點的IP地址)

default-storage-engine = innodb
innodb_file_per_table = on
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
重啟服務: sudo service mysql restart 為了安全考慮,可以使用sudo mysql_secure_installation,在這個過程中為root使用者選定一個合適的登入密碼。 7. 安裝rabbitmq
sudo apt install rabbitmq-server

新增使用者openstack
sudo rabbitmqctl add_user openstack RABBIT_PASS(設定成你自己的密碼,建議都使用相同的密碼,避免後面安裝過程遺忘)

設定許可權
sudo  rabbitmqctl set_permissions openstack ".*" ".*" ".*"

8. 安裝memcached
sudo apt install memcached python-memcache

修改配置檔案/etc/memcached.conf
-l 192.168.152.166(改為你自己的controller節點IP地址)
重啟服務: sudo service memcached restart 注意上述的第6,7,8步驟都是僅在controller節點上進行,compute節點上不用進行這些操作。

至此,兩個虛擬主機上的基本環境都已經完成了,下面開始講解具體的OpenStack服務元件的搭建!未完待續哈。。。