首先看看IaaS的基本模式
以上是IAAS平台的基本環境配置,這些服務配置将在接下來的内容了呈現
controller和compute兩節點都要打開
1.主機名的配置
controller:
#hostnamectl set-hostname controller
#bash
compute:
#hostnamectl set-hostname compute
#bash
2.配置映射檔案
controller和compute都要配置
#vi /etc/hosts
進行如下配置:
儲存退出
3.配置controller的yum源
首先配置controller的yum源
[[email protected] ~]#
#cd /etc/yum.repos.d/
#rm -rvf *
#vi ftp.repo 建立源檔案
配置内容如下:
compute的yum源先不急着配
4.挂載iso檔案(上一篇上傳鏡像後,才能繼續進行接下來的IAAS搭建)
在上一篇中提到一個小鏡像cirros-0.3.4-x86_64-disk.img,此時也可以進行下一步,對電腦組態自信的可以忽略,
[[email protected] ~]#
#cd
#cd /opt/
#mkdir {centos,iaas} (在/opt 目錄下建立兩個檔案夾,用來挂載接下來的兩個鏡像檔案)
#mkdir cirros (此處選做)
#cd
#mount -o loop CentOS-7-x86_64-DVD-1511.iso /opt/centos/ (上傳Centos的鏡像到centos檔案夾下)
#mount -o loop XianDian-IaaS-v2.2.iso /opt/iaas/ (此處和上面同理)
#mount -o loop cirros-0.3.4-x86_64-disk.img /opt/cirros/ (選做)
挂載成功會出現read-only等字樣
#yum clean all (清除緩存)
#yum list (驗證yum源)
5.搭建ftp伺服器,開啟并設定自啟
[[email protected] ~]#
#yum install -y vsftpd (搭建ftp伺服器)
#vi /etc/vsftpd/vsftpd.conf (修改ftp的配置檔案)
如上圖所示,在原文本中添加anon_root=/opt/
儲存退出
#systemctl restart vsftpd (重新開機ftp服務)
#systemctl enable vsftpd (設定開機自啟)
6.關閉防火牆并設定開機不自啟
controller和compute都要做:
#setenforce 0
#getenforce (出現Permissive則表示防火牆的安全級别已經降低了)
這種方式時臨時的,如果重新開機了虛拟機,需要再執行一次
#systemctl stop firewalld (關閉防火牆)
#systemctl disable firewalld (設定防火牆開機不自啟)
7.配置compute的yum源
先前已經配好了controller的yum源,這裡隻要用scp傳過來,進行一些修改即可
[[email protected] ~]#
#cd /etc/yum.reops.d/
#rm -rvf *
#scp 192.168.100.10://etc/yum.repos.d/* .
出現(yes/no)和password就依次填寫yes和000000,後面還會遇到幾次,也是同樣的方法
#cd /etc/yum.repos.d/
#vi ftp.repo
照着上圖進行修改從controller傳來的ftp.repo檔案内容即可
接着順便清除緩存和驗證compute的yum源
#cd
#yum clean all
#yum list
這些都做好後進行下一步操作
8.編輯controller和compute的環境變量
#yum install -y iaas-xiandian
接下來是編輯檔案/etc/xiandian/openrc.sh,此檔案是安裝過程中的各項參數,根據每項參數上一行的說明及伺服器實際情況進行配置。
首先編輯controller的openrc.sh腳本檔案
[[email protected] ~]#
#vi /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=enp0s8(外網網卡名,第一篇文章有提到)
CINDER_DBPASS=000000
CINDER_PASS=000000
TROVE_DBPASS=000000
TROVE_PASS=000000
BLOCK_DISK=sdb1(空白分區名,第一篇文章裡有提到)
SWIFT_PASS=000000
OBJECT_DISK=sdb2(空白分區名)
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
(注意要去掉前面的‘#’)
儲存,退出
至此,controller的openrc.sh配置好了,接下來傳給compute的就可以了
[[email protected] ~]#
#scp /etc/xiandian/openrc.sh 192.168.100.20://etc/xiandian/openrc.sh
輸入:yes--輸入:000000
此時兩個節點的openrc.sh都配好了,建議都進行一下接下來的指令:
controller和compute
#source /etc/xiandian/openrc.sh
接下來就是進入腳本跑酷環節!!!
9.通過腳本安裝服務
(内容包括:安裝Openstack包,配置域名解析,配置防火牆和Selinux,安裝ntp服務)
controller和compute:
#iaas-pre-host.sh
安裝完成後會提示重新開機。因為我們在本篇内容第一步修改了主機名,是以不需要重新開機
10.通過腳本安裝Mysql服務
(内容包括:安裝Mysql資料庫服務,安裝Mongo資料庫服務,安裝RabbitMQ服務,安裝memcahce)
[[email protected] ~]#
#iaas-install-mysql.sh
11.通過腳本安裝keystone認證服務
(内容包括:安裝keystone服務軟體包,建立Keystone資料庫,配置資料庫連接配接,為keystone服務建立資料庫表,建立令牌,建立簽名密鑰和證書,定義使用者、租戶和角色,建立admin-openrc.sh)
[[email protected] ~]#
#iaas-install-keystone.sh
12.通過腳本安裝glance服務
(内容包括:安裝Glance鏡像服務軟體包,建立Glance資料庫,配置檔案建立資料庫連接配接,為鏡像服務建立資料庫表,建立使用者,配置鏡像服務,建立Endpoint和API端點,啟動服務,上傳鏡像)
[[email protected] ~]#
#iaas-install-glance.sh
13.通過腳本Nova計算服務
(内容包括:安裝Nova 計算服務軟體包,建立Nova資料庫,建立計算服務表,建立使用者,配置計算服務,建立Endpoint和API端點 ,啟動服務,驗證Nova,安裝Nova計算服務軟體包,配置Nova服務,檢查系統處理器是否支援虛拟機的硬體加速,啟動,清除防火牆)
controller和compute同時:
[[email protected] ~]#
#iaas-install-nova-controller.sh
[[email protected] ~]#
#iaas-install-nova-compute.sh
14.通過腳本安裝neutron服務
(内容包括:建立Neutron資料庫,建立使用者,建立Endpoint和API端點 ,安裝neutron網絡服務軟體包,配置Neutron服務,編輯核心,建立資料庫,啟動服務和建立網橋,安裝軟體包,配置Neutron服務,編輯核心,啟動服務進而建立網橋)
controller和compute同時:
[[email protected] ~]#
#iaas-install-neutron-controller.sh
[[email protected] ~]#
#iaas-install-neutron-compute.sh
接下來就是網絡模式的選擇
[[email protected] ~]#
#iaas-install-neutron-controller- (按兩次‘Tab’)
可以看見:
iaas-install-neutron-controller-flat.sh
iaas-install-neutron-controller-gre.sh
iaas-install-neutron-controller-vlan.sh
我們選擇安裝gre.sh
15.選擇Neutron網絡模式
controller和compute同時:
[[email protected] ~]#
iaas-install-neutron-controller-gre.sh
[[email protected] ~]#
iaas-install-neutron-compute-gre.sh
16.通過腳本安裝dashboard服務
(内容包括:安裝Dashboard服務軟體包,配置,啟動服務)
[[email protected] ~]#
#iaas-install-dashboard.sh
此時可以通過浏覽器網址欄輸入http://192.168.100.10/dashboard進入先電雲計算平台
域:demo
使用者名:admin
密碼:000000
17.
網絡–網絡–建立網絡
點選建立網絡,我這裡已經建立好了
點選已建立
18.
管理者–網絡–建立網絡
送出
建立好後–點選網絡名稱中的ext
子網–建立子網
下一步
已建立
19.
網絡–路由–建立路由
點路由名稱route–接口–增加
20.安裝cinder之前做個準備工作
[[email protected] ~]#
#source /etc/keystone/admin-openrc.sh
# glance image-create --name centos7 --disk-format qcow2 --container-format bare --progress < /opt/iaas/images/CentOS_7.2_x86_64_XD.qcow2
(此處将CentOS的鏡像上傳,下一步可以一次在平台上建立一個虛拟機,做測試)
上一篇文章介紹了如何用secureCRTP上傳鏡像,其中補充了一個小鏡像也可以用上面一樣的指令上傳到先電平台
# glance image-create --name cirros --disk-format qcow2 --container-format bare --progress < /opt/iaas/images/cirros-0.3.4-x86_64-disk.img
21.
在雲平台中–計算–雲主機–建立雲主機
啟動執行個體
綁定浮動IP–‘+’–配置設定IP–關聯
22.
計算–通路&安全–(defult)管理規則–删除原有的規則–添加規則
分别添加–所有ICMP,所有TCP,所有UDP–并且各自添加 出口 和 入口
如上圖所示
此時可以通路之前建立好的雲主機123了,啟動雲主機後,可以直接在CRT上連接配接
好,繼續腳本跑酷!!!
23.通過腳本安裝Cinder服務
controller和compute同時:
(内容包括:安裝Cinder塊存儲服務軟體包,建立資料庫,建立使用者,建立Endpoint和API端點 ,配置Cinder服務,建立資料庫,啟動服務,安裝塊存儲軟體,建立LVM實體和邏輯卷,修改Cinder配置檔案,重新開機服務,驗證)
[[email protected] ~]#
#iaas-install-cinder-controller.sh
[[email protected] ~]#
#iaas-install-cinder-compute.sh
完成後接着還有一步:
[[email protected] ~]#
#source /etc/keystone/admin-openrc.sh
24.通過腳本安裝Swift服務
controller和compute同時:
(内容包括:建立使用者,建立Endpoint和API端點 ,編輯/etc/swift/proxy-server.conf,建立賬号、容器、對象,編輯/etc/swift/swift.conf,啟動服務和賦予權限,安裝軟體包,配置rsync,配置賬号、容器和對象,修改Swift配置檔案,重新開機服務和賦予權限)
[[email protected] ~]#
#iaas-install-swift-controller.sh
[[email protected] ~]#
#iaas-install-swift-compute.sh
25.通過腳本安裝Trove服務
(内容包括:安裝Trove資料庫服務的軟體包,建立資料庫,建立使用者,建立Endpoint和API端點 ,配置trove.conf檔案,配置trove-taskmanager.conf,配置trove-conductor.conf檔案,配置trove-guestagent.conf,同步資料庫,啟動服務)
需注意安裝Trove服務之前需要配置好網絡(flat或gre),建立好子網,并确認系統已經安裝swift和cinder兩個服務,否則安裝會失敗。
[[email protected] ~]#
#iaas-install-trove.sh
26.
[[email protected] ~]#
#cat /usr/local/bin/iaas-install-trove.sh
(檢視上傳的鏡像)
27.上傳鏡像
将提供的MySQL_5.6_xiandian.qcow2 上傳到系統内
[[email protected] ~]#
#glance image-create --name "mysql-5.6" --disk-format qcow2 --container-format bare --progress < MySQL_5.6_XD.qcow2
# ls /opt/iaas/images
如上圖可以檢視到 MySQL_5.6_XD.qcow2 已經成功上傳
28.建立資料庫存儲
[[email protected] ~]#
# trove-manage datastore_update mysql ''
29.使用上傳的鏡像更新資料庫
[[email protected] ~]#
# trove-manage datastore_version_update mysql mysql-5.6 mysql ${Glance_Image_ID} '' 1
将其中${Glance_Image_ID} 改為26節第一張圖裡面的ID後面的字元串
# trove create mysql-1 ${FLAVOR_ID} --size 5 --databases myDB --users user:r00tme --datastore_version mysql-5.6 --datastore
mysql
将其中${FLAVOR_ID}改為2
建立完成後查詢trove清單
[[email protected] ~]#
#trove list
30.通過腳本安裝heat服務
(内容包括:安裝heat編配服務軟體包,建立資料庫,建立使用者,建立Endpoint和API端點 ,配置Heat服務,建立資料庫,啟動服務)
[[email protected] ~]#
#iaas-install-heat.sh
31.nginx模闆
nginx模闆檔案存放在/etc/xiandian/目錄下,在使用模闆之前需成功安裝,ceilometer監控服務以及alarm監控服務。
[[email protected] ~]#
#ls /etc/xiandian/
可以檢視nginx模闆
建構一台http伺服器,将lb-server.yaml模闆檔案上傳至http伺服器中。
32.通過腳本安裝Ceilometer服務
(内容包括:安裝Ceilometer監控服務軟體包,建立資料庫,建立使用者,建立Endpoint和API端點 ,配置Ceilometer,啟動服務,監控元件,安裝軟體包,配置Ceilometer)
controller和compute同時:
[[email protected] ~]#
#iaas-install-ceilometer-controller.sh
[[email protected] ~]#
#iaas-install-ceilometer-compute.sh
33.通過腳本安裝alarm服務
(内容包括:建立資料庫,建立keystone使用者,建立Endpoint和API,安裝軟體包,配置aodh,同步資料庫,啟動服務)
[[email protected] ~]#
#iaas-install-alarm.sh
至此,IAAS平台搭建完成!!!
請看下一篇PAAS的平台搭建!!!