實際操做示意圖mysql
在VMware裏面建立兩臺centos7的虛擬機做爲搭建雲平臺的兩節點配置以下:linux
一、第一臺虛擬機 做爲控制節點sql
2CPUshell
3G以上內存swift
硬盤50Gcentos
網絡適配器一個nat 一個僅主機瀏覽器
虛擬機分區狀況服務器
Boot 分區 200M網絡
swap分區 是虛擬機內存大小的2倍dom
/ 分區 40G
第二臺虛擬機 做爲計算節點
2CPU
2G以上內存
硬盤三個:50G 20G 20G
網絡適配器兩個:一個nat 一個僅主機
虛擬機分區狀況
Boot 分區 200M
swap分區 是虛擬機內存大小的2倍
/ 分區 40G
修改控制節點和計算節點的主機名稱
配置文件
#vi /etc/hostname
從新登陸生效
#login
修改網卡信息
控制節點
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 HWADDR=00:0C:29:07:A6:62 TYPE=Ethernet UUID=b9d869dd-c7dd-4949-9604-b3d7d31f7bf2 ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=static IPADDR=192.168.100.10 NETMASK=255.255.255.0 GATEWAY=192.168.100.2
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=static IPADDR=192.168.200.10 NETMASK=255.255.255.0
重啓網絡
#service network restart
計算節點
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 HWADDR=00:0C:29:07:A6:62 TYPE=Ethernet UUID=b9d869dd-c7dd-4949-9604-b3d7d31f7bf2 ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=static IPADDR=192.168.100.20 NETMASK=255.255.255.0 GATEWAY=192.168.100.2
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=static IPADDR=192.168.200.20 NETMASK=255.255.255.0
重啓網絡
#service network restart
將鏡像文件CentOS-7-x86_64-DVD-1511.iso和XianDian-IaaS-v2.2.iso傳至控制節點虛擬機內(控制節點作)
域名解析(兩節點都作)
# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.100.10 controller 192.168.100.20 compute
驗證:互ping
計算節點 # ping controller
# ping 192.168.100.10
控制節點 # ping compute
# ping 192.168.100.20
關防火牆(兩節點都作)
centos6.5
# iptables –F
# iptables –X
# iptables –Z
# service iptables save
# iptables –L
centos7
#systemctl stop firewalld
#service firewalld save
設置開機不自動啓動
#systemctl disable firewalld
# vi /etc/selinux/config
把SELINUX=enforcing改爲SELINUX=permissive
# setenforce 0
查看鏡像文件,對鏡像文件作掛載,作鏡像源(控制節點作)
# mount -o loop XianDian-IaaS-v2.2.iso /mnt/
# cp -rvf /mnt/* /opt/
# umount /mnt/
# mount -o loop CentOS-7-x86_64-DVD-1511.iso /mnt/
# mkdir /opt/centos7
# cp -rvf /mnt/* /opt/centos7/
# umount /mnt/
控制節點 配置yum源 (控制節點作)
# cd /etc/yum.repos.d/
# rm -rvf *
# vi local.repo
[centos] name=centos baseurl=file:///opt/centos7/ gpgcheck=0 enabled=1 [iaas] name=iaas baseurl=file:///opt/iaas-repo/ gpgcheck=0 enabled=1
# yum clean all
# yum list
控制節點安裝ftp (控制節點作)
# yum install vsftpd -y
修改配置信息
# vi /etc/vsftpd/vsftpd.conf
在最後一行添加anon_root=/opt
保存退出
# service vsftpd restart
# chkconfig vsftpd on
驗證:本地搜索ftp://192.168.100.10/
# yum install httpd
# service httpd restart
http://192.168.100.10/
計算節點 配置yum源 (計算節點作)
# cd /etc/yum.repos.d/
# rm -rvf *
# vi local.repo
[centos] name=centos baseurl=ftp://controller/centos7/ gpgcheck=0 enabled=1 [iaas] name=iaas baseurl=ftp://controller/iaas-repo/ gpgcheck=0 enabled=1
# yum clean all
# yum list
安裝部署雲平臺
編輯環境變量
controller和compute節點
# yum install iaas-xiandian -y
(1)# cd /etc/xiandian/
(2)去除配置文件中每一行開頭的#
# sed -i 's/^#//g' openrc.sh
第二種去除配置文件中每一行開頭的#
# vi openrc.sh
:%s/^.//g
(3)將密碼所有設置爲000000
# vi openrc.sh
:%s/PASS=/PASS=000000/g
修改剩餘配置
編輯文件/etc/xiandian/openrc.sh,此文件是安裝過程當中的各項參數,根據每項參數上一行的說明及服務器實際狀況進行配置。
HOST_IP=192.168.100.10 HOST_NAME=controller HOST_IP_NODE=192.168.100.20 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=enp9s0 //(外網網卡名)[僅主機網卡] CINDER_DBPASS=000000 CINDER_PASS=000000 TROVE_DBPASS=000000 TROVE_PASS=000000 BLOCK_DISK=md126p4 //(空白分區名) SWIFT_PASS=000000 OBJECT_DISK=md126p5 //(空白分區名) STORAGE_LOCAL_NET_IP=192.168.100.20 HEAT_DBPASS=000000 HEAT_PASS=000000 CEILOMETER_DBPASS=000000 CEILOMETER_PASS=000000 AODH_DBPASS=000000 AODH_PASS=000000
經過腳本安裝服務
基礎配置操做命令已經編寫成shell腳本,經過腳本進行一鍵安裝。以下:
# Controller節點和Compute節點
執行腳本iaas-pre-host.sh進行安裝
# 安裝完成後同時重啓
[root@controller ~]# reboot
# Controller節點
執行腳本iaas-install-mysql.sh進行安裝
經過腳本安裝keystone服務
# Controller節點
執行腳本iaas-install-keystone.sh進行安裝。
經過腳本安裝glance服務
# Controller 節點
執行腳本iaas-install-glance.sh進行安裝
經過腳本安裝nova服務
#Controller節點
執行腳本iaas-install-nova-controller.sh進行安裝
#Compute節點
執行腳本iaas-install-nova-compute.sh進行安裝
經過腳本安裝neutron服務
#Controller節點
執行腳本iaas-install-neutron-controller.sh進行安裝
#Compute節點
執行腳本iaas-install-neutron-compute.sh進行安裝
經過腳本建立neutron網絡(建立gre網絡便可)
建立flat網絡
#Controller節點
執行腳本iaas-install-neutron-controller-flat.sh進行安裝
#Compute節點
執行腳本iaas-install-neutron-compute-flat.sh進行安裝
建立gre網絡
#Controller節點
執行腳本iaas-install-neutron-controller-gre.sh進行安裝
#Compute節點
執行腳本iaas-install-neutron-compute-gre.sh進行安裝
建立vlan網絡
#Controller節點
執行腳本iaas-install-neutron-controller-vlan.sh進行安裝
#Compute節點
執行腳本iaas-install-neutron-compute-vlan.sh進行安裝
經過腳本安裝dashboard服務
#Controller
執行腳本iaas-install-dashboard.sh進行安裝
訪問
打開瀏覽器訪問Dashboard
http://controller(或本機內網ip)/dashboard
注:檢查防火牆規則,確保容許http服務相關端口通行,或者關閉防火牆。
經過腳本安裝Cinder服務
#Controller
執行腳本iaas-install-cinder-controller.sh進行安裝
#Compute節點
執行腳本iaas-install-cinder-compute.sh進行安裝
安裝Swift對象存儲服務
#Controller節點
# source admin-openrc.sh
經過腳本安裝Swift服務
#Controller
執行腳本iaas-install-swift-controller.sh進行安裝
#Compute節點
執行腳本iaas-install-swift-compute.sh進行安裝
執行過程當中須要確認登陸controller節點和輸入controller節點root用戶密碼。
安裝Trove服務
執行腳本進行安裝
#Controller節點
執行腳本iaas-install-trove.sh進行安裝
需注意安裝Trove服務以前須要配置好網絡(flat或gre),建立好子網,並確認系統已經安裝swift和cinder兩個服務,不然安裝會失敗。
安裝Heat編配服務
# Controller節點
經過腳本安裝heat服務
#Controller節點
執行腳本iaas-install-heat.sh進行安裝
安裝Ceilometer監控服務
經過腳本安裝Ceilometer服務
#Controller節點
執行腳本iaas-install-ceilometer-controller.sh進行安裝
#Compute節點
執行腳本iaas-install-ceilometer-compute.sh進行安裝
經過腳本安裝alarm服務
#Controller節點
執行腳本iaas-install-alarm.sh進行安裝