kolla專案:All-In-One --單網絡卡例項
阿新 • • 發佈:2019-02-15
kolla專案:All-In-One
部署環境:CentOS 7.2
物理機單網絡卡:搭建vlan解決或者別的方法(不然在啟動neutron網路的時候會斷網,雙網絡卡可以自己忽略這邊)
docker版本:1.12.1
ansible版本:2.1.1
pip版本:8.1.2
其它的預設版本,沒有修改
安裝 epel源 :
yum install -y epel-release
安裝pip:
yum install -y python-pip
安裝依賴包
yum install -y python-devel libffi-devel openssl-devel gcc python-setuptools git
升級pip(自帶安裝的是7.1.0的,升級到8.1.0)
pip install -U ansible==2.1.1
安裝docker(docker版本是1.12)
curl -sSL https://get.docker.io | bash
docker ps(檢視docker版本)
Docker 現在使用了 shared mount 功能,預設沒有開啟,需要手動修改 Docker 啟動檔案/usr/lib/systemd/system/docker.service 的 MountFlags
sed -i 's/MountFlags.*/MountFlags=shared/' /usr/lib/systemd/system/docker.service
為確保開啟,按照官網那又執行了一遍
mkdir -p /etc/systemd/system/docker.service.d tee /etc/systemd/system/docker.service.d/kolla.conf <<-'EOF' [Service] MountFlags=shared EOF systemctl daemon-reload && systemctl enable docker && systemctl start docker (重新載入docker配置,使docker開機自啟動,重新開啟docker) docker ps 確定docker啟動(其它命令也可以,忽略也行)
安裝tox,openstackclient:
pip install -U tox
pip install -U python-openstackclient
下載kolla 原始碼並安裝:
git clone https://git.openstack.org/openstack/kolla
pip install kolla/
cd kolla/
pip install -r requirements.txt -r test-requirements.txt
生成配置檔案:
tox -e genconfig
cp -rv etc/kolla /etc/
到這裡基本的基本的環境已經準能好了接下來才是關鍵:
第一步肯定就是build映象啦(這步很關鍵,很容易影響後面的步驟,最好是在網路穩定的時候build)
kolla-build --base centos --type source -p default
(在這邊花費的時間跟你的網路有關,順利的話一次可以build下來,那就恭喜你運氣真好,失敗了也不要害怕,因為可以單獨build)
在本人build那麼多次的測試下,發現容易build失敗的是heka跟rabbitmq
kolla-build heka (在這邊其實還是有錯誤的,等下章我會給出我的解決)
build結束,終於可以開始部署啦
修改配置檔案vim /etc/kolla/globals.yml :
kolla_install_type: “source”
kolla_internal_address: “192.168.101.147”(這邊要設定成跟enp4s0.2同一個網段的IP,並且未被使用)
network_interface: “enp4s0.2” (因為是單網絡卡,這個就是用的vlan埠)
neutron_external_interface: “enp4s0.3”(這個也是用的vlan埠,我覺得一個vlan也是可以的,第一次搭建為了確保有效就用了兩個vlan)
使用kolla內部自帶的檢測機器是否滿足安裝:
kolla-ansible prechecks
會出現hots錯誤,因為在前面沒有修改hosts檔案
sed -i '2a 192.168.101.25 localhost' /etc/hosts
kolla-genpwd (生成密碼檔案,你也可以自己修改)
kolla-ansible prechecks(再次執行)
檢測全部通過才可以執行下步,不然肯定出錯的
開始啟動容器
kolla-ansible deploy
在這邊要是映象build完整是可以一次性通過的,不會出現任何問題,不然會出現一些你意想不到的問題,這邊就祝你們順利
成功之後直接關閉防火牆,不然不能訪問,我順便把selinux關閉了
systemctl stop firewalld && systemctl disable firewalld
sed -i '7d;1a SELINUX=disabled' /etc/selinux/config
生成 /etc/kolla/admin-openrc.sh 檔案用來載入認證變數,並檢視admin登入密碼
./tools/kolla-ansible post-deploy
more /etc/kolla/admin-openrc.sh
最後就是登入啦,部署就到這邊,中途遇到的一些錯誤後面有時間再總結一下,測試還沒開始,應該還會有寫錯誤,希望有更多的人”玩起來”,