安裝前的准備
修改源 (可跳過)
將下載源變更到國內可以時下載速度大大提升
打開下面的文件
vim /etc/yum.repos.d/CentOS-Base.repo
將原來的注釋掉改成:
[base]
name=CentOS-$releasever - Base
baseurl=https://mirrors.ustc.edu.cn/centos/$releasever/os/$basearch/
gpgcheck=0
[updates]
name=CentOS-$releasever - Updates
baseurl=https://mirrors.ustc.edu.cn/centos/$releasever/updates/$basearch/
gpgcheck=0
[extras]
name=CentOS-$releasever - Extras
baseurl=https://mirrors.ustc.edu.cn/centos/$releasever/extras/$basearch/
gpgcheck=0
修改之后更新緩存
yum makecache
安裝 git
yum install git
獲取 devstack
將 devstack clone 到 /home/devstack
下
git clone https://github.com/openstack-dev/devstack.git /home/devstack
切換分支
如果需要使用特定版本需要 切換分支,建議使用穩定版本
git branch # 查看本地分支
git branch -a # 查看在線分支
git checkout stable/rocky # 切換分支
開始安裝
創建 Stack 用戶
使用 devstack 提供的工具創建一個 stack 用戶
cd /home/devstack/tools/
./create-stack-user.sh
給用戶 stack 賦予權限
chown -R stack:stack /home/devstack
chmod 777 /opt/stack -R
echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack
切換至 stack 用戶
su stack
配置文件
在 /home/devstack/samples/
中有 local.conf
的示例,可以根據自己的需求修改后放到 /home/devstack/
下
我的 all in one
配置文件
/home/devstack/local.conf:
[[local|localrc]]
ADMIN_PASSWORD=nomoresecret
DATABASE_PASSWORD=stackdb
RABBIT_PASSWORD=stackqueue
SERVICE_PASSWORD=$ADMIN_PASSWORD
# use TryStack git mirror
GIT_BASE=http://git.trystack.cn
NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
SPICE_REPO=http://git.trystack.cn/git/spice/spice-html5.git
# only support IP v4
SERVICE_IP_VERSION=4
# Branches
KEYSTONE_BRANCH=stable/rocky
NOVA_BRANCH=stable/rocky
NEUTRON_BRANCH=stable/rocky
SWIFT_BRANCH=stable/rocky
GLANCE_BRANCH=stable/rocky
CINDER_BRANCH=stable/rocky
git clone http://git.trystack.cn/openstack-dev/devstack -b stable/rocky
LOGFILE=$DEST/logs/stack.sh.log
若禁用tempest服務,則加disabled
disable_service tempest
# Enabling Neutron (network) Service
disable_service n-net
enable_service q-svc
enable_service q-agt
enable_service q-dhcp
enable_service q-l3
enable_service q-meta
enable_service q-metering
enable_service neutron
LOGDAYS=2
SWIFT_HASH=66a3d6b56c1f479c8b4e70ab5c2000f5
SWIFT_REPLICAS=1
SWIFT_DATA_DIR=$DEST/data
執行安裝
修改好配置文件后就可以開始安裝了
cd /home/devstack
./stack.sh
安裝結束
剩下的就是漫長的等待,安裝步驟結束並不代表安裝成功,可能會出各種各樣的問題,需要不停去調試,有時只是連接超時,重新執行安裝命令就可以了
安裝成功后會顯示:
This is your host IP address: 192.168.1.11
This is your host IPv6 address: ::1
Horizon is now available at http://192.168.1.11/dashboard
Keystone is serving at http://192.168.1.11/identity/
The default users are: admin and demo
The password: nomoresecret
啟動服務
連通網絡
關閉防火牆
systemctl stop firewalld.service
systemctl disable firewalld.service
設置 iptables
sudo iptables -I INPUT 1 -j ACCEPT
查看 ipv4 80 端口是否被監聽
netstat -ntlp
登陸
訪問安裝成功后返回的網址,用戶名為 admin
,密碼為配置文件 (local.conf) 中的 ADMIN_PASSWORD
登陸成功后就可以看到 OpenStack 的 Horizon 界面了