伺服器準備
準備兩臺或多臺的雙網絡卡服務,注意一定是雙網絡卡。否則不能安裝
主機名
IP
配置
OpenStack1
enp0s3:192。168。3。203
enp0s8
4C8G
OpenStack2
enp0s3:192。168。3。203
enp0s8
4C8G
環境準備
注意:每臺伺服器都需要安裝
安裝docker環境
Docker的安裝在此就不做過多解釋,如果需要請參考:Linux安裝Docker教程
每臺伺服器都需要安裝Docker,並啟動
安裝python3環境
下載
https://registry。npmmirror。com/-/binary/python/3。9。13/Python-3。9。13。tgz
解壓
tar -zxvf Python-3。9。13。tgz
安裝
首先進入Python3。9。13/Modules/Setup檔案中取消SSL的註釋,否則在後面會報錯
vim Python3。9。13/Modules/Setup
生成makefile檔案,並指定安裝目錄
cd Python-3。9。13。/configure ——prefix=/usr/local/python39
安裝是需要gcc和make,如果未安裝請安裝,已安裝請忽略
make clean && make install
配置
修改環境變數。
檔案末尾追加:
PATH=${PATH}:/usr/local/python39/bin/
vim /etc/profilesource /etc/profile
驗證
關閉防火牆
關閉防火牆
systemctl status firewalldsystemctl stop firewalld systemctl disable firewalldsystemctl status firewalld
關閉selinux
getenforcesetenforce 0sed -i ‘s/enforcing/disabled/g’ /etc/selinux/config getenforce
修改主機名
hostnamectl set-hostname OpenStack
新增hosts
192。168。3。204 OpenStack1192。168。3。205 OpenStack2
安裝軟體
下載 epel 源
yum -y install epel-release
安裝 ansible 和 kolla-ansible
修改pip的源,加速下載
mkdir ~/。pipvi ~/。pip/pip。conf# 新增內容如下[global]index-url = https://pypi。tuna。tsinghua。edu。cn/simple
pip3 install ——upgrade setuptoolspip3 install ansible==5。9。0pip3 install kolla-ansible
配置
只需要在控制節點上配置即可
複製 ansible 的相關配置
cp -r /usr/local/python39/share/kolla-ansible/etc_examples/kolla /etc/ cp /usr/local/python39/share/kolla-ansible/ansible/inventory/* /etc/kolla/
生成OpenStack服務密碼檔案,並修改admin密碼
kolla-genpwdvim /etc/kolla/passwords。yml
自定義OpenStack中的部署項
編輯
/etc/kolla/global。yml
#選擇下載的基礎映象kolla_base_distro: “centos”#選擇的安裝方法,2選1。binary二進位制安裝,source原始碼安裝kolla_install_type: “source”#選擇OpenStack的版本標籤,openstack_release: “yoga”#OpenStack內部管理網路地址,透過該IP訪問OpenStack Web頁面進行管理。如果啟用了高可用,需要設定為VIP(浮動IP)kolla_internal_vip_address: “192。168。199。171”#OpenStack內部管理網路地址的網絡卡介面network_interface: “enp0s3”#此網絡卡應該在沒有IP地址的情況下處於活動,如果不是,那麼OpenStack雲平臺中的雲主機例項將無法訪問外部網路。(存在IP時br-ex橋接就不成功)neutron_external_interface: “enp0s8”#關閉高可用enable_haproxy: “no”#關閉cinder(塊儲存)enable_cinder: “no”#指定nova-compute守護程序使用的虛擬化技術。(kvm好像有點問題,大家可以試試,看看你們能不能過nova下載)nova-compute是一個非常重要的守護程序,負責建立和終止虛擬機器例項,即管理虛擬機器例項的生命週期。nova_compute_virt_type: “qemu” #在物理機上部署時無需設定(預設kvm) ,僅在虛擬機器中部署kolla-ansible-openstack時設定qemu
互信任
新增信任是為了免密登入。如果不不能免密登入在下載映象時會報錯,無法把映象下載到其他伺服器中
ssh-keygen -t rsa # 一路回車即可,都是用預設的,如果需要設定密碼請在顯示密碼後輸入密碼。ssh-copy-id -i ~/。ssh/id_rsa root@OpenStack1ssh-copy-id -i ~/。ssh/id_rsa root@OpenStack2
驗證
是用ssh 密碼登入OpenStack2服務中,如果沒有出現輸入密碼則說明已經互信任了。
ssh OpenStack2
配置節點清單
all-in-one:OpenStack單節點的配置清單,如果是一個伺服器則配置這個檔案即可
globals。yml:OpenStack配置項
multinode:OpenStack多節點的配置清單,我們此次就是修改這個清單
passwords。yml:OpenStack各服務的密碼。web介面的登入也是在這裡修改。
vim /etc/kolla/multinode
只需要修改標記出來的這一部分即可,後面的都是預設。這些主機名必須可以從部署主機中解析
control:控制節點
network:網路節點
compute:計算節點
monitoring:監控節點
storage:儲存節點
deployment:部署節點
安裝 Ansible Galaxy 依賴
yum install git -ycp /usr/local/python39/share/kolla-ansible/requirements。yml /usr/local/python39/kolla-ansible install-deps
部署
先把系統的python替換成我們下載好的python3。9版本,否則後面執行會報錯。但是替換python後無法使用yum命令,這個問題暫時未解決。
注意:這裡的命令是每臺伺服器都需要執行
cp -r /usr/local/python39/share/kolla-ansible/ansible /usr/local/python39/# 刪除系統原先的 platform-python ,新建立軟連結,換成自己安裝的pythonrm -rf /usr/libexec/platform-pythonln -s /usr/local/python39/bin/python3 /usr/libexec/platform-python# 安裝 docker 包pip3 install docker
預檢查
kolla-ansible -i /etc/kolla/multinode prechecks
在檢查過程中沒有錯誤即可,如果有錯誤根據操作提示進行修改即可
拉取映象
kolla-ansible -i /etc/kolla/multinode pull
拉取映象的過程時間有點長。可以過一段時間再來檢視。拉取完成後會有結果,和上面的預檢查一樣
部署
kolla-ansible -i /etc/kolla/multinode deploy
驗證
相關文章
kolla 搭建 openstack 單機版雲環境:325。【openstack】kolla 搭建 openstack 單機版雲環境 - 簡書