天天看點

先電雲IaaS搭建(openstack)

首先看看IaaS的基本模式

先電雲IaaS搭建(openstack)

以上是IAAS平台的基本環境配置,這些服務配置将在接下來的内容了呈現

controller和compute兩節點都要打開

1.主機名的配置

controller:
	#hostnamectl set-hostname controller
	#bash

compute:
	#hostnamectl set-hostname compute
	#bash
           

2.配置映射檔案

controller和compute都要配置

	#vi /etc/hosts
           

進行如下配置:

先電雲IaaS搭建(openstack)

儲存退出

3.配置controller的yum源

首先配置controller的yum源

[[email protected] ~]#

#cd /etc/yum.repos.d/

#rm -rvf *

#vi ftp.repo	建立源檔案
           

配置内容如下:

先電雲IaaS搭建(openstack)

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的配置檔案)
           
先電雲IaaS搭建(openstack)

如上圖所示,在原文本中添加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
           
先電雲IaaS搭建(openstack)

照着上圖進行修改從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
           

出現如下圖的檔案内容:

先電雲IaaS搭建(openstack)

上圖是我已經修改過的(注意:該腳本檔案配置每一個環節都不能有錯,不然後面有些腳本會執行失敗!!!)

配置内容:
	
		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.

網絡–網絡–建立網絡

先電雲IaaS搭建(openstack)

點選建立網絡,我這裡已經建立好了

先電雲IaaS搭建(openstack)
先電雲IaaS搭建(openstack)
先電雲IaaS搭建(openstack)

點選已建立

18.

管理者–網絡–建立網絡

先電雲IaaS搭建(openstack)

送出

建立好後–點選網絡名稱中的ext

先電雲IaaS搭建(openstack)

子網–建立子網

先電雲IaaS搭建(openstack)

下一步

先電雲IaaS搭建(openstack)

已建立

19.

網絡–路由–建立路由

先電雲IaaS搭建(openstack)

點路由名稱route–接口–增加

先電雲IaaS搭建(openstack)

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.

在雲平台中–計算–雲主機–建立雲主機

先電雲IaaS搭建(openstack)
先電雲IaaS搭建(openstack)
先電雲IaaS搭建(openstack)
先電雲IaaS搭建(openstack)

啟動執行個體

綁定浮動IP–‘+’–配置設定IP–關聯

先電雲IaaS搭建(openstack)
先電雲IaaS搭建(openstack)

22.

計算–通路&安全–(defult)管理規則–删除原有的規則–添加規則

先電雲IaaS搭建(openstack)
先電雲IaaS搭建(openstack)

分别添加–所有ICMP,所有TCP,所有UDP–并且各自添加 出口 和 入口

先電雲IaaS搭建(openstack)

如上圖所示

此時可以通路之前建立好的雲主機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
(檢視上傳的鏡像)
           
先電雲IaaS搭建(openstack)

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
           
先電雲IaaS搭建(openstack)
#	ls /opt/iaas/images
           
先電雲IaaS搭建(openstack)

如上圖可以檢視到 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的平台搭建!!!

繼續閱讀