您好,登錄后才能下訂單哦!
因工作需要接觸openstack(Mitaka),故搭建一個測試環境學習一下。
本文為安裝過程手順,根據開源社區安裝手冊編寫,安裝過程中碰到問題也參考了不少網上資料,感謝各路大神的文檔!
第一次部署,如有不對之處,還請大神留言指正!
本文適合第一次安裝部署的新手,不要認為openstack很高大上,遙不可及而心生畏懼!
好好看看開源社區的安裝手冊(https://docs.openstack.org/zh_CN/),一臺8G內存的筆記本電腦就可以讓你開始實驗了!
我的筆記本電腦配置較低:
ThinkPad 翼480 i5-8250U 8G內存 256G SSD+500G SSD(簡化版T480,心水T480啊!)
VM 15 開了兩個虛擬機
操作系統:CentOS 7.3 (1611)
控制節點:內存4G、硬盤100G(不要糾結硬盤大小,用不了那么多的,實際也就十幾GB而已!)
計算節點:內存2G、硬盤100G? ?--除控制服務外,其他服務均安裝在這個節點
網絡規劃:? VM給controller節點分配三塊網卡:
1、僅主機模式:111.111.111.0/24 --管理網絡
2、自定義VMnet2模式:192.168.111.0/24? --provider網絡
yum源地址:
?http://vault.centos.org/centos/7.3.1611/cloud/x86_64/openstack-mitaka? 869+1200common
?http://vault.centos.org/centos/7.3.1611/extras/x86_64? ? ? ? ? ? ? ?451
?http://vault.centos.org/centos/7.3.1611/virt/x86_64/kvm-common? ? 89
?http://vault.centos.org/centos/7.3.1611/storage/x86_64/ceph-hammer? ?71
?http://vault.centos.org/centos/7.3.1611/os/x86_64/Packages/
有幾個python包,是從https://pkgs.org/ 站點下載。
1、基礎環境準備
配置范圍:所有節點
1.1、配置host文件
111.111.111.201 controller
111.111.111.202 computer01
1.2、配置本地yum源
我已經將安裝包都下載到了本地,所以使用離線yum源安裝
同時將離線包所在目錄做成web站點,這樣計算節點可以直接配置http的yum源
1.3、安裝時間同步服務
安裝范圍:所有節點
1.3.1、安裝chrony包
# yum install chrony -y
1.3.2、啟動同步服務
# systemctl enable chronyd
# systemctl restart chronyd
# systemctl status chronyd
1.3.3、防火墻設置
第一次部署,關閉防火墻和selinux
1.3.4、配置Chrony
# vi /etc/chrony.conf
如上圖所示,將默認的server全部注釋掉,然后添加本機IP,在其他客戶機也是這樣配置
為了允許其他節點可以連接到控制節點的 chrony 后臺進程,在``/etc/chrony.conf`` 文件添加下面的鍵:
allow 111.111.111.0/24
啟動 NTP 服務并將其配置為隨系統啟動:
# systemctl enable chronyd.service
# systemctl start chronyd.service
1.4、安裝openstack最新的源
安裝范圍:所有節點
?yum install centos-release-openstack-mitaka
?yum install https://rdoproject.org/repos/rdo-release.rpm? ---本次操作不能執行這一步,否則新增的repo文件指向的是T版本的openstack
?yum upgrade (更新源)? ?--本步驟需要先移除預裝的mariadb的包,否則報錯 :yum remove mariadb-libs
?yum install python-openstackclient(安裝opentack必須的插件)
?yum install openstack-selinux(可選則安裝這個插件,我直接關閉了selinux,因為不熟,對后續不會有影響)
說明:如果使用自定義源,那么上面centos和redhat的操作可以省略
1.5、部署mariadb數據庫
控制節點:
安裝報錯,經查資料懷疑是自帶的Mariadb干擾了
如圖查到了自帶的mariadb包,全部移除
# yum remove mariadb* -y
yum install mariadb mariadb-server python2-PyMySQL -y
編輯:
vi /etc/my.cnf.d/openstack.cnf
[mysqld]
bind-address = 111.111.111.201
default-storage-engine = innodb
innodb_file_per_table
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
?
啟服務:
# systemctl enable mariadb
# systemctl start mariadb
# systemctl status mariadb
mysql_secure_installation
先是設置密碼,會提示先輸入密碼
Enter current password for root (enter for none):? <–初次運行直接回車
設置密碼 : P@ssw0rd
Set root password? [Y/n]? ?<– 是否設置root用戶密碼,輸入y并回車或直接回車
New password:? ?<– 設置root用戶的密碼
Re-enter new password:? ?<– 再輸入一次你設置的密碼
其他配置
Remove anonymous users? [Y/n]? ?<– 是否刪除匿名用戶,Y,回車
Disallow root login remotely? [Y/n]? ?<–是否禁止root遠程登錄,N,回車,
Remove test database and access to it? [Y/n]? ?<– 是否刪除test數據庫,n,回車
Reload privilege tables now? [Y/n]? ?<– 是否重新加載權限表,回車
初始化MariaDB完成
1.6、為Telemetry 服務部署MongoDB
控制節點:
# yum install mongodb-server mongodb -y
編輯:vi /etc/mongod.conf
bind_ip = 111.111.111.201
smallfiles = true
啟動服務:
# systemctl enable mongod
# systemctl start mongod
1.7、部署消息隊列rabbitmq
控制節點:
# yum install rabbitmq-server -y
?
啟動服務:
# systemctl enable rabbitmq-server
# systemctl start rabbitmq-server
新建rabbitmq用戶密碼:
# rabbitmqctl add_user openstack P@ssw0rd
刪除了guest用戶:
# rabbitmqctl delete_user guest
為新建的用戶openstack設定權限:
rabbitmqctl set_permissions openstack ".*" ".*" ".*"
啟動管理WEB
rabbitmq-plugins enable rabbitmq_management
(驗證方式:http://111.111.111.201:15672/ 用戶:openstack 密碼:P@ssw0rd)
但是登陸失敗如紅框所示:Login failed
為什么呢?因為不是管理員!!
rabbitmqctl set_user_tags openstack administrator
如下圖所示,將openstack用戶添加為管理員后就登陸成功了!
1.8、部署memcached緩存(為keystone服務緩存tokens)
控制節點:
# yum install memcached python-memcached -y
cat /etc/sysconfig/memcached
PORT="11211"
USER="memcached"
MAXCONN="10240"
CACHESIZE="64"
#OPTIONS="-l 127.0.0.1,::1"
OPTIONS="-l 0.0.0.0"
疑問:這一步在官方文檔里是不修改OPTIONS選項的,默認就是127.0.0.1那一行
啟動服務:
# systemctl enable memcached
# systemctl start memcached
基礎環境準備完畢!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。