kolla-ansible 一鍵安裝openstack

官網地址https://docs.openstack.org/kolla-ansible/latest/user/quickstart.htmlhtml

參考:https://www.jianshu.com/p/e0e470f9fd4dnode

虛擬機多節點:https://www.cnblogs.com/linkenpark/p/9542071.htmlpython

其餘多節點:https://blog.csdn.net/wzlsunice88/article/details/79241489linux

一、準備環境:

  • 物理機或者虛擬機三臺(本文使用公有云的CentOS7系統)
  • control節點 2個網絡接口:
    •   eth0:192.168.31.3  eth1:192.168.31.4      外網:10.10.1.1
  • compute節點:
    •   eth0:192.168.31.2
    •        也是cinder節點:添加一塊硬盤配置lvm存儲
  • 8GB主內存、40GB磁盤空間(視狀況而定)

二、準備部署:

  2.1 服務器配置IPgit

    vim /etc/sysconfig/network-scripts/ifcfg-eth0
    systemctl restart network   # 重啓網絡 

  2.2 安裝依賴關係docker

    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
    yum install docker -y
    若是docker有衝突,須要卸載rpm -qa |grep docker ,而後yum remove -y *,最後重裝1.12(最新1.13)yum install docker-engine-1.12.6*,啓動服務systemctl start docker
    查看cpu是否支持虛擬化
    egrep -c '(vmx|svm)' /proc/cpuinfo

  2.3 安裝ansiblebootstrap

    yum install ansible

  2.4 安裝kolla-ansible,用來部署vim

    pip install kolla-ansible

  2.5 centos7下將globals.yml和passwords.yml複製到/etc/kolla目錄 centos

    For CentOS, run:瀏覽器

      cp -r /usr/share/kolla-ansible/etc_examples/kolla /etc/

    For Ubuntu, run:

      cp -r /usr/local/share/kolla-ansible/etc_examples/kolla /etc/

  2.6 將all-in-one和multinode庫存文件複製到當前目錄。  

    For CentOS, run:

      cp /usr/share/kolla-ansible/ansible/inventory/* .

    For Ubuntu, run:

      cp /usr/local/share/kolla-ansible/ansible/inventory/* .

3 準備在主機上部署OpenStack(若是是多節點須要配置multinode文件)

    3.0 多節點須要配置multinode文件,單節點不須要:

    3.0.1配置以下:

 1 [control]
 2 localhost ansible_connection=local 5 
 6 [network:children]
 7 control
 8 
10 [compute]
11 compute主機名 
13 [monitoring]
14 localhost       ansible_connection=local
18 [storage:children]
compute
21 [deployment]
localhost ansible_connection=local

    3.0.2 檢查庫存配置是否正確

      ansible -i multinode all -m ping

  

  3.1 部署中使用的密碼存儲在/etc/kolla/passwords.yml文件中。
    經過運行下面命令生成隨機密碼:

      kolla-genpwd

    初始化以後,可手動更改keystone_admin_password密碼(OpenStack登陸密碼)

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

  3.2 編輯globals.yml配置文件

  
  單節點模式:
  kolla_base_distro: "centos"   # binary使用像apt或yum這樣的軟件倉庫,source使用原始源代碼歸檔,git存儲庫或本地源代碼目錄   kolla_install_type: "source"   openstack_release: "rocky" # 使用的版本,master版本我嘗試過啓動不行   network_interface: "eth0" # OpenStack使用的網絡接口   # 第二個接口專用於Neutron外部(或公共)網絡,能夠是vlan或flat,取決於網絡的建立方式。   # 這個接口應該是活動的,沒有IP地址。不然,實例將沒法訪問外部網絡   neutron_external_interface: "eth1"   kolla_internal_vip_address: "192.168.31.3" # et0 ip 

   多節點模式配置: 

  kolla_base_distro: "centos"   # binary使用像apt或yum這樣的軟件倉庫,source使用原始源代碼歸檔,git存儲庫或本地源代碼目錄   kolla_install_type: "source"   openstack_release: "rocky" # 使用的版本,master版本我嘗試過啓動不行
  network_interface: "eth0" # OpenStack使用的網絡接口   # 第二個接口專用於Neutron外部(或公共)網絡,能夠是vlan或flat,取決於網絡的建立方式。   # 這個接口應該是活動的,沒有IP地址。不然,實例將沒法訪問外部網絡   neutron_external_interface: "eth1"   kolla_internal_vip_address: "192.168.31.3" # control節點et0 ip

 

四、開始部署

單節點啓動:
   4.1.一、帶有kolla的引導服務器部署依賴關係
    kolla-ansible -i ./all-in-one bootstrap-servers   4.1.二、對主機執行預部署檢查     kolla-ansible -i ./all-in-one prechecks    4.1.三、執行OpenStack部署     kolla-ansible -i ./all-in-one deploy

多節點啓動:
   4.2.一、帶有kolla的引導服務器部署依賴關係     
    kolla-ansible -i ./multinode bootstrap-servers   
   4.2.二、對主機執行預部署檢查
    
    kolla-ansible -i ./multinode prechecks   
   4.2.三、執行OpenStack部署     
    kolla-ansible -i ./multinode deploy


4.2.一、帶有kolla的引導服務器部署依賴關係     
    kolla-ansible -i ./multinode bootstrap-servers   
   4.2.二、對主機執行預部署檢查
    
    kolla-ansible -i ./multinode prechecks   
   4.2.三、執行OpenStack部署     
    kolla-ansible -i ./multinode deploy
multinode multinode

五、使用OpenStack

  5.1 OpenStack須要一個openrc文件,其中設置了admin用戶的憑證。
  要生成這個文件運行如下命令:

  kolla-ansible post-deploy
  . /etc/kolla/admin-openrc.sh

  5.2 安裝基本的OpenStack CLI客戶端:

  pip install python-openstackclient python-glanceclient python-neutronclient

  5.3 運行腳本建立示例網絡,圖像等

  . /usr/share/kolla-ansible/init-runonce

  打開瀏覽器輸入機器公有云外網ip 18.68.x.x,用戶admin ,密碼admin 可登陸openstack_dashboard,如圖所示:  

    

 

重裝記得,刪除乾淨,否則報錯

  docker stop  $(docker ps -qa)
  docker rm -f   $(docker ps -qa)
  docker volume rm $(docker volume ls -q)
 
一些坑,,按期更新:
  在公有云上建立的openstack,沒法建立instance,提示
相關文章
相關標籤/搜索