天天看點

Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

本次openstack多節點自動化安裝,采用4台虛拟機節點為示範環境,首先示範如何自動化快速搭建一套openstack雲平台

實驗環境:

1、控制節點

CPU:雙核雙線程-CPU虛拟化開啟

記憶體:8G(最小記憶體6G ,低于6G否則會出問題 )

硬碟:300G

網卡:VM1-192.168.100.10 NAT-20.0.0.10

有2個網卡:1、VM1(内部網卡) 2、NAT(可以上網)

作業系統:Centos 7.6 --最小化安裝

2、計算節點1(網絡子產品)

CPU:雙核雙線程-CPU虛拟化開啟

記憶體:8G(最小記憶體6G ,低于6G否則會出問題 )

硬碟:300G

網卡:VM1-192.168.100.11

作業系統:Centos 7.6–最小化安裝

3、計算節點2(網絡子產品)

CPU:雙核雙線程-CPU虛拟化開啟

記憶體:8G(最小記憶體6G ,低于6G否則會出問題 )

硬碟:300G

網卡:VM1-192.168.100.12

作業系統:Centos 7.6–最小化安裝

每台都必須把虛拟化勾上

Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

實驗步驟:

一、基本環境配置

二、本地YUM源部署

三、時間同步

四、免互動配置

五、Openstack一鍵部署

六、Openstack登入測試

一:基本環境配置

1:【控制節點 ct 】配置

(1)配置IP位址(添加雙網卡)

VM1模式:内部網卡 與兩個計算節點通訊

NAT模式:連接配接外部網絡,可以上網

VM1,内部網絡:
# cd /etc/sysconfig/network-scripts
# cp -p ifcfg-ens33 ifcfg-ens36
# vi /etc/sysconfig/network-scripts/ifcfg-ens36
dhcp 改為 static
UUID一行删掉
ens33 改為 ens36
改為 ONBOOT=yes 
末行添加:
IPADDR=192.168.100.10
NETMASK=255.255.255.0

NAT模式,必須是NAT網段的IP範圍:
# vi /etc/sysconfig/network-scripts/ifcfg-ens33
dhcp 改為 static
改為 ONBOOT=yes 
末行添加:
IPADDR=192.168.188.188
NETMASK=255.255.255.0
GATEWAY=192.168.188.2

# vi /etc/resolv.conf
nameserver 8.8.8.8

# systemctl restart network
# ping  www.baidu.com
# ping 8.8.8.8
           

(2)更改主機名, 配置hosts映射

# hostnamectl set-hostname ct
# su

# vi /etc/hosts
末行插入
192.168.100.10 ct
192.168.100.11 c1
192.168.100.12 c2
           

(3)關閉防火牆,核心防護,網絡管理

# systemctl stop firewalld
# systemctl disable firewalld
# setenforce 0
# vi /etc/selinux/config 
改為 SELINUX=disabled

# systemctl stop NetworkManager
# systemctl disable NetworkManager 
           
2:【計算節點 c1 】配置

(1)配置IP位址

# vi /etc/sysconfig/network-scripts/ifcfg-eth0
dhcp 改為 static
改: ONBOOT=yes 
加:
IPADDR=192.168.100.11
NETMASK=255.255.255.0
GATEWAY=192.168.100.1

# systemctl restart network
# ping  192.168.100.10
           

(2)更改主機名

# hostnamectl set-hostname c1
# su

# vi /etc/hosts
末行插入
192.168.100.10 ct
192.168.100.11 c1
192.168.100.12 c2
           

(3)關閉防火牆,核心防護,網絡管理

# systemctl stop firewalld
# systemctl disable firewalld
# setenforce 0
# vi /etc/selinux/config 
改為 SELINUX=disabled

# systemctl stop NetworkManager
# systemctl disable NetworkManager 
           
3:【計算節點 c2 】配置

(1)配置IP位址

# vi /etc/sysconfig/network-scripts/ifcfg-eth0
dhcp 改為 static
改為 ONBOOT=yes 
加:
IPADDR=192.168.100.12
NETMASK=255.255.255.0
GATEWAY=192.168.100.1

# systemctl restart network
# ping  192.168.100.11
# ping 192.168.100.10
           

(2)更改主機名

# hostnamectl set-hostname c2
# su

# vi /etc/hosts
末行插入
192.168.100.10 ct
192.168.100.11 c1
192.168.100.12 c2
           

(3)關閉防火牆,核心防護,網絡管理

# systemctl stop firewalld
# systemctl disable firewalld
# setenforce 0
# vi /etc/selinux/config 
改: SELINUX=disabled

# systemctl stop NetworkManager
# systemctl disable NetworkManager 
           

二:本地YUM源部署

官網下載下傳openstack-R版的源碼包

3個節點都用 Xftp 上傳 包放到/opt目錄下,也可以用其他共享方式挂載到/opt下

1:【控制節點 ct 】配置

(1)解壓openstack源碼包

# cd /opt
# tar zxvf openstack_rocky.tar.gz  -C /opt
# cd openstack_rocky
# pwd
/opt/openstack_rocky
           

(2)搭建yum本地源

# cd /etc/yum.repos.d
# mkdir backup 		建立備份目錄
# mv C* backup  	将目前目錄下,所有内容轉移
# vi local.repo 
重新寫入
[openstack]
name=openstack
baseurl=file:///opt/openstack_rocky		指向源碼包位置
gpgcheck=0
enabled=1
           

(3)把搭建好的本地源傳到2個計算節點

# scp local.repo [email protected]:/etc/yum.repo.d
輸入yes
輸入密碼
# scp local.repo [email protected]:/etc/yum.repo.d
輸入yes
輸入密碼
           

(4)挂載鏡像,加入本地源,以防部署時缺包

# mount /dev/cdrom /mnt
# df -hT
# vi /etc/fstab	永久挂載
末行插入
/dev/cdrom   /mnt       iso9660  defaults 0 0

# mount -a	或 init 6
# cd /etc/yum.repos.d
# vi local.repo
末行插入
[centos]
name=centos
baseurl=file:///mnt
gpgcheck=0
enabled=1
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

(5)更新本地源

# yum clean all
# yum makecache
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
2:【計算節點 c1 】配置

(1)檢視本地源local.repo是否傳過來

# cd /etc/yum.repos.d
# mkdir backup 		建立備份目錄
# mv C* backup  	将目前目錄下,所有内容轉移
# ll		
           

(2)挂載鏡像,加入本地源,以防部署時缺包

# mount /dev/cdrom /mnt
# df -hT
# vi /etc/fstab	永久挂載
末行插入
/dev/cdrom   /mnt       iso9660  defaults 0 0

# mount -a	或 init 6
# cd /etc/yum.repos.d
# vi local.repo
末行插入
[centos]
name=centos
baseurl=file:///mnt
gpgcheck=0
enabled=1
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

(3)更新本地源

# yum clean all
# yum makecache
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

(4)解壓openstack源碼包

# cd /opt
# tar zxvf openstack_rocky.tar.gz  -C /opt
# cd openstack_rocky
# pwd
/opt/openstack_rocky
           
3:【計算節點 c2 】配置

(1)檢視本地源local.repo是否傳過來

# cd /etc/yum.repos.d
# mkdir backup 		建立備份目錄
# mv C* backup  	将目前目錄下,所有内容轉移
# ll		
           

(2)挂載鏡像,加入本地源,以防部署時缺包

# mount /dev/cdrom /mnt
# df -hT
# vi /etc/fstab	永久挂載
末行插入
/dev/cdrom   /mnt       iso9660  defaults 0 0

# mount -a	或 init 6
# cd /etc/yum.repos.d
# vi local.repo
末行插入
[centos]
name=centos
baseurl=file:///mnt
gpgcheck=0
enabled=1
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

(3)更新本地源

# yum clean all
# yum makecache
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

(4)解壓openstack源碼包

# cd /opt
# tar zxvf openstack_rocky.tar.gz  -C /opt
# cd openstack_rocky
# pwd
/opt/openstack_rocky
           

三:時間同步

1:【控制節點 ct 】配置

(1)安裝時間同步,同步阿裡雲

# yum -y install ntpdate ntp	   安裝時間同步,時鐘服務

# ntpdate ntp.aliyun.com 	 同步阿裡雲
# ntpdate ntp.aliyun.com >>/var/log/ntpdate.log	産生日志檔案
設定周期計劃任務
# crontab -e 
*/30 * * * * /usr/sbin/ntpdate ntp.aliyun.com >>/var/log/ntpdate.log

# systemctl restart crond
# systemctl enable crond
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

(2)配置時鐘服務(計算節點可以來同步)

# vi /etc/ntp.conf
restrict default nomodify  後的單詞删除    --第8行改
restrict 192.168.100.0 mask 255.255.255.0 nomodify notrap  
 --第17行改為本機IP網段

将21行到24行删除
     21 server 0.centos.pool.ntp.org iburst
     22 server 1.centos.pool.ntp.org iburst
     23 server 2.centos.pool.ntp.org iburst
     24 server 3.centos.pool.ntp.org iburst
删除後插入下面2行
fudeg 127.127.100.0 stratum 10    
server 127.127.100.0
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

(3)開啟ntp服務

# systemctl disable chronyd.service		--NTP重新開機BUG--通過禁止chronyd服務開機自啟動之後再将系統重新開機
# systemctl restart ntpd     --重新開機ntp服務端
# systemctl enable ntpd      --開機啟動ntp服務端
           
2:【計算節點 c1 】配置
# yum -y install ntpdate 	安裝時間同步
# ntpdate ct  或者 # ntpdate 192.168.100.10		時間同步控制節點
# ntpdate 192.168.100.10 >>/var/log/ntpdate.log

# crontab -e 
*/30 * * * * /usr/sbin/ntpdate 192.168.100.10 >>/var/log/ntpdate.log
# systemctl restart crond
# systemctl enable crond
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
3:【計算節點 c2 】配置
# yum -y install ntpdate 	安裝時間同步
# ntpdate ct  或者 # ntpdate 192.168.100.10	  時間同步控制節點
# ntpdate 192.168.100.10 >>/var/log/ntpdate.log
# crontab -e 
*/30 * * * * /usr/sbin/ntpdate 192.168.100.10 >>/var/log/ntpdate.log
# systemctl restart crond
# systemctl enable crond
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

四:免互動配置

3個節點生成密鑰, 并互相發送密鑰

1:【控制節點 ct 】配置
# ssh-keygen -t rsa  	--生成非對稱密鑰
 一路預設Enter鍵
# ssh-copy-id ct        --互動提示 輸入yes 然後輸入密碼 Abc123
# ssh-copy-id c1		--互動提示 輸入yes 然後輸入密碼 Abc123
# ssh-copy-id c2		--互動提示 輸入yes 然後輸入密碼 Abc123

# init 6   重新開機後
每個節點都檢查下 防火牆是否關閉
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
2:【計算節點 c1 】配置
# ssh-keygen -t rsa  	
 一路預設Enter鍵
# ssh-copy-id ct     	--互動提示 輸入yes 然後輸入密碼 Abc123
# ssh-copy-id c1		--互動提示 輸入yes 然後輸入密碼 Abc123
# ssh-copy-id c2		--互動提示 輸入yes 然後輸入密碼 Abc123

每個節點都檢查下 防火牆是否關閉
# ntpdate ct		同步控制節點
           
3:【計算節點 c2 】配置
# ssh-keygen -t rsa  	
一路預設Enter鍵
# ssh-copy-id ct     	--互動提示 輸入yes 然後輸入密碼 Abc123
# ssh-copy-id c1		--互動提示 輸入yes 然後輸入密碼 Abc123
# ssh-copy-id c2		--互動提示 輸入yes 然後輸入密碼 Abc123

每個節點都檢查下 防火牆是否關閉
# ntpdate ct		同步控制節點
           

五:Openstack一鍵部署安裝

1:【控制節點 ct 】配置

(1)安裝環境,自動化部署工具

# yum -y install openstack-packstack 		   自動化部署工具
# packstack --gen-answer-file=openstack.txt    生成應答檔案
# ll   可以看到應答檔案openstack.txt
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

(2)配置應答檔案

# vi openstack.txt
下面有需要更改的地方:
--第19行 MARIADB資料庫預設要安裝 ,預設是Y,不改
CONFIG_MARIADB_INSTALL=y      
--第22行 GLANCE鏡像組将必須要裝,預設是Y,不改
CONFIG_GLANCE_INSTALL=y         
 --第25行 CINDER元件塊存儲的,必須要裝,預設是Y,不改
CONFIG_CINDER_INSTALL=y         
--第29行MANILA元件是openstack的擴充系統 ,預設N,不改
CONFIG_MANILA_INSTALL=n         
--第32行NOVA元件是openstack計算元件,預設Y,不改
CONFIG_NOVA_INSTALL=y             
--第35行NEUTRON是openstack的網絡元件,預設Y,不改
CONFIG_NEUTRON_INSTALL=y      
 --第38行HORIZON是OpenStack的Dashboard元件,預設Y,不改
38 CONFIG_HORIZON_INSTALL=y      
●第41行SWIFT是OpenStack的對象存儲元件,預設是Y,在生産環境中一般是不裝,是以該n
CONFIG_SWIFT_INSTALL=n             
 --第46行CEILOMETER是OpenStack的計量元件 預設是Y,不改
CONFIG_CEILOMETER_INSTALL=y
●第50行,預設是Y 需要改n
CONFIG_AODH_INSTALL=n       
--第53行, 預設是n  不改  
CONFIG_PANKO_INSTALL=n          
 --第60行,HEAT是OpenStack是編排元件 ,預設是n ,不改
CONFIG_HEAT_INSTALL=n    
  --第94行CONTROLLER是OpenStack的控制節點,在控制節點上配置的,不需要更改IP位址。          
CONFIG_CONTROLLER_HOST=192.168.100.10  
 ●第97行需要更改計算節點的IP位址
CONFIG_COMPUTE_HOSTS=192.168.100.11,192.168.100.12  
●第101行 需要更改網絡節點的IP位址
CONFIG_NETWORK_HOSTS=192.168.100.10  		  
●第557行 系統在建立CINDER元件的的時候回建立一個20G卷,因為我們虛拟機空間有限是以把空間改下點1G,可改可不改
CONFIG_CINDER_VOLUMES_SIZE=20G   		  
●第778行 ,像這樣的29948657b3aa409c是密碼,有後面有專門的腳本改,好記。密碼
CONFIG_NEUTRON_METADATA_PW=29948657b3aa409c    
 --●第782行  LBAAS負載均衡元件。必選要裝 選y。 預設n,這次實驗不改
CONFIG_LBAAS_INSTALL=n           
 --●第790行 FWAAS是防火牆元件。必選要裝 選y。預設n,這次實驗不改
CONFIG_NEUTRON_FWAAS=n     
--●第794行 VPNAAS是VPN元件。必選要裝 選y。預設n,這次實驗不改
CONFIG_NEUTRON_VPNAAS=n    
●第817行,FLAT網絡這邊要設定實體網卡名字
CONFIG_NEUTRON_ML2_FLAT_NETWORKS=physnet1  		
●第862行,這邊要設定實體網卡的名字
CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet1:br-ex            
●第873行,這邊br-ex:eth1是網絡節點的nat網卡
CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-ex:eth1   		
●第1185行 是OpenStack聯網下載下傳一個測試鏡像,這邊沒聯網。說以改成n
 CONFIG_PROVISION_DEMO=n    				

           

需改的地方:

第41行:SWIFT是OpenStack的對象存儲元件,預設是Y,在生産環境中一般是不裝,是以該n

Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

第97行:需要更改計算節點的IP位址

Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

第817行:FLAT網絡這邊要設定實體網卡名字

Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

第862行:這邊要設定實體網卡的名字

Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

第873行:這邊br-ex:eth1是網絡節點的nat網卡

Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

第1185行: 是OpenStack聯網下載下傳一個測試鏡像,這邊沒聯網。說以改成n

Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

(3)改控制節點和網絡節點位址,改密碼

(也可以直接在配置檔案裡改,94行、 101行、 778行)

# sed -i -r 's/192.168.188.188/192.168.100.10/g' openstack.txt
# sed -i -r 's/(.+_PW)=.+/\1=Abc123/' openstack.txt

# grep -vE "^#|^$" openstack.txt >openstackbak.txt

           

(4)把内網ens36的網關添加上

# vi /etc/sysconfig/network-scripts/ifcfg-ens36
添加網關
# systemctl restart network
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

(5)openstack 自動部署安裝

前面配置了時間同步,在控制節點敲自動部署,3台節點會同步安裝

# packstack --answer-file=openstack.txt	   自動安裝部署
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

(6)另開一個視窗

# tail -f /var/log/messages	動态檢視部署情況
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
2:【計算節點 c1 】配置
# tail -f /var/log/messages	動态檢視部署情況
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
3:【計算節點 c2 】配置
# tail -f /var/log/messages	動态檢視部署情況
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

六:Openstack登入測試

Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
1:【控制節點 ct 】配置

安裝完成後

# cat keystonerc_admin    檢視使用者密碼
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

Openstack登入測試

浏覽器輸入 http://192.168.100.10/dashboard 或 http://192.168.100.10

賬号:admin

密碼:Abc123

頁面登入測試成功

Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細
# source /root/keystonerc_admin
# neutron agent-list		檢視網絡節點狀态
           
Openstack-Rocky 一鍵安裝(多節點搭建)~步驟超詳細

所有agent 如箭頭所指的 笑臉形狀 就表示網絡服務正常。

繼續閱讀