雙節點部署open stack
阿新 • • 發佈:2021-12-22
IP | 主機名 | 節點 |
192.168.200.30 | controller | 控制節點 |
192.168.200.40 | compute | 計算節點 |
一 基礎設施配置
(1)兩個節點虛擬機器設定(controller和compute)
(2)首先配置IP
controller節點
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eno16777736 TYPE=Ethernet BOOTPROTO=static DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no NAME=eno16777736 DEVICE=eno16777736 ONBOOT=yes IPADDR=192.168.200.30 NETMASK+255.255.255.0
compute節點
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eno16777736 TYPE=Ethernet BOOTPROTO=static DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no NAME=eno16777736 DEVICE=eno16777736 ONBOOT=yes IPADDR=192.168.200.40 NETMASK=255.255.255.0
(3)修改主機名
# 控制節點 [root@localhost ~]# hostnamectl set-hostname controller [root@localhost ~]# bash [root@controller ~]# # 計算節點 [root@localhost ~]# hostnamectl set-hostname compute [root@localhost ~]# bash [root@compute ~]#
(4)上傳基礎映象
[root@controller ~]# ll total 7025752 -rw-------. 1 root root 1083 Jun 4 04:19 anaconda-ks.cfg -rw-r--r--. 1 root root 4329570304 Jun 4 04:56 CentOS-7-x86_64-DVD-1511.iso -rw-r--r--. 1 root root 13287936 Jun 4 04:49 cirros-0.3.3-x86_64-disk.img -rw-r--r--. 1 root root 2851502080 Jun 4 04:55 XianDian-IaaS-v2.2.iso
(5)配置yum源
(控制節點和計算節點)
[root@controller ~]# mkdir /opt/centos [root@controller ~]# mkdir /opt/iaas [root@controller ~]# mount CentOS-7-x86_64-DVD-1511.iso /opt/centos/ mount: /dev/loop0 is write-protected, mounting read-only [root@controller ~]# mount XianDian-IaaS-v2.2.iso /opt/iaas/ mount: /dev/loop1 is write-protected, mounting read-only [root@controller ~]# rm -rf /etc/yum.repos.d/* [root@controller ~]# vi /etc/yum.repos.d/local.repo [root@controller ~]# cat /etc/yum.repos.d/local.repo [centos] name=centos baseurl=file:///opt/centos gpgcheck=0 enabled=1 [iaas] name=iaas baseurl=file:///opt/iaas/iaas-repo gpgcheck=0 enabled=1 [root@controller ~]# yum repolist Loaded plugins: fastestmirror centos | 3.6 kB 00:00 iaas | 2.9 kB 00:00 (1/3): centos/group_gz | 155 kB 00:00 (2/3): centos/primary_db | 2.8 MB 00:00 (3/3): iaas/primary_db | 2.3 MB 00:00 Determining fastest mirrors repo id repo name status centos centos 3,723 iaas iaas 1,688 repolist: 5,411 # compute [root@compute ~]# rm -rf /etc/yum.repos.d/* [root@compute ~]# vi /etc/yum.repos.d/ftp.repo [root@compute ~]# cat /etc/yum.repos.d/ftp.repo [centos] name=centos baseurl=ftp://192.168.200.30/centos gpgcheck=0 enabled=1 [iaas] name=iaas baseurl=ftp://192.168.200.40/iaas/iaas-repo gpgcheck=0 enabled=1
(6)配置ftp防火牆
[root@controller ~]# yum install -y vsftpd [root@controller ~]# vi /etc/vsftpd/vsftpd.conf anon_root=/opt ## 新增一行 [root@controller ~]# systemctl restart vsftpd [root@controller ~]# setenforce 0 [root@controller ~]# vi /etc/selinux/config # 換成disabled [root@controller ~]# systemctl stop firewalld [root@controller ~]# systemctl disable firewalld Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service. [root@controller ~]# iptables -F [root@controller ~]# iptables -X [root@controller ~]# iptables -Z [root@controller ~]# iptables-save # Generated by iptables-save v1.4.21 on Sun Jun 6 22:43:46 2021 *filter :INPUT ACCEPT [16:1072] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [9:956] COMMIT # Completed on Sun Jun 6 22:43:46 2021 # compute [root@compute ~]# systemctl stop firewalld [root@compute ~]# systemctl disable firewalld Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service. [root@compute ~]# setenforce 0 [root@compute ~]# vi /etc/selinux/config [root@compute ~]# iptables -F [root@compute ~]# iptables -X [root@compute ~]# iptables -Z [root@compute ~]# iptables-save # Generated by iptables-save v1.4.21 on Sun Jun 6 22:45:39 2021 *filter :INPUT ACCEPT [16:1072] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [9:956] COMMIT # Completed on Sun Jun 6 22:45:39 2021 [root@compute ~]# yum repolist Loaded plugins: fastestmirror centos | 3.6 kB 00:00 iaas | 2.9 kB 00:00 (1/2): centos/group_gz | 155 kB 00:00 (2/2): iaas/primary_db | 2.3 MB 00:00 Determining fastest mirrors repo id repo name status centos centos 3,723 iaas iaas 1,688 repolist: 5,411
(7)安裝iaas-xiandian服務
兩個節點都要安裝
[root@controller ~]# yum install iaas-xiandian -y
[root@compute ~]# yum install iaas-xiandian -y
修改配置檔案,完成後操作:(刪除多餘的#)
# 第一條,將檔案中的##換成@
# 第二條,將檔案中的#去掉
# 第三條,將檔案中的@換回##
sed -i s/##/@/g /etc/xiandian/openrc.sh
sed -i s/#//g /etc/xiandian/openrc.sh
sed -i s/@/##/g /etc/xiandian/openrc.sh
或者用 :%s/^#//g來刪除多餘的#
然後新增修改配置檔案
[root@controller ~]# vi /etc/xiandian/openrc.sh HOST_IP=192.168.200.30 HOST_NAME=controller HOST_IP_NODE=192.168.200.40 HOST_NAME_NODE=compute RABBIT_USER=openstack RABBIT_PASS=000000 DB_PASS=000000 DOMAIN_NAME=demo ADMIN_PASS=000000 DEMO_PASS=000000 KEYSTONE_DBPASS=000000 GLANCE_DBPASS=000000 GLANCE_PASS=000000 NOVA_DBPASS=000000 NOVA_PASS=000000 NEUTRON_DBPASS=000000 NEUTRON_PASS=000000 METADATA_SECRET=000000 INTERFACE_NAME=eno33554960 minvlan= maxvlan= CINDER_DBPASS=000000 CINDER_PASS=000000 # 根據自己硬碟分割槽情況 BLOCK_DISK=sdb1 TROVE_DBPASS=000000 TROVE_PASS=000000 SWIFT_PASS=000000 # 根據自己硬碟分割槽情況 OBJECT_DISK=sdc1 STORAGE_LOCAL_NET_IP=192.168.200.40 HEAT_DBPASS= HEAT_PASS= CEILOMETER_DBPASS= CEILOMETER_PASS= AODH_DBPASS= AODH_PASS=
二 開始跑指令碼
(1)安裝基礎服務
兩個節點都跑
[root@localhost ~]# iaas-pre-host.sh
斷開重新連線一下
(2)安裝MySQL資料庫服務
[root@controller~]# iaas-install-mysql.sh
(3)安裝Keystone服務
[root@controller ~]# iaas-install-keystone.sh
(4)安裝Glance映象服務
[root@controller ~]# iaas-install-glance.sh
(5)安裝Nova計算服務
[root@controller ~]# iaas-install-nova-controller.sh
[root@compute~]# iaas-install-nova-compute.sh
(6)安裝Neutron服務
[root@controller ~]# iaas-install-neutron-controller.sh [root@controller ~]# iaas-install-neutron-controller-gre.sh [root@compute~]# iaas-install-neutron-compute.sh [root@compute~]# iaas-install-neutron-compute-gre.sh
(7)安裝Dashboard服務
[root@controller ~]# iaas-install-dashboard.sh
(8)安裝Cinder塊儲存服務
[root@controller ~]# iaas-install-cinder-controller.sh
[root@compute~]# iaas-install-cinder-compute.sh
(9)安裝Swift物件儲存服務
[root@controller ~]# iaas-install-swift-controller.sh
[root@compute ~]# iaas-install-swift-compute.sh
(10)訪問Dashboard服務
在瀏覽器中訪問http;//192.168.200.30/dashboard地址,域名:demo ,使用者名稱:admin ,密碼:000000 ,然後“連線”