Centos7安裝部署openstack----基礎服務安裝


一、環境准備

  官網:https://docs.openstack.org/train/

  1、准備兩台centos系統服務器:controller:內存3G,cpu開啟虛擬化,IP:10.0.0.11

                  compute1: 內存1G,cpu開啟虛擬化(必開),IP:10.0.0.31

  2、host解析

[root@controller ~]# vim /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.0.0.11   controller
10.0.0.31   computer1
[root@controller ~]# scp -rp /etc/hosts 10.0.0.31 /etc/hosts

  3、配置yum源,掛載光盤鏡像。

[root@computer1 ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 is write-protected, mounting read-only
[root@controller ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 is write-protected, mounting read-only
#查看 (如果有內容代表掛載成功)
[root@computer1 ~]# ll /mnt
total 686
-rw-rw-r-- 1 root root     14 Nov 26  2018 CentOS_BuildTag
drwxr-xr-x 3 root root   2048 Nov 26  2018 EFI
-rw-rw-r-- 1 root root    227 Aug 30  2017 EULA
-rw-rw-r-- 1 root root  18009 Dec 10  2015 GPL
drwxr-xr-x 3 root root   2048 Nov 26  2018 images
drwxr-xr-x 2 root root   2048 Nov 26  2018 isolinux
drwxr-xr-x 2 root root   2048 Nov 26  2018 LiveOS
drwxrwxr-x 2 root root 663552 Nov 26  2018 Packages
drwxrwxr-x 2 root root   4096 Nov 26  2018 repodata
-rw-rw-r-- 1 root root   1690 Dec 10  2015 RPM-GPG-KEY-CentOS-7
-rw-rw-r-- 1 root root   1690 Dec 10  2015 RPM-GPG-KEY-CentOS-Testing-7
-r--r--r-- 1 root root   2883 Nov 26  2018 TRANS.TBL

  4、修改yum源,改為阿里雲的在線源

  地址:https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11ihv8TZ

[root@controller ~]# mkdir repo
[root@controller ~]# mv CentOS-* repo/
[root@controller ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
[root@controller ~]# vim /etc/yum.repos.d/local.repo
[local]
name=local
baseurl=file:///mnt
gpgcheck=0

[root@controller
~]# echo 'mount /dev/cdrom /mnt' >>/etc/rc.local [root@controller ~]# chmod +x /etc/rc.d/rc.local [root@controller ~]# scp -rp /etc/yum.repos.d/local.repo 10.0.0.31:/etc/yum.repos.d/local.repo
[root@computer1 ~]# vim /etc/yum.repos.d/local.repo
[root@computer1 ~]# echo 'mount /dev/cdrom /mnt' >>/etc/rc.local
[root@computer1 ~]# chmod +x /etc/rc.d/rc.local

[root@controller yum.repos.d]# yum makecache
[root@controller yum.repos.d]# yum list|grep openstack
[root@controller yum.repos.d]#yum install centos-release-openstack-queens.noarch -y

二、安裝基礎服務chrony

  1、安裝服務

[root@controller]# yum install -y chrony
[root@computer1]#  yum install -y chrony

  2、編輯控制節點配置文件

[root@controller ]# vim /etc/chrony.conf 
1)將 server
1.centos.pool.ntp.org iburst 改成 server ntp6.aliyun.com iburst 另三行刪掉
2)將 #allow 192.168.0.0/1改成 allow 10.0.0.0/24
3)[root@
controller ]# systemctl restart chronyd 並重啟服務
[root@controller ]# systemctl enable chronyd 加入開機自啟

  3、編輯計算節點配置文件

[root@computer1 opt]# vim /etc/chrony.conf 

1)將 server
1.centos.pool.ntp.org iburst 改成 server 10.0.0.11 iburst 另三行刪掉
3)[root@computer1 ]# systemctl restart chronyd      並重啟服務
[root@computer1 ]# systemctl enable chronyd 加入開機自啟
[root@controller yum.repos.d]# chronyc sources 驗證是否同步
4)
設置當前系統為Asia/Shanghai上海時區:
timedatectl set-timezone Asia/Shanghai
5
)設置完時區后,強制同步下系統時鍾:
chronyc -a makestep

三、安裝openstack客戶端和openstack-selinux,所有節點都執行

[root@control ~]# yum install python-openstackclient openstack-selinux -y 
[root@computer1 ~]# yum install python-openstackclient openstack-selinux -y

四、控制節點安裝數據庫以及安全初始化

  官方文檔:https://docs.openstack.org/mitaka/zh_CN/install-guide-obs/environment-sql-database.html

[root@controller ~]# yum install mariadb mariadb-server python2-PyMySQL -y

  創建並編輯 /etc/my.cnf.d/openstack.cnf

[root@control ~]# cat /etc/my.cnf.d/openstack.cnf
[mysqld]
bind-address = 10.0.0.11                # 值為控制節點的管理網絡IP地址以使得其它節點可以通過管理網絡訪問數據庫
default-storage-engine = innodb         #默認存儲引擎
innodb_file_per_table = no                   #為每個表獨立表空間文件     
max_connections = 4096                  #最大連接數
collation-server = utf8_general_ci       #默認字符集
character-set-server = utf8 

[root@controller ~]# systemctl start mariadb 啟動數據庫
[root@controller ~]# systemctl enable mariadb 加入開機自啟動
[root@controller ~]# mysql_secure_installation 為了保證數據庫服務的安全性,數據庫安全初始化,一定要執行要不然后面時間同步會有坑
回車 #需要輸入當前root用戶的密碼,這里我們是空,就直接回車就可以了
Enter current password for root (enter for none): #設置數據庫的密碼 ,這里我不想設置 選擇n
Set root password? [Y/n] #移除地址用戶 選擇Y
Remove anonymous users? [Y/n] Y #禁止root遠程登錄 選擇Y
Disallow root login remotely? [Y/n] Y #移除data的數據庫和訪問他的權限 選擇 y
Remove test database and access to it? [Y/n] y #重載權限表 選擇 y
Reload privilege tables now? [Y/n] y

五、NoSQL 數據庫,用於計費用的,私有雲可以不用安裝

  1.配置MongoDB的yum源

vim /etc/yum.repos.d/mongodb-org-4.0.repo
#添加以下內容:
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=0
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc

#這里可以修改 gpgcheck=0, 省去gpg驗證
[root@controller ~]# yum makecache

  2、安裝MongoDB

yum -y install mongodb-org
whereis mongod

  3、查看修改配置文件

vim /etc/mongod.conf

  4、啟動服務

systemctl start mongod.service             啟動
systemctl stop mongod.service              停止
systemctl status mongod.service            查看狀態
systemctl enable mongod.service            加入自啟

  5、啟動Mongo shell

mongo
show dbs            查看數據庫
use tesataa 使用數據庫
db.createUser({user:"useraa",pwd:"123456",roles:[{role:"dbOwner",db:"tesataa"}]}) 為單個數據庫添加用戶(用戶名為useraa,密碼為123456)

  6、設置mongodb遠程訪問,編輯mongod.conf注釋bindIp,並重啟mongodb.(這句配置代表只能本機使用,所以需注釋) 或者 設置為 0.0.0.0

vim /etc/mongod.conf

# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0
systemctl restart mongod.service        重啟服務

六、安裝消息隊列rabbitmq服務

OpenStack 使用 message queue 協調操作和各服務的狀態信息。消息隊列服務一般運行在控制節點上。OpenStack支持好幾種消息隊列服務包括 RabbitMQ, Qpid, 和 ZeroMQ。不過,大多數發行版本的OpenStack包支持特定的消息隊列服務。本指南安裝 RabbitMQ 消息隊列服務,因為大部分發行版本都支持它。如果你想安裝不同的消息隊列服務,查詢與之相關的文檔。 就是把所有功能拆成 獨立的服務,服務跟服務之間就涉及到調用的問題,這時就要通過消息隊列進行(類似一個中介)

[root@controller ~]# yum  install rabbitmq-server -y                    安裝服務
[root@controller ~]# systemctl enable rabbitmq-server.service           將其配置為隨系統啟動
[root@controller ~]# systemctl start rabbitmq-server.service 啟動消息隊列服務

  1、添加用戶,設置密碼,具體創建用戶,設置密碼,建議按照官方文檔執行。

  文檔地址:https://docs.openstack.org/mitaka/zh_CN/install-guide-obs/environment-security.html

[root@controller ~]# rabbitmqctl add_user openstack RABBIT_PASS 
Creating user "openstack" ...

  2、授權

[root@controller ~]# rabbitmqctl set_permissions openstack ".*" ".*" ".*"            給openstack用戶配置寫和讀權限 
Setting permissions for user "openstack" in vhost "/" ...

  3、查看端口,驗證服務

[root@controller ~]# netstat -lntup |grep 5672
tcp        0      0 0.0.0.0:25672           0.0.0.0:*               LISTEN      10118/beam          
tcp6       0      0 :::5672                 :::*                    LISTEN      10118/beam  

  4、啟動管理界面(插件)

[root@controller ~]# rabbitmq-plugins enable rabbitmq_management

  5、查看端口發現多一個15672

[root@controller ~]# netstat -lntup |grep 5672
tcp        0      0 0.0.0.0:25672           0.0.0.0:*               LISTEN      10118/beam          
tcp        0      0 0.0.0.0:15672           0.0.0.0:*               LISTEN      10118/beam          
tcp6       0      0 :::5672                 :::*                    LISTEN      10118/beam 

  6、web頁面登錄:http://10.0.0.11:15672/ ,賬號:guest ,密碼:guest

  

 

 六、安裝Memcached

  認證服務認證緩存使用Memcached緩存令牌。緩存服務memecached運行在控制節點。在生產部署中,我們推薦聯合啟用防火牆、認證和加密保證它的安全。

  1、安裝軟件

[root@controller ~]# yum  install memcached python-python-memcached -y

  2、修改配置文件 這一條在M版本的官方文檔沒有,但在o 版本的有

[root@control ~]# sed -i 's#127.0.0.1#10.0.0.11#g' /etc/sysconfig/memcached                   不改,就只能本機訪問

  3、啟動Memcached服務,並且配置它隨機啟動

[root@controller ~]# systemctl enable memcached.service
[root@controller ~]# systemctl start memcached.service

  4、驗證服務,查看端口號

[root@controller ~]# netstat -lntup |grep 11211
tcp        0      0 10.0.0.11:11211         0.0.0.0:*               LISTEN      11095/memcached     
tcp6       0      0 ::1:11211               :::*                    LISTEN      11095/memcached     
udp        0      0 10.0.0.11:11211         0.0.0.0:*                           11095/memcached     
udp6       0      0 ::1:11211               :::*                                11095/memcached 

到這里基礎服務已經安裝完成!

 

  

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM