1、目標:
①、瞭解open stack平臺部署方法
②、瞭解指令碼部署方式
③、使用指令碼部署openstack平臺
2、規劃:
一臺控制節點和一臺計算節點組成簡單架構OpenStack平臺,控制節點安裝MySQL、Keystone、Glance、Nova、Neutron、Dashboard等服務,主要作為認證、映象管理節點,以及提供Nova和Neutron服務的管理節點。提供Dashboard介面服務。
計算節點主要安裝nova-compute和Neutron服務,Nova服務提供雲主機服務,Neutron提供網路服務。
透過Shell指令碼進行OpenStack平臺部署,指令碼分為控制節點指令碼和計算節點指令碼,對應節點執行部署指令碼。
3、準備:(頭條沒有表格功能,湊活看吧)
①、兩臺虛擬機器:
虛擬機器1配置:
IP:
192。168。100。10 僅主機模式
192。168。200。10 net模式
主機名:controller
配置
:
記憶體4G 、硬碟50GB、
開啟虛擬化
虛擬機器2配置:
IP:
192。168。100。20 僅主機模式
192。168。200。20 net模式
主機名:
compute
配置:
記憶體4G 、硬碟100GB、
開啟虛擬化、新增兩塊5GB硬碟,分別命名sda3、sda4
②、準備軟體安裝包
XianDian-IaaS-v2。2。iso 2。2 2。65GB
cirros-0。3。3-x86_64-disk。img 0。3。3 12。6MB
centos7。2 1511 4。03GB
4、實施
1. 基礎環境配置
(1)IP地址配置
控制節點和計算節點,安裝最小化CentOS7。2作業系統,配置每個節點IP地址。並使用secureCRT進行連線。
controller節點修改部分:[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eno16777736TYPE=EthernetBOOTPROTO=staticDEFROUTE=yesPEERDNS=yesPEERROUTES=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_PEERDNS=yesIPV6_PEERROUTES=yesIPV6_FAILURE_FATAL=noNAME=eno16777736DEVICE=eno16777736ONBOOT=yesIPADDR=192。168。100。10NETMASK=255。255。255。0
compute節點修改部分:[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eno16777736TYPE=EthernetBOOTPROTO=staticDEFROUTE=yesPEERDNS=yesPEERROUTES=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_PEERDNS=yesIPV6_PEERROUTES=yesIPV6_FAILURE_FATAL=noNAME=eno16777736DEVICE=eno16777736ONBOOT=yesIPADDR=192。168。100。20NETMASK=255。255。255。0
(2)上傳基礎映象
上傳XianDian-IaaS-v2。2。iso和CentOS-7-x86_64-DVD-1511。iso兩個映象包至controller節點/root目錄中,並將ISO檔案掛載至/opt/目錄中。
[root@localhost ~]# lltotal 7012772-rw————-。 1 root root 1319 Oct 31 13:17 anaconda-ks。cfg-rw-r——r——。 1 root root 4329570304 Jan 16 2017 CentOS-7-x86_64-DVD-1511。iso-rw-r——r——。 1 root root 2851502080 Nov 5 2017 XianDian-IaaS-v2。2。iso[root@localhost ~]# mkdir /opt/centos7。2[root@localhost ~]# mkdir /opt/iaas[root@localhost ~]# mount /root/CentOS-7-x86_64-DVD-1511。iso /opt/centos7。2/[root@localhost ~]# mount /root/XianDian-IaaS-v2。2。iso /opt/iaas/
(3)配置YUM原始檔
controller節點:
[root@localhost ~]# rm -rf /etc/yum。repos。d/CentOS-*[root@localhost ~]# cat > /etc/yum。repos。d/local。repo < compute節點: [root@localhost ~]# rm -rf /etc/yum。repos。d/CentOS-*[root@localhost ~]# cat > /etc/yum。repos。d/local。repo < (4)控制節點安裝ftp服務 控制節點安裝vsftpd服務,提供計算節點ftp訪問方式。 [root@localhost ~]# yum install vsftpd -y在/etc/vsftpd/vsftpd。conf配置中新增一行程式碼:anon_root=/opt# 重啟vsftpd服務:[root@localhost ~]# systemctl restart vsftpd (5)配置防火牆策略 在控制節點和計算節點中關閉防火牆: [root@localhost ~]# setenforce 0[root@localhost ~]# iptables -F[root@localhost ~]# iptables -X[root@localhost ~]# iptables -Z[root@localhost ~]# systemctl stop firewalld (6)安裝iaas-xiandian服務 在控制節點和計算節點安裝iaas-xiandian軟體包。 yum install iaas-xiandian -y (7)配置環境變數 控制節點和計算節點配置環境變數的配置檔案/etc/xiandian/openrc。sh,配置引數說明如下: HOST_IP=192。168。100。10HOST_NAME=controllerHOST_IP_NODE=192。168。100。20HOST_NAME_NODE=computeRABBIT_USER=openstackRABBIT_PASS=000000DB_PASS=000000DOMAIN_NAME=demoADMIN_PASS=000000DEMO_PASS=000000KEYSTONE_DBPASS=000000GLANCE_DBPASS=000000GLANCE_PASS=000000NOVA_DBPASS=000000NOVA_PASS=000000NEUTRON_DBPASS=000000NEUTRON_PASS=000000METADATA_SECRET=000000INTERFACE_NAME=eno33554960##節點第二塊網絡卡名稱CINDER_DBPASS=000000CINDER_PASS=000000BLOCK_DISK=sda3##計算節點cinder服務使用空分割槽SWIFT_PASS=000000OBJECT_DISK=sda4##計算節點swift服務使用空分割槽STORAGE_LOCAL_NET_IP=192。168。100。20##計算節點地址 2. 使用指令碼安裝OpenStack平臺 (1)安裝基礎服務 控制節點和計算節點透過指令碼安裝基礎服務: [root@localhost ~]# iaas-pre-host。sh 控制節點安裝完成後,按Ctrl+D鍵退出並重新登入,使主機名生效。 計算節點安裝完成後,按Ctrl+D鍵退出並重新登入,使主機名生效。 (2)安裝MySQL資料庫服務 控制節點透過指令碼安裝MySQL資料庫服務: [root@controller~]# iaas-install-mysql。sh (3)安裝Keystone認證服務 控制節點透過指令碼安裝Keystone認證服務: [root@controller ~]# iaas-install-keystone。sh (4)安裝Glance映象服務 控制節點透過指令碼安裝Glance映象服務: [root@controller ~]# iaas-install-glance。sh (5)安裝Nova計算服務 controller節點透過指令碼安裝計算服務: [root@controller ~]# iaas-install-nova-controller。sh compute節點透過指令碼安裝計算服務: [root@compute~]# iaas-install-nova-compute。sh (6)安裝Neutron網路服務 controller節點透過指令碼安裝網路服務: [root@controller ~]# iaas-install-neutron-controller。sh[root@controller ~]# iaas-install-neutron-controller-gre。sh compute節點透過指令碼安裝網路服務: [root@compute~]# iaas-install-neutron-compute。sh[root@compute~]# iaas-install-neutron-compute-gre。sh (7)安裝Dashboard服務 controller節點透過指令碼安裝Dashboard服務: [root@controller ~]# iaas-install-dashboard。sh (8)安裝Cinder塊儲存服務 controller節點透過指令碼安裝塊儲存服務: [root@controller ~]# iaas-install-cinder-controller。sh compute節點透過指令碼安裝塊儲存服務: [root@compute~]# iaas-install-cinder-compute。sh (9)安裝Swift物件儲存服務 controller節點透過指令碼安裝物件儲存服務: [root@controller ~]# iaas-install-swift-controller。sh compute節點透過指令碼安裝物件儲存服務: [root@compute ~]# iaas-install-swift-compute。sh (10)訪問Dashboard服務 開啟瀏覽器,訪問地址,輸入環境變數檔案中填寫的密碼,域為demo、使用者名稱為admin、密碼為000000,然後單擊“連線”按鈕 訪問Dashboard服務 登入後即可訪問到Dashboard系統,如圖5所示。