kolla-ansible部署openstack的all-in-one環境(stein版)


1. 初始化系統環境

1.1 系統准備

2 network interfaces
8GB main memory
40GB disk space

1.2 關閉selinux

vi /etc/selinux/config
SELINUX=disabled

1.3 關閉防火牆

systemctl stop firewalld
​
systemctl disable firewalld

1.4 關閉libvirtd服務

systemctl stop libvirtd.service 
​
systemctl disable libvirtd.service

1.5 更新yum源以及內核

curl -o /etc/yum.repos.d/CentOS-Base.repo / http://mirrors.aliyun.com/repo/Centos-7.repo
​
# 清理緩存
yum makecache
​
yum update

2. 安裝docker

curl -sSL https://get.docker.io | bash
設置共享:
tee /etc/systemd/system/docker.service.d/kolla.conf <<-'EOF' [Service] MountFlags=shared EOF
修改docker鏡像源
sudo vi /etc/docker/daemon.json ​ { "registry-mirrors": [ "https://kfwkfulq.mirror.aliyuncs.com", "https://2lqq34jg.mirror.aliyuncs.com", "https://pee6w651.mirror.aliyuncs.com", "https://registry.docker-cn.com", "http://hub-mirror.c.163.com" ], "dns": ["8.8.8.8","8.8.4.4"] }
重啟docker:
systemctl restart docker

3. 安裝依賴:

yum install git ​ yum install -y epel-release ​ yum install -y python-pip ​ pip install -U pip ​ yum install python-devel libffi-devel gcc openssl-devel libselinux-python

4. 安裝ansible

yum install ansible

5. 從github 獲取Kolla和Kolla-Ansible

git clone https://github.com/openstack/kolla -b stable/stein
​ git clone https://github.com/openstack/kolla-ansible -b stable/stein

# 如果已有鏡像,只執行第二步即可

6. 安裝依賴

# 手動安裝kolla-ansible python kolla-ansible/setup.py install ​ pip install -r ./kolla/requirements.txt ​ pip install -r ./kolla-ansible/requirements.txt

7. 拷貝配置文件

cp -r ./kolla-ansible/etc/kolla /etc/kolla ​ cp kolla-ansible/ansible/inventory/* .

# 單節點默認使用all-in-one不用做修改,多節點部署需要修改multinode

檢查playbook文件配置是否正確

# 單節點 ansible -i all-in-one all -m ping ​ # 多節點 ansible -i multinode all -m ping

8. 生成隨機密碼

kolla-genpwd
使用kolla提供的密碼生成工具自動生成,如果密碼不填充,后面的部署環境檢查時不會通過。

   為了后面登錄方便,可以自定義keystone_admin_password密碼,這里改為admin

vi /etc/kolla/passwords.yml keystone_admin_password:admin

9. 修改globals.yml

vi /etc/kolla/globals.yml # 指定鏡像的系統版本 kolla_base_distro: "centos" # 指定安裝的方式,source為源碼 kolla_install_type: "source" # openstack版本 openstack_release: "stein" # OpenStack使用的網絡接口 network_interface: "[Bond0]" # 宿主機IP kolla_internal_address: "[172.28.3.101]" # Neutron外部網絡,必須是沒有與network_interface Bond的可用網卡 neutron_external_interface: "[enp26s0f1]" # 如果單點部署,高可用設為no enable_haproxy: "no" enable_placement: "yes" # 使用cinder存儲 enable_cinder: "yes" enable_glance: "yes" enable_magnum: "yes" enable_heat: "yes"

# 如果使用lvm,需先創建cinder-volumes的卷組
enable_cinder_backend_lvm: "yes"

創建卷組的方法如下:

1. dd if=/dev/zero of=./disk.img count=200 bs=512MB 2. losetup -f 3. losetup /dev/loop0 disk.img 4. pvcreate /dev/loop0 5. vgcreate cinder-volumes /dev/loop0

10. 下載鏡像

 

部署時,會檢查本地有沒有鏡像,有的話,使用本地,沒有,自動拉取,由於鏡像特別大,先下載鏡像到本地

kolla-ansible pull

拉取鏡像的方法可以參考這篇博客:

https://xuchao918.github.io/2018/05/07/%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96Kolla%E7%9A%84OpenStack%E9%95%9C%E5%83%8F/

11. 開始部署

11.1 帶有kolla的引導服務器部署依賴關系

kolla-ansible -i ./all-in-one bootstrap-servers

11.2 對主機執行預部署檢查

kolla-ansible -i ./all-in-one prechecks

11.3 執行OpenStack部署

kolla-ansible -i ./all-in-one deploy

12. 后續的配置

12.1 安裝openstack CLI客戶端:

pip install python-openstackclient

12.2 OpenStack需要一個openrc文件,其中設置了admin用戶的憑證,依次執行:

kolla-ansible post-deploy 

. /etc/kolla/admin-openrc.sh

12.3 在瀏覽器輸入IP即可訪問,界面如圖所示:

 部署時的常見錯誤匯總在這里:

https://www.cnblogs.com/chaofan-/p/11715402.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM