opesntack tranning labs提供了一種在桌面環境中部署虛擬化OpenStack的簡便方法。Training Labs支持全部現代Linux,Windows和macOS平臺。在運行Training Labs以前,您須要安裝VirtualBox或KVM / libvirt。將壓縮文件解壓縮到一個文件夾,並準備一鍵部署您本身的OpenStack Training Labs羣集。python
下載地址:https://docs.openstack.org/training_labs/shell
說明文檔:https://wiki.openstack.org/wiki/Documentation/training-labs#Building_the_clusterubuntu
安裝準備vim
安裝和測試方法,參考華爲《HCIP-Cloud_Computing-OpenStack_V1.0_實驗手冊》windows
測試方法,使用x86服務器,服務器品牌爲二手HP,硬盤500G,4路CPU,40G內存,單千兆網卡,地址爲172.31.208.31/24。安裝unbuntu18.04LTS,使用virtualbox5.2,openstack-labs版本爲Stein,如下爲推薦的實驗環境瀏覽器
組網說明bash
實驗環境在服務器上安裝 ubuntu操做系統,並在ubuntu上安裝virtualBox軟件,經過openstack自動化安裝腳本在 virtualbox中部署openstack實驗環境,包括一個controller節點和一個compute節點服務器
ubuntu配置網絡
在完成ubuntu18操做使用圖形化界面的(gnome)系統安裝後,咱們須要進更新軟件源和開啓遠程桌面登錄的配置session
默認ubuntu沒有root密碼,同時沒有SSH服務等,默認是不容許root用戶進行ssh登錄。都須要自行配置
sudo passwd #建立root密碼 sudo apt-get install openssh-server # 安裝ssh服務 sudo systemctl start ssh #開啓SSH sudo systemctl enble ssh sudo systemctl stop ufw #關閉防火牆 sudo systemcll disable ufw
爲了加快軟件下載,須要配置國內軟件源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak #備份軟件源 sudo gedit /etc/sources.list #編輯
在文件最前面添加
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
保存後,更新系統
sudo apt-get update sudo apt-get upgrade
耐心等待更新完畢
接下來,使用xrdp開啓遠程登錄。
sudo apt install xrdp
編輯配置文件
sudo vim /etc/xrdp/startwm.sh
把最下面的test和exec兩行註釋掉,添加一行
gnome-session
而後再ubuntu設置開啓共享
配置屏幕共享
配置完成後,重啓ubuntu。而後就可使用windows 遠程桌面登錄
以下所示:
而後配置virtualbox
推薦直接使用unbuntu的gnome軟件商店搜索下載
下載完畢後確認是否安裝
sudo dpkg-query -l virtualbox
安裝opesntack-labs
經過運行openstack自動化安裝腳本,在virtualbox中完成openstack安裝。
openstack的controller節點和compute節點均爲ubuntu操做系統(腳本安裝過程當中,會自動下拉Ubuntu操做系統鏡像文件,併爲ubuntu自動建立兩個虛擬機網卡
vboxnet0:10.0.0.1/24
vboxnet1:203.0.113.1/24
流程以下:
首先,下載openstack,訪問https://docs.openstack.org/training_labs/
下載完畢後,保存到桌面
而後解壓
sudo tar -xvf labs-master.tgz
解壓後,目錄結構以下所示:
爲了不openstack環境資不足,打開配置文件config.compute1,按照以下修改
sudo cd labs sudo vim labs/config/config.compute1
而後安裝python
sudo apt install python
完成後,進入/labs目錄,運行st.py腳本
cd labs ./st.py -b cluster
若是安裝過程當中出現報錯,先嚐試再運行一次腳本,若仍是出現問題,能夠在/labs/log下查看相應的日誌文件,排除問題後,再一次運行腳本
等待系統自動在virtualbox中安裝openstack,此過程大概須要3個小時左右。直到出現以下信息,表明安裝成功
出現的結果表明了實驗環境的默認登錄信息。
碰到的問題
在安裝的過程當中,會卡「ERROR vm_ssh:Aborting",以下所示:
查詢了下官網文檔,https://wiki.openstack.org/wiki/Documentation/training-labs#Building_the_cluster,下面有相關使用virtualbox構建集羣的說明
大意是控制節點和計算節點在virtualbox使用ssh協議的tcp2230和2232進行通信,我懷疑是ssh協議登錄沒有獲取到對方的密鑰所致。
因此我嘗試瞭如下
ssh -p 2230 osbash@localhost #密碼osbash
而後再次運行openstack安裝腳本,竟然就沒有卡在這裏。問題解決了
真神奇
更新:
後來在部署的時候反覆出現計算節點compute1沒法安裝成功後來查詢到,這是一個bug,具體緣由未知。後來在國外論壇上查到相關的bug描述,帖子地址以下:
https://bugs.launchpad.net/labs/+bug/1803819
我總結了如下,和查詢了一些 stackoverflow文檔,這個大概是python2的subproccess模塊在調用shell命令出現的bug,現象就是使用ssh命令後會拋出異常,有必定的出現概率
我採用用下面的方法
即手動上傳SSH密鑰和相關配置文件到controller和compute節點
作法是:
在第一次部署失敗後,在從新運行安裝腳本的時候手動從宿主機使用ssh分別上傳到controller和compute節點
ssh -q -i /home/yangchao/labs/lib/osbash-ssh-keys/osbash_key -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o ConnectTimeout=10 -o ControlPath=none -p 2230 osbash@127.0.0.1 mkdir -p autostart && ssh -q -i /home/yangchao/labs/lib/osbash-ssh-keys/osbash_key -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o ConnectTimeout=10 -o ControlPath=none -p 2232 osbash@127.0.0.1 mkdir -p autostart
注意,必定是安裝腳本運行期間,屢次運行以上命令,由於controller和compute節點會在從新運行部署腳本的時候重啓而且配置虛擬網絡
完成後以下:
此時在宿主機上瀏覽器輸入http://127.0.0.1:8888/horizon進入openstack的dashboard,同時能夠正常建立實例
登錄controller節點,能夠檢查nova服務運行正常,compute節點已經添加
ssh osbash@127.0.0.1 -p 2230 #登錄controller節點,密碼osbash . admin-openrc.sh #導入openstack環境變量以使用opnstack命令 nova service-list #檢查controller節點和compute節點nova服務狀態
記住,只有宿主機本機才能登錄openstack