OpenStack----多節點部署(實驗)

一、實驗環境

  • ① 控制節點 命名爲ct

    CPU:雙核雙線程–CPU虛擬化開啓

    內存:8G 硬盤:300G+2048G(充當CEPH塊存儲)

    網卡:VM1-192.168.100.10 NAT-192.168.226.100(靜態)

    • 注意,要在安裝centos時,選擇安裝,然後按Tab鍵,輸入 net.ifnames=0 biosdevname=0將網卡改爲eth模式

    操作系統 centos7(1810) --最小化安裝

  • ② 計算節點 (網絡模塊)命名爲c1

    CPU:雙核雙線程–CPU虛擬化開啓

    內存:8G 硬盤:300G+2048G(充當CEPH塊存儲)

    網卡:VM1-192.168.100.11

    操作系統 centos7(1810) --最小化安裝

  • ③ 計算節點2(網絡模塊)命名爲c2

    CPU:雙核雙線程–CPU虛擬化開啓

    內存:8G 硬盤:300G+2048G(充當CEPH塊存儲)

    網卡:VM1-192.168.100.12

    操作系統 centos7(1810) --最小化安裝

  • 配置要求

    控制節點:最小內存6G

    計算節點、網絡節點:最小內存6G

    NAT 充當外部浮動IP地址,遠程可以訪問內部主機

鏡像文件下載處:

https://mirrors.aliyun.com/centos/7.7.1908/isos/x86_64/CentOS-7-x86_64-DVD-1908.iso
#到阿里雲下載鏡像1908操作系統

二、實驗配置思路

  • 所有節點

  • ① 安裝操作系統,設置好磁盤

  • ② 規劃網絡,配置網卡和IP地址

  • ③ 配置本地YUM源倉庫(控制節點配置完成後可以直接推送給計算節點

  • ④ 關閉防火牆(firewalld、iptables) 設爲開機不自啓

  • ⑤ 關閉網絡管理,設爲開機不自啓

  • ⑥ 配置地址映射

  • ⑦ 配置免交互 (rst)

  • ⑧ 配置時間同步

  • 以下只在控制節點配置

  • ① 部署OpenStack一鍵安裝工具

  • ② 修改應答文件

  • ③ 一鍵部署

  • ④ 登錄web頁面測試

三、實驗步驟

3.1 硬件規劃

在這裏插入圖片描述

3.2 網絡配置
  • eth0(VMnet1網卡設置)
[root@ct ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0
UUID=a2bdfd6d-4e2a-40eb-a5c2-26662ce7e727
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.100.10
NETMASK=255.255.255.0
#GATEWAY=192.168.100.1
#先註釋網關,不然之後配置NAT後無法連通外部網絡
  • eth1(NAT網卡設置)
[root@ct ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth1
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth1
UUID=b9a62994-c748-49a6-881a-8fe8dfefcc43
DEVICE=eth1
ONBOOT=yes
IPADDR=192.168.226.100
NETMASK=255.255.255.0
GATEWAY=192.168.226.2
  • 加入端口映射、重啓網卡,嘗試ping 百度
[root@ct ~]# vi /etc/resolv.conf
nameserver 8.8.8.8
[root@ct ~]# systemctl restart network    
[root@ct ~]# ping www.baidu.com
PING www.wshifen.com (104.193.88.77) 56(84) bytes of data.
64 bytes from 104.193.88.77 (104.193.88.77): icmp_seq=4 ttl=128 time=149 ms
64 bytes from 104.193.88.77 (104.193.88.77): icmp_seq=5 ttl=128 time=147 ms
64 bytes from 104.193.88.77 (104.193.88.77): icmp_seq=6 ttl=128 time=145 ms
  • C1與C2 只要修改VMnet1網卡,與ct節點的VMnet1在同一網段即可
  • PS:查看網卡信息命令爲:ip addr ,也可以下載ifconfig軟件包來使用ifconfig查看網卡
3.3 環境優化
  • 使用OpenStack本地yum源搭建yum倉庫

    ① 掛載鏡像ISO

[root@ct ~]# vi /etc/fstab
/dev/cdrom /mnt iso9660 defaults 0 0
#添加以上內容
------》wq
    
#刷新生效
[root@ct ~]# mount -a
[root@ct ~]# df -hT
/dev/sr0       iso9660   4.2G  4.2G     0 100% /mnt
#鏡像已掛載成功
  • ② 上傳openstck文件包,搭建yum倉庫
使用finalshell遠程連接直接把openstack_rocky.tar.gz上傳到/opt目錄即可
[root@ct ~]# cd /opt
[root@ct opt]# tar zxvf openstack_rocky.tar.gz
......省略部分內容
[root@ct opt]# cd /etc/yum.repos.d
[root@ct yum.repos.d]# mkdir backup
[root@ct yum.repos.d]# mv Cen* backup
[root@ct yum.repos.d]# vi local.repo
#以下爲openstack源
[openstack]
name=openstack
baseurl=file:///opt/openstack_rocky
gpgcheck=0
enabled=1

#以下爲本地鏡像
[centos]
name=centos
baseurl=file:///mnt
gpgcheck=0
enabled=1
-----》wq
[root@ct yum.repos.d]# yum clean all
[root@ct yum.repos.d]# yum makecache
#先清除緩存,再創建緩存
  • 關閉防火牆、核心防護與網絡管理,同時設置爲開啓不自啓
[root@ct yum.repos.d]# systemctl stop firewalld
[root@ct yum.repos.d]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

[root@ct yum.repos.d]# setenforce 0
[root@ct yum.repos.d]# vi /etc/sysconfig/selinux
SELINUX=disabled
[root@ct yum.repos.d]# systemctl stop NetworkManager

[root@ct yum.repos.d]# systemctl disable NetworkManager
Removed symlink /etc/systemd/system/multi-user.target.wants/NetworkManager.service.
Removed symlink /etc/systemd/system/dbus-org.freedesktop.NetworkManager.service.
Removed symlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service.
  • 配置本地主機映射(所有節點服務都需要配置)

    此處只展示ct節點

[root@ct yum.repos.d]# vi /etc/hosts
192.168.100.10 ct
192.168.100.11 c1
192.168.100.12 c2
----->wq
  • 配置ct 控制節點的時鐘服務,同時配置c1 c2節點時間同步
#安裝ntp、ntpdate 服務,C1 C2節點只需要安裝ntpdate服務即可
[root@ct yum.repos.d]# yum install ntp ntpdate -y
.....省略部分內容

#ct節點同步阿里雲時間服務器,c1 c2 直接同步ct服務器即可
[root@ct yum.repos.d]# ntpdate ntp.aliyun.com

#創建計劃性任務,週期性進行時間同步
[root@ct yum.repos.d]# crotab -e
*/30 * * * * /usr/sbin/ntpdate ntp.aliyun.com >>/var/log/ntpdate.log
#實驗中 同步的時間可以稍微調整長一點,以免產生過多日誌文件
#c1 c2節點服務器同理創建週期性計劃任務,如下
*/30 * * * * /usr/sbin/ntpdate ct >>/var/log/ntpdate.log
  • 修改ct 控制節點ntp主配置文件
[root@ct yum.repos.d]# vim /etc/ntp.conf
#第8行修改
restrict default nomodify 

#第17行將default 修改爲100網段
restrict 192.168.100.0 mask 255.255.255.0 nomodify notrap

#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
#25-26添加以下內容
fudeg 127.127.1.0 stratum 10    
server 127.127.1.0
-----》wq
  • 開始crond服務、ntp服務

    ct 控制節點開啓以下服務

[root@ct yum.repos.d]# systemctl restart crond	
[root@ct yum.repos.d]# systemctl enable crond	
[root@ct yum.repos.d]# systemctl restart ntpd	
[root@ct yum.repos.d]# systemctl enable ntpd	
[root@ct yum.repos.d]# systemctl disable chronyd.service
#chronyd 此時間同步服務需要關閉開機自啓動,否則ntp服務開機自啓動無效
  • 兩個計算節點僅需開啓以下服務
[root@ct yum.repos.d]# systemctl restart crond	
[root@ct yum.repos.d]# systemctl enable crond
  • 免交互配置(所有節點)
[root@ct yum.repos.d]# ssh-keygen -t rsa
#生成密鑰隊步驟全部按回車即可
[root@ct yum.repos.d]# ssh-copy-id ct
#需要先確定,輸入yes ,然後輸入推送目標服務器的密碼即可
[root@ct yum.repos.d]# ssh-copy-id c1
[root@ct yum.repos.d]# ssh-copy-id c2
  • 重啓,檢查配置是否生效
[root@ct yum.repos.d]# reboot
3.4 ct 控制節點部署OpenStack
3.4.1 安裝一鍵部署工具
#安裝一鍵部署工具
[root@ct ~]# yum install openstack-packstack
.......省略部分內容

#生成應答文件    
[root@ct ~]# packstack --gen-answer-file=openstack.txt 
  • 在ct 控制節點修改應答文件、同時一鍵部署openstack
[root@ct ~]# vi openstack.txt

#第41行SWIFT是OpenStack的對象存儲組件,默認是Y,在生產環境中一般是不裝,所以改n
CONFIG_SWIFT_INSTALL=n

#第50行,默認是Y 需要改n
CONFIG_AODH_INSTALL=n

#第97行需要更改計算節點的IP地址'
CONFIG_COMPUTE_HOSTS=192.168.100.11,192.168.100.12

#第101行 需要更改網絡節點的IP地址
CONFIG_NETWORK_HOSTS=192.168.100.10

#第782行LBAAS負載均衡組件。必選要裝 選y
CONFIG_LBAAS_INSTALL=y	

#第790行 FWAAS是防火牆組件。必選要裝 選y
CONFIG_NEUTRON_FWAAS=y 


#第794行 VPNAAS是VPN組件。必選要裝 選y
CONFIG_NEUTRON_VPNAAS=y 	

#第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
  • 修改openstack賬號密碼
[root@ct ~]# sed -i -r 's/(.+_PW)=.+/\1=123123/' openstack.tx
  • 修改應答文件中所有控制節點IP
[root@ct ~]# sed -i -r 's/192.168.233.100/192.168.100.10/g' openstack.txt
  • 備份應答文件
[root@ct ~]# grep -vE "^#|^$" openstack.txt >openstackbak.txt
  • 一鍵部署安裝openstack

    時間較長,我們可以同時查看後臺日誌文件 :tail -f /var/log/messages

[root@ct ~]# packstack --answer-file=openstack.txt
#等待時間較長
    
**** Installation completed successfully ******
#看到此處顯示,安裝成功
  • 查看賬戶名和密碼
[root@ct ~]# cat keystonerc_admin
[root@ct ~]# cat keystonerc_admin 
unset OS_SERVICE_TOKEN
    export OS_USERNAME=admin	#用戶名
    export OS_PASSWORD='123123'	#密碼
    export OS_AUTH_URL=http://192.168.11.100:5000/v3
    export PS1='[\u@\h \W(keystone_admin)]\$ '
    
export OS_PROJECT_NAME=admin
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_NAME=Default
export OS_IDENTITY_API_VERSION=3
3.5 登錄web頁面測試
  • 輸入192.168.100.10 進入openstack 頁面

在這裏插入圖片描述

在這裏插入圖片描述

總結

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章