OpenStack Ussuri 安装的OS环境要求初探

近期准备将OpenStack平台升级到Ussuri版本。考虑到现在在用的整个OpenStack环境并不复杂,仅有一个 AIO 的单节点,以往升级是在两台服务器间交替进行的,相当于重新部署OpenStack并迁移实例,相当耗时。这是因为OpenStack是无法实现产品级平滑升级的。现在服务器上还是以安装CentOS 7 为主,查看 Ussuri 的发行注记,得知 Ussuri 版本对OS环境要求有了变化,且只支持 Python 3 环境。根据以往的经验,知道 Python 3 和 Python 2 是可以共存并分别调用的,所以想尝试一下 能否在 CentOS 7 1804 上安装 Ussuri。

结论是:OpenStack Ussuri 版本不可以部署在 CentOS 7 1804 平台上,即便解决了 Python 的问题,也会因为 Python组件deltarpm无法被 Python 3 有效调用而导致安装失败。执行 kolla-ansible -i /etc/kolla/all-in-one prechecks 是会提示错误:

TASK [prechecks : Checking host OS release or version] **
fatal: [OpenStack]: FAILED! => {"changed": false, "msg": "CentOS release Core version 7.8 is not supported. Supported releases are: 8"}

以下是踩坑过程:

[googlebigtable@localhost Downloads]$ whoami
googlebigtable
[googlebigtable@localhost Downloads]$ pwd -P
/home/googlebigtable/Downloads
[googlebigtable@localhost Downloads]$ echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/home/googlebigtable/.local/bin:/home/googlebigtable/bin
[googlebigtable@localhost Downloads]$ su root
Password:
[root@localhost Downloads]# whoami
root
[root@localhost Downloads]# pwd -P
/home/googlebigtable/Downloads
[root@localhost Downloads]# echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/home/googlebigtable/.local/bin:/home/googlebigtable/bin
[root@localhost Downloads]# ls -F
initCentOS7aliYUM.sh VMwareTools-10.3.10-13959562.tar.gz vmware-tools-distrib/
[root@localhost Downloads]# ./initCentOS7aliYUM.sh
..................................................................................................................................
[root@localhost googlebigtable]# echo "192.168.207.173 OpenStack" >> /etc/hosts
[root@localhost googlebigtable]# cat -n /etc/hosts
1 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
2 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
3 192.168.207.173 OpenStack
[root@localhost googlebigtable]#
[root@localhost Downloads]# yum list installed | grep docker
[root@localhost Downloads]# yum remove -y docker

Loaded plugins: fastestmirror, langpacks
No Match for argument: docker*
No Packages marked for removal
[root@localhost Downloads]# chkconfig --list | grep -i docker

Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration.

  If you want to list systemd services use 'systemctl list-unit-files'.
  To see services enabled on particular target use
  'systemctl list-dependencies [target]'.

[root@localhost Downloads]# yum -y update
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile

  • base: mirrors.aliyun.com
  • extras: mirrors.aliyun.com
  • updates: mirrors.aliyun.com
    No packages marked for update
    [root@localhost Downloads]# yum list installed | grep docker
    [root@localhost Downloads]# curl -fsSL https://get.docker.com/ | sh

    Executing docker install script, commit: 26ff363bcf3b3f5a00498ac43694bf1c7d9ce16c

  • base: mirrors.aliyun.com
  • extras: mirrors.aliyun.com
  • updates: mirrors.aliyun.com
    base | 3.6 kB 00:00:00
    docker-ce-stable | 3.5 kB 00:00:00
    epel | 4.7 kB 00:00:00
    extras | 2.9 kB 00:00:00
    google-chrome | 1.3 kB 00:00:00
    updates | 2.9 kB 00:00:00
    (1/6): docker-ce-stable/x86_64/updateinfo | 55 B 00:00:00
    (2/6): docker-ce-stable/x86_64/primary_db | 45 kB 00:00:00
    (3/6): google-chrome/other | 370 B 00:00:00
    (4/6): google-chrome/filelists | 1.8 kB 00:00:00
    (5/6): docker-ce-stable/x86_64/other_db | 114 kB 00:00:00
    (6/6): docker-ce-stable/x86_64/filelists_db | 21 kB 00:00:01
    google-chrome 3/3
    google-chrome 3/3
    Metadata Cache Created

    • '[' -n '' ']'
    • sh -c 'yum install -y -q docker-ce'
      warning: /var/cache/yum/x86_64/7/docker-ce-stable/packages/containerd.io-1.2.13-3.2.el7.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID 621e9f35: NOKEY
      Public key for containerd.io-1.2.13-3.2.el7.x86_64.rpm is not installed
      Importing GPG key 0x621E9F35:
      Userid : "Docker Release (CE rpm) <[email protected]>"
      Fingerprint: 060a 61c5 1b55 8a7f 742b 77aa c52f eb6b 621e 9f35
      From : https://download.docker.com/linux/centos/gpg
      setsebool: SELinux is disabled.
      If you would like to use Docker as a non-root user, you should now consider
      adding your user to the "docker" group with something like:

    sudo usermod -aG docker your-user

Remember that you will have to log out and back in for this to take effect!

WARNING: Adding a user to the "docker" group will grant the ability to run
containers which can be used to obtain root privileges on the
docker host.
Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
for more information.
[root@localhost Downloads]# docker version
Client: Docker Engine - Community
Version: 19.03.12
API version: 1.40
Go version: go1.13.10
Git commit: 48a66213fe
Built: Mon Jun 22 15:46:54 2020
OS/Arch: linux/amd64
Experimental: false
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
[root@localhost Downloads]# systemctl start docker
[root@localhost Downloads]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
[root@localhost Downloads]#
[root@localhost Downloads]# yum -y install python-devel libffi-devel gcc openssl-devel git python-pip
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
....................................................................................................
[root@localhost Downloads]# mkdir .pip
[root@localhost Downloads]# tee .pip/pip.conf << EOF

[global]
index-url=http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
EOF
[global]
index-url=http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
[root@localhost Downloads]# pip install -U pip
Collecting pip
..........................................................................................................
Successfully installed pip-20.2.1
[root@localhost Downloads]# pip install ansible
DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. pip 21.0 will drop support for Python 2.7 in January 2021. More details about Python 2 support in pip can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Collecting ansible
Downloading ansible-2.9.11.tar.gz (14.2 MB)
|▉ | 367 kB 35 kB/s eta 0:06:33
ERROR: THESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE. If you have updated the package versions, please update the hashes. Otherwise, examine the package contents carefully; someone may have tampered with them.
ansible from https://files.pythonhosted.org/packages/e8/b2/c10b82573bb494d9e0764b5c75eb7be1e649082435280f2220976d1a3b33/ansible-2.9.11.tar.gz#sha256=88f9d033ece7fd51eca3abb4f02e13b63c924b97f9705a997d5a711c0cf42ab1:
Expected sha256 88f9d033ece7fd51eca3abb4f02e13b63c924b97f9705a997d5a711c0cf42ab1
Got 26573cfab129b4139f2e630c2b1b3306c47d4d1ae5f62dd9d498e3faab0437a1

[root@localhost Downloads]# python -V
Python 2.7.5
[root@localhost Downloads]# yum install -y gcc-c++ gcc make cmake zlib-devel bzip2-devel openssl-devel ncurse-devel libffi-devel
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
...................................................................................................................
[root@localhost Downloads]# wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tar.xz
--2020-08-07 08:46:19-- https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tar.xz
Resolving www.python.org (www.python.org)... 151.101.76.223, 2a04:4e42:12::223
Connecting to www.python.org (www.python.org)|151.101.76.223|:443... connected.
HTTP request sent, awaiting response... 200 OK
........................................................................................................
[root@localhost Downloads]# ls -F
epel-release-latest-7.noarch.rpm initCentOS7aliYUM.sh* VMwareTools-10.3.10-13959562.tar.gz
google-chrome-stable_current_x86_64.rpm Python-3.8.5.tar.xz vmware-tools-distrib/
[root@localhost Downloads]#
[root@localhost Downloads]# tar -xJvf Python-3.8.5.tar.xz
Python-3.8.5/
Python-3.8.5/CODE_OF_CONDUCT.md
............................................................................................................

[root@localhost Downloads]# ls -F
epel-release-latest-7.noarch.rpm initCentOS7aliYUM.sh Python-3.8.5.tar.xz vmware-tools-distrib/
google-chrome-stable_current_x86_64.rpm Python-3.8.5/ VMwareTools-10.3.10-13959562.tar.gz
[root@localhost Downloads]# cd Python-3.8.5/
[root@localhost Python-3.8.5]# ls -F
aclocal.m4 config.sub
Doc/ install-sh m4/ Misc/ Parser/ Programs/ README.rst
CODE_OF_CONDUCT.md configure
Grammar/ Lib/ Mac/ Modules/ PC/ pyconfig.h.in setup.py
config.guess configure.ac Include/ LICENSE Makefile.pre.in Objects/ PCbuild/ Python/ Tools/
[root@localhost Python-3.8.5]# mkdir -p /opt/python3
[root@localhost Python-3.8.5]# ./configure --prefix=/opt/python3 --enable-optimizations
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
..............................................................................................
creating Modules/Setup.local
creating Makefile
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# make && make install
Running code to generate profile data (this can take a while):
...................................................................................................................
Installing collected packages: setuptools, pip
WARNING: The script easy_install-3.8 is installed in '/opt/python3/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
WARNING: The scripts pip3 and pip3.8 are installed in '/opt/python3/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed pip-20.1.1 setuptools-47.1.0
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# mv /usr/bin/python /usr/bin/python.original
[root@localhost Python-3.8.5]# mv /usr/bin/pip /usr/bin/pip.original
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# ls -F /usr/bin/ | grep pip
lesspipe.sh

pip2
pip2.7

pip.original
[root@localhost Python-3.8.5]# ls -F /usr/bin/ | grep python
abrt-action-analyze-python
br/>python2@
python2.7
python2.7-config
br/>python2-config@
python-config@
br/>python.original@
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# tree -L 3 /opt/python3/bin/
/opt/python3/bin/
├── 2to3 -> 2to3-3.8
├── 2to3-3.8
├── easy_install-3.8
├── idle3 -> idle3.8
├── idle3.8
├── pip3
├── pip3.8
├── pydoc3 -> pydoc3.8
├── pydoc3.8
├── python3 -> python3.8
├── python3.8
├── python3.8-config
└── python3-config -> python3.8-config

0 directories, 13 files
[root@localhost Python-3.8.5]# ln -s /opt/python3/bin/python3.8 /usr/bin/python
[root@localhost Python-3.8.5]# ln -s /opt/python3/bin/pip3 /usr/bin/pip
[root@localhost Python-3.8.5]# ls -F /usr/bin/ | grep python
br/>abrt-action-analyze-python*
python@
python2@
br/>python2.7*
python2.7-config*
python2-config@
python-config@
br/>python.original@
[root@localhost Python-3.8.5]# ls -F /usr/bin/ | grep pip
br/>lesspipe.sh*
pip@
pip2
pip2.7

pip.original*
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# python -V
Python 3.8.5
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# file /usr/bin/yum
[root@localhost Python-3.8.5]# cp /usr/bin/yum{,.original}
[root@localhost Python-3.8.5]# gedit /usr/bin/yum
[root@localhost Python-3.8.5]# cat -n /usr/bin/yum | grep "python"
1 #!/usr/bin/python2.7
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# file /usr/libexec/urlgrabber-ext-down
/usr/libexec/urlgrabber-ext-down: Python script, ASCII text executable
[root@localhost Python-3.8.5]# cp /usr/libexec/urlgrabber-ext-down{,.original}
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# cat -n /usr/libexec/urlgrabber-ext-down | grep "python"
1 #! /usr/bin/python2.7
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# file /usr/sbin/firewalld
/usr/sbin/firewalld: Python script, ASCII text executable
[root@localhost Python-3.8.5]# cp /usr/sbin/firewalld{,.original}
[root@localhost Python-3.8.5]# gedit /usr/sbin/firewalld
[root@localhost Python-3.8.5]# cat -n /usr/sbin/firewalld | grep "python"
1 #!/usr/bin/python2.7 -Es
21 # python fork magic derived from setroubleshoot
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# file /usr/bin/firewall-cmd
/usr/bin/firewall-cmd: Python script, ASCII text executable
[root@localhost Python-3.8.5]# cp /usr/bin/firewall-cmd{,.original}
[root@localhost Python-3.8.5]# gedit /usr/bin/firewall-cmd
[root@localhost Python-3.8.5]# cat -n /usr/bin/firewall-cmd | grep "python"
1 #!/usr/bin/python2.7 -Es
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# pip install -U pip
Collecting pip
Using cached pip-20.2.1-py2.py3-none-any.whl (1.5 MB)
Installing collected packages: pip
Attempting uninstall: pip
Found existing installation: pip 20.1.1
Uninstalling pip-20.1.1:
Successfully uninstalled pip-20.1.1
Successfully installed pip-20.2.1
[root@localhost Python-3.8.5]# pip install ansible
Collecting ansible
.................................................................................................
Installing collected packages: MarkupSafe, jinja2, PyYAML, pycparser, cffi, six, cryptography, ansible
Running setup.py install for PyYAML ... done
Running setup.py install for ansible ... done
Successfully installed MarkupSafe-1.1.1 PyYAML-5.3.1 ansible-2.9.11 cffi-1.14.1 cryptography-3.0 jinja2-2.11.2 pycparser-2.20 six-1.15.0
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# pip install kolla-ansible
Collecting kolla-ansible
......................................................................................................
Installing collected packages: pbr, jmespath, oslo.i18n, netaddr, iso8601, netifaces, pytz, pyparsing, packaging, wrapt, debtcollector, oslo.utils, stevedore, idna, chardet, certifi, urllib3, requests, rfc3986, oslo.config, kolla-ansible
Running setup.py install for netifaces ... done
Running setup.py install for wrapt ... done
Successfully installed certifi-2020.6.20 chardet-3.0.4 debtcollector-2.2.0 idna-2.10 iso8601-0.1.12 jmespath-0.10.0 kolla-ansible-10.1.0 netaddr-0.8.0 netifaces-0.10.9 oslo.config-8.3.1 oslo.i18n-5.0.0 oslo.utils-4.4.0 packaging-20.4 pbr-5.4.5 pyparsing-2.4.7 pytz-2020.1 requests-2.24.0 rfc3986-1.4.0 stevedore-3.2.0 urllib3-1.25.10 wrapt-1.12.1
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# find / -name kolla-ansible
find: ‘/run/user/1000/gvfs’: Permission denied
/opt/python3/bin/kolla-ansible
/opt/python3/share/kolla-ansible
[root@localhost Python-3.8.5]# file /opt/python3/bin/kolla-ansible
/opt/python3/bin/kolla-ansible: Bourne-Again shell script, ASCII text executable
[root@localhost Python-3.8.5]# file /opt/python3/share/kolla-ansible
/opt/python3/share/kolla-ansible: directory
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# tree -L 2 /opt/python3/share/kolla-ansible/
/opt/python3/share/kolla-ansible/
├── ansible
│   ├── action_plugins
│   ├── bifrost.yml
│   ├── certificates.yml
│   ├── destroy.yml
│   ├── filter_plugins
│   ├── gather-facts.yml
│   ├── group_vars
│   ├── inventory
│   ├── kolla-host.yml
│   ├── library
│   ├── mariadb_backup.yml
│   ├── mariadb_recovery.yml
│   ├── nova.yml
│   ├── post-deploy.yml
│   ├── prune-images.yml
│   ├── roles
│   └── site.yml
├── doc
│   ├── requirements.txt
│   └── source
├── etc_examples
│   └── kolla
├── init-runonce
├── init-***
├── setup.cfg
└── tools
├── cleanup-containers
├── cleanup-host
├── cleanup-images
├── ovs-dpdkctl.sh
└── validate-docker-execute.sh

12 directories, 20 files
[root@localhost Python-3.8.5]#
[root@localhost Python-3.8.5]# cp -r /opt/python3/share/kolla-ansible/etc_examples/kolla/ /etc/
[root@localhost Python-3.8.5]# tree -L 2 /etc/kolla/
/etc/kolla/
├── globals.yml
└── passwords.yml

0 directories, 2 files
[root@localhost Python-3.8.5]# cp /opt/python3/share/kolla-ansible/ansible/inventory/* /etc/kolla/
[root@localhost Python-3.8.5]# tree -L 2 /etc/kolla/
/etc/kolla/
├── all-in-one
├── globals.yml
├── multinode
└── passwords.yml

0 directories, 4 files
[root@localhost Python-3.8.5]#
[root@localhost Downloads]# find / -name kolla-genpwd
find: ‘/run/user/1000/gvfs’: Permission denied
/opt/python3/bin/kolla-genpwd
[root@localhost Downloads]# tree -L 2 /opt/python3/bin/
/opt/python3/bin/
├── 2to3 -> 2to3-3.8
├── 2to3-3.8
├── ansible
├── ansible-config -> ansible
├── ansible-connection
├── ansible-console -> ansible
├── ansible-doc -> ansible
├── ansible-galaxy -> ansible
├── ansible-inventory -> ansible
├── ansible-playbook -> ansible
├── ansible-pull -> ansible
├── ansible-test
├── ansible-vault -> ansible
├── chardetect
├── easy_install-3.8
├── idle3 -> idle3.8
├── idle3.8
├── jp.py
├── kolla-ansible
├── kolla-genpwd
├── kolla-mergepwd
├── netaddr
├── oslo-config-generator
├── oslo-config-validator
├── pbr
├── pip
├── pip3
├── pip3.8
├── pycache
│   └── jp.cpython-38.pyc
├── pydoc3 -> pydoc3.8
├── pydoc3.8
├── python3 -> python3.8
├── python3.8
├── python3.8-config
└── python3-config -> python3.8-config

1 directory, 35 files
[root@localhost Downloads]#
[root@localhost Downloads]# cd ~
[root@localhost googlebigtable]# kolla-genpwd
bash: kolla-genpwd: command not found...
[root@localhost googlebigtable]# /opt/python3/bin/kolla-genpwd
[root@localhost googlebigtable]# file /etc/kolla/passwords.yml
/etc/kolla/passwords.yml: ASCII text, with very long lines
[root@localhost googlebigtable]# cp /etc/kolla/passwords.yml{,.original}
[root@localhost googlebigtable]# gedit /etc/kolla/passwords.yml
[root@localhost googlebigtable]# cat -n /etc/kolla/passwords.yml | grep "keystone_admin_password"
161 keystone_admin_password: 123456
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# file /etc/kolla/globals.yml
/etc/kolla/globals.yml: ASCII text
[root@localhost googlebigtable]# cp /etc/kolla/globals.yml{,.original}
[root@localhost googlebigtable]# ifconfig | grep inet
inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255
inet 192.168.207.173 netmask 255.255.255.0 broadcast 192.168.207.255
inet6 fe80::cd7f:e05c:e677:a2c1 prefixlen 64 scopeid 0x20<link>
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# gedit /etc/kolla/globals.yml
[root@localhost googlebigtable]# grep "^\s[^# \t].$" /etc/kolla/globals.yml | cat -n
1 ---
2 kolla_base_distro: "centos"
3 kolla_install_type: "source"
4 openstack_release: "ussuri"
5 node_custom_config: "/etc/kolla/config"
6 kolla_internal_vip_address: "192.168.207.173"
7 network_interface: "ens33"
8 neutron_external_interface: "ens33"
9 enable_haproxy: "no"
10 enable_cinder: "no"
11 nova_compute_virt_type: "qemu"
[root@localhost googlebigtable]#

[root@localhost googlebigtable]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:sH7bMlRjiqFPn3O78qojTDnEbIZqDx6WA+YfIP+cIxA [email protected]
The key's randomart image is:
+---[RSA 2048]----+
+ .
Eo. * .o +
=+o+ o.oS+ .
oO..=.o o
+.*=.=.o..
..oB o.Bo.
. o.ooO=o

+----[SHA256]-----+
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '192.168.207.173 (192.168.207.173)' can't be established.
ECDSA key fingerprint is SHA256:nDhBbaSgjZxTbER2Ng96ckDBjabt6WI1M5gA30Fnydw.
ECDSA key fingerprint is MD5:d6:ca:1a:76:0c:e5:d7:a5:43:23:d1:48:26:ab:92:70.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:

Number of key(s) added: 1

Now try logging into the machine, with: "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

[root@localhost googlebigtable]#
[root@localhost googlebigtable]# file /etc/kolla/all-in-one
/etc/kolla/all-in-one: ASCII text
[root@localhost googlebigtable]# cp /etc/kolla/all-in-one{,.original}
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# sed -i 's|localhost ansible_connection=local|OpenStack|g' /etc/kolla/all-in-one
[root@localhost googlebigtable]# grep "^\s[^# \t].$" /etc/kolla/all-in-one | cat -n
1 [control]
2 OpenStack
3 [network]
4 OpenStack
5 [compute]
6 OpenStack
7 [storage]
8 OpenStack
9 [monitoring]
10 OpenStack
11 [deployment]
12 OpenStack
13 [chrony-server:children]
14 haproxy
15 [chrony:children]
16 network
17 compute
18 storage
19 monitoring
20 [collectd:children]
21 compute
22 [baremetal:children]
23 control
24 [tls-backend:children]
25 control
26 [grafana:children]
27 monitoring
28 [etcd:children]
29 control
30 [kafka:children]
31 control
32 [karbor:children]
33 control
34 [kibana:children]
35 control
36 [telegraf:children]
37 compute
38 control
39 monitoring
40 network
41 storage
42 [elasticsearch:children]
43 control
44 [haproxy:children]
45 network
46 [hyperv]
47 [hyperv:vars]
48 [mariadb:children]
49 control
50 [rabbitmq:children]
51 control
52 [outward-rabbitmq:children]
53 control
54 [qdrouterd:children]
55 control
56 [monasca-agent:children]
57 compute
58 control
59 monitoring
60 network
61 storage
62 [monasca:children]
63 monitoring
64 [storm:children]
65 monitoring
66 [mongodb:children]
67 control
68 [keystone:children]
69 control
70 [glance:children]
71 control
72 [nova:children]
73 control
74 [neutron:children]
75 network
76 [openvswitch:children]
77 network
78 compute
79 manila-share
80 [cinder:children]
81 control
82 [cloudkitty:children]
83 control
84 [freezer:children]
85 control
86 [memcached:children]
87 control
88 [horizon:children]
89 control
90 [swift:children]
91 control
92 [barbican:children]
93 control
94 [heat:children]
95 control
96 [murano:children]
97 control
98 [ironic:children]
99 control
100 [influxdb:children]
101 monitoring
102 [prometheus:children]
103 monitoring
104 [magnum:children]
105 control
106 [qinling:children]
107 control
108 [sahara:children]
109 control
110 [solum:children]
111 control
112 [mistral:children]
113 control
114 [manila:children]
115 control
116 [panko:children]
117 control
118 [gnocchi:children]
119 control
120 [ceilometer:children]
121 control
122 [aodh:children]
123 control
124 [cyborg:children]
125 control
126 compute
127 [congress:children]
128 control
129 [tacker:children]
130 control
131 [vitrage:children]
132 control
133 [tempest:children]
134 control
135 [senlin:children]
136 control
137 [vmtp:children]
138 control
139 [trove:children]
140 control
141 [watcher:children]
142 control
143 [rally:children]
144 control
145 [searchlight:children]
146 control
147 [octavia:children]
148 control
149 [designate:children]
150 control
151 [placement:children]
152 control
153 [bifrost:children]
154 deployment
155 [zookeeper:children]
156 control
157 [zun:children]
158 control
159 [skydive:children]
160 monitoring
161 [redis:children]
162 control
163 [blazar:children]
164 control
165 [elasticsearch-curator:children]
166 elasticsearch
167 [glance-api:children]
168 glance
169 [nova-api:children]
170 nova
171 [nova-conductor:children]
172 nova
173 [nova-super-conductor:children]
174 nova
175 [nova-novncproxy:children]
176 nova
177 [nova-scheduler:children]
178 nova
179 [nova-spicehtml5proxy:children]
180 nova
181 [nova-compute-ironic:children]
182 nova
183 [nova-serialproxy:children]
184 nova
185 [neutron-server:children]
186 control
187 [neutron-dhcp-agent:children]
188 neutron
189 [neutron-l3-agent:children]
190 neutron
191 [neutron-metadata-agent:children]
192 neutron
193 [neutron-ovn-metadata-agent:children]
194 compute
195 [neutron-bgp-dragent:children]
196 neutron
197 [neutron-infoblox-ipam-agent:children]
198 neutron
199 [neutron-metering-agent:children]
200 neutron
201 [ironic-neutron-agent:children]
202 neutron
203 [cinder-api:children]
204 cinder
205 [cinder-backup:children]
206 storage
207 [cinder-scheduler:children]
208 cinder
209 [cinder-volume:children]
210 storage
211 [cloudkitty-api:children]
212 cloudkitty
213 [cloudkitty-processor:children]
214 cloudkitty
215 [freezer-api:children]
216 freezer
217 [freezer-scheduler:children]
218 freezer
219 [iscsid:children]
220 compute
221 storage
222 ironic
223 [tgtd:children]
224 storage
225 [karbor-api:children]
226 karbor
227 [karbor-protection:children]
228 karbor
229 [karbor-operationengine:children]
230 karbor
231 [manila-api:children]
232 manila
233 [manila-scheduler:children]
234 manila
235 [manila-share:children]
236 network
237 [manila-data:children]
238 manila
239 [swift-proxy-server:children]
240 swift
241 [swift-account-server:children]
242 storage
243 [swift-container-server:children]
244 storage
245 [swift-object-server:children]
246 storage
247 [barbican-api:children]
248 barbican
249 [barbican-keystone-listener:children]
250 barbican
251 [barbican-worker:children]
252 barbican
253 [trove-api:children]
254 [trove-conductor:children]
255 [trove-taskmanager:children]
256 [heat-api:children]
257 heat
258 [heat-api-cfn:children]
259 heat
260 [heat-engine:children]
261 heat
262 [murano-api:children]
263 murano
264 [murano-engine:children]
265 murano
266 [monasca-agent-collector:children]
267 monasca-agent
268 [monasca-agent-forwarder:children]
269 monasca-agent
270 [monasca-agent-statsd:children]
271 monasca-agent
272 [monasca-api:children]
273 monasca
274 [monasca-grafana:children]
275 monasca
276 [monasca-log-transformer:children]
277 monasca
278 [monasca-log-persister:children]
279 monasca
280 [monasca-log-metrics:children]
281 monasca
282 [monasca-thresh:children]
283 monasca
284 [monasca-notification:children]
285 monasca
286 [monasca-persister:children]
287 monasca
288 [storm-worker:children]
289 storm
290 [storm-nimbus:children]
291 storm
292 [ironic-api:children]
293 ironic
294 [ironic-conductor:children]
295 ironic
296 [ironic-inspector:children]
297 ironic
298 [ironic-pxe:children]
299 ironic
300 [ironic-ipxe:children]
301 ironic
302 [magnum-api:children]
303 magnum
304 [magnum-conductor:children]
305 magnum
306 [qinling-api:children]
307 qinling
308 [qinling-engine:children]
309 qinling
310 [solum-api:children]
311 solum
312 [solum-worker:children]
313 solum
314 [solum-deployer:children]
315 solum
316 [solum-conductor:children]
317 solum
318 [solum-application-deployment:children]
319 solum
320 [solum-image-builder:children]
321 solum
322 [mistral-api:children]
323 mistral
324 [mistral-executor:children]
325 mistral
326 [mistral-engine:children]
327 mistral
328 [mistral-event-engine:children]
329 mistral
330 [aodh-api:children]
331 aodh
332 [aodh-evaluator:children]
333 aodh
334 [aodh-listener:children]
335 aodh
336 [aodh-notifier:children]
337 aodh
338 [cyborg-api:children]
339 cyborg
340 [cyborg-agent:children]
341 compute
342 [cyborg-conductor:children]
343 cyborg
344 [panko-api:children]
345 panko
346 [gnocchi-api:children]
347 gnocchi
348 [gnocchi-statsd:children]
349 gnocchi
350 [gnocchi-metricd:children]
351 gnocchi
352 [sahara-api:children]
353 sahara
354 [sahara-engine:children]
355 sahara
356 [ceilometer-central:children]
357 ceilometer
358 [ceilometer-notification:children]
359 ceilometer
360 [ceilometer-compute:children]
361 compute
362 [ceilometer-ipmi:children]
363 compute
364 [congress-api:children]
365 congress
366 [congress-datasource:children]
367 congress
368 [congress-policy-engine:children]
369 congress
370 [multipathd:children]
371 compute
372 storage
373 [watcher-api:children]
374 watcher
375 [watcher-engine:children]
376 watcher
377 [watcher-applier:children]
378 watcher
379 [senlin-api:children]
380 senlin
381 [senlin-conductor:children]
382 senlin
383 [senlin-engine:children]
384 senlin
385 [senlin-health-manager:children]
386 senlin
387 [searchlight-api:children]
388 searchlight
389 [searchlight-listener:children]
390 searchlight
391 [octavia-api:children]
392 octavia
393 [octavia-health-manager:children]
394 octavia
395 [octavia-housekeeping:children]
396 octavia
397 [octavia-worker:children]
398 octavia
399 [designate-api:children]
400 designate
401 [designate-central:children]
402 designate
403 [designate-producer:children]
404 designate
405 [designate-mdns:children]
406 network
407 [designate-worker:children]
408 designate
409 [designate-sink:children]
410 designate
411 [designate-backend-bind9:children]
412 designate
413 [placement-api:children]
414 placement
415 [zun-api:children]
416 zun
417 [zun-wsproxy:children]
418 zun
419 [zun-compute:children]
420 compute
421 [zun-cni-daemon:children]
422 compute
423 [skydive-analyzer:children]
424 skydive
425 [skydive-agent:children]
426 compute
427 network
428 [tacker-server:children]
429 [tacker-conductor:children]
430 [vitrage-api:children]
431 vitrage
432 [vitrage-notifier:children]
433 vitrage
434 [vitrage-graph:children]
435 vitrage
436 [vitrage-ml:children]
437 vitrage
438 [vitrage-persistor:children]
439 vitrage
440 [blazar-api:children]
441 blazar
442 [blazar-manager:children]
443 blazar
444 [prometheus-node-exporter:children]
445 monitoring
446 control
447 compute
448 network
449 storage
450 [prometheus-mysqld-exporter:children]
451 mariadb
452 [prometheus-haproxy-exporter:children]
453 haproxy
454 [prometheus-memcached-exporter:children]
455 memcached
456 [prometheus-cadvisor:children]
457 monitoring
458 control
459 compute
460 network
461 storage
462 [prometheus-alertmanager:children]
463 monitoring
464 [prometheus-openstack-exporter:children]
465 monitoring
466 [prometheus-elasticsearch-exporter:children]
467 elasticsearch
468 [prometheus-blackbox-exporter:children]
469 monitoring
470 [masakari-api:children]
471 control
472 [masakari-engine:children]
473 control
474 [masakari-monitors:children]
475 compute
476 [ovn-controller:children]
477 ovn-controller-compute
478 ovn-controller-network
479 [ovn-controller-compute:children]
480 compute
481 [ovn-controller-network:children]
482 network
483 [ovn-database:children]
484 control
485 [ovn-northd:children]
486 ovn-database
487 [ovn-nb-db:children]
488 ovn-database
489 [ovn-sb-db:children]
490 ovn-database
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# ls -F /opt/python3/bin/
2to3@ ansible-console@ ansible-pull@ idle3@ kolla-mergepwd pip pydoc3.8
2to3-3.8
ansible-doc@ ansible-test idle3.8 netaddr pip3 python3@
ansible ansible-galaxy@ ansible-vault@ jp.py oslo-config-generator pip3.8 python3.8
ansible-config@ ansible-inventory@ chardetect
kolla-ansible oslo-config-validator pycache/ python3.8-config
ansible-connection
ansible-playbook@ easy_install-3.8 kolla-genpwd pbr* pydoc3@ python3-config@
[root@localhost googlebigtable]# /opt/python3/bin/kolla-ansible -i /etc/kolla/all-in-one bootstrap-servers
which: no ansible in (/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/home/googlebigtable/.local/bin:/home/googlebigtable/bin)
ERROR: Ansible is not installed in the current (virtual) environment.
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# /opt/python3/bin/ansible --version
ansible 2.9.11
config file = None
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /opt/python3/lib/python3.8/site-packages/ansible
executable location = /opt/python3/bin/ansible
python version = 3.8.5 (default, Aug 7 2020, 08:59:37) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)]
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# pip install ansible
Requirement already satisfied: ansible in /opt/python3/lib/python3.8/site-packages (2.9.11)
Requirement already satisfied: jinja2 in /opt/python3/lib/python3.8/site-packages (from ansible) (2.11.2)
Requirement already satisfied: PyYAML in /opt/python3/lib/python3.8/site-packages (from ansible) (5.3.1)
Requirement already satisfied: cryptography in /opt/python3/lib/python3.8/site-packages (from ansible) (3.0)
Requirement already satisfied: MarkupSafe>=0.23 in /opt/python3/lib/python3.8/site-packages (from jinja2->ansible) (1.1.1)
Requirement already satisfied: six>=1.4.1 in /opt/python3/lib/python3.8/site-packages (from cryptography->ansible) (1.15.0)
Requirement already satisfied: cffi!=1.11.3,>=1.8 in /opt/python3/lib/python3.8/site-packages (from cryptography->ansible) (1.14.1)
Requirement already satisfied: pycparser in /opt/python3/lib/python3.8/site-packages (from cffi!=1.11.3,>=1.8->cryptography->ansible) (2.20)
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# PATH=$PATH:/opt/python3/bin/
[root@localhost googlebigtable]# echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/home/googlebigtable/.local/bin:/home/googlebigtable/bin:/opt/python3/bin/
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# kolla-ansible -i /etc/kolla/all-in-one bootstrap-servers
Bootstrapping servers : ansible-playbook -i /etc/kolla/all-in-one -e @/etc/kolla/globals.yml -e @/etc/kolla/passwords.yml -e CONFIG_DIR=/etc/kolla -e kolla_action=bootstrap-servers /opt/python3/ansible/kolla-host.yml
ERROR! the playbook: /opt/python3/ansible/kolla-host.yml could not be found
Command failed ansible-playbook -i /etc/kolla/all-in-one -e @/etc/kolla/globals.yml -e @/etc/kolla/passwords.yml -e CONFIG_DIR=/etc/kolla -e kolla_action=bootstrap-servers /opt/python3/ansible/kolla-host.yml
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# find / -name kolla-host.yml
find: ‘/run/user/1000/gvfs’: Permission denied
/opt/python3/share/kolla-ansible/ansible/kolla-host.yml
[root@localhost googlebigtable]# cat -n /opt/python3/share/kolla-ansible/ansible/kolla-host.yml
1 ---
2 - import_playbook: gather-facts.yml
3
4 - name: Apply role baremetal
5 hosts: baremetal
6 serial: '{{ kolla_serial|default("0") }}'
7 gather_facts: false
8 roles:
9 - { role: baremetal,
10 tags: baremetal }
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# mkdir -p /opt/python3/ansible
[root@localhost googlebigtable]# cp /opt/python3/share/kolla-ansible/ansible/kolla-host.yml /opt/python3/ansible/
[root@localhost googlebigtable]# ls -F /opt/python3/ansible/
kolla-host.yml
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# rm -rf /opt/python3/ansible/
[root@localhost googlebigtable]# ls -F /opt/python3/ | grep ansible
[root@localhost googlebigtable]# cp -r /opt/python3/share/kolla-ansible/ansible/ /opt/python3/
[root@localhost googlebigtable]# ls -F /opt/python3/ansible/
action_plugins/ certificates.yml filter_plugins/ group_vars/ kolla-host.yml mariadb_backup.yml nova.yml prune-images.yml site.yml
bifrost.yml destroy.yml gather-facts.yml inventory/ library/ mariadb_recovery.yml post-deploy.yml roles/
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# kolla-ansible -i /etc/kolla/all-in-one bootstrap-servers
Bootstrapping servers : ansible-playbook -i /etc/kolla/all-in-one -e @/etc/kolla/globals.yml -e @/etc/kolla/passwords.yml -e CONFIG_DIR=/etc/kolla -e kolla_action=bootstrap-servers /opt/python3/ansible/kolla-host.yml
[WARNING]: Invalid characters were found in group names but not replaced, use -vvvv to see details

PLAY [Gather facts for all hosts] ***

TASK [Gathering Facts] **
The authenticity of host 'openstack (192.168.207.173)' can't be established.
ECDSA key fingerprint is SHA256:nDhBbaSgjZxTbER2Ng96ckDBjabt6WI1M5gA30Fnydw.
ECDSA key fingerprint is MD5:d6:ca:1a:76:0c:e5:d7:a5:43:23:d1:48:26:ab:92:70.
Are you sure you want to continue connecting (yes/no)? yes
ok: [OpenStack]

TASK [Group hosts to determine when using --limit] **
changed: [OpenStack]
[WARNING]: Could not match supplied host pattern, ignoring: all_using_limit_True

PLAY [Gather facts for all hosts (if using --limit)] ****
skipping: no hosts matched

PLAY [Apply role baremetal] *****

TASK [baremetal : include_tasks] ****
included: /opt/python3/ansible/roles/baremetal/tasks/bootstrap-servers.yml for OpenStack

TASK [baremetal : include_tasks] ****
included: /opt/python3/ansible/roles/baremetal/tasks/pre-install.yml for OpenStack

TASK [baremetal : Ensure localhost in /etc/hosts] ***
changed: [OpenStack]

TASK [baremetal : Ensure hostname does not point to 127.0.1.1 in /etc/hosts] ****
ok: [OpenStack]

TASK [baremetal : Generate /etc/hosts for all of the nodes] *****
changed: [OpenStack]

TASK [baremetal : Ensure /etc/cloud/cloud.cfg exists] ***
ok: [OpenStack]

TASK [baremetal : Disable cloud-init manage_etc_hosts] **
skipping: [OpenStack]

TASK [baremetal : Ensure sudo group is present] *****
changed: [OpenStack]

TASK [baremetal : Ensure kolla group is present] ****
changed: [OpenStack]

TASK [baremetal : Install apt packages] *****
skipping: [OpenStack]

TASK [baremetal : Install ca certs] *****
skipping: [OpenStack] => (item=ca-certificates)
skipping: [OpenStack] => (item=apt-transport-https)

TASK [baremetal : Ensure apt sources list directory exists] *****
skipping: [OpenStack]

TASK [baremetal : Install docker apt gpg key] ***
skipping: [OpenStack]

TASK [baremetal : Enable docker apt repository] *****
skipping: [OpenStack]

TASK [baremetal : Ensure yum repos directory exists] ****
ok: [OpenStack]

TASK [baremetal : Enable docker yum repository] *****
changed: [OpenStack]

TASK [baremetal : Ensure module_hotfixes enabled for docker] ****
changed: [OpenStack]

TASK [baremetal : Install docker rpm gpg key] ***
ok: [OpenStack]

TASK [baremetal : include_tasks] ****
included: /opt/python3/ansible/roles/baremetal/tasks/install.yml for OpenStack

TASK [baremetal : Update apt cache] *****
skipping: [OpenStack]

TASK [baremetal : Set firewall default policy] **
skipping: [OpenStack]

TASK [baremetal : Check if firewalld is installed] **
ok: [OpenStack]

TASK [baremetal : Disable firewalld] ****
ok: [OpenStack] => (item=firewalld)

TASK [baremetal : Check which containers are running] ***
ok: [OpenStack]

TASK [baremetal : Install apt packages] *****
skipping: [OpenStack]

TASK [baremetal : Install deltarpm packages] ****
fatal: [OpenStack]: FAILED! => {"changed": false, "msg": "The Python 2 bindings for rpm are needed for this module. If you require Python 3 support use the dnf Ansible module instead.. The Python 2 yum module is needed for this module. If you require Python 3 support use the dnf Ansible module instead."}

PLAY RECAP **
OpenStack : ok=18 changed=7 unreachable=0 failed=1 skipped=9 rescued=0 ignored=0

Command failed ansible-playbook -i /etc/kolla/all-in-one -e @/etc/kolla/globals.yml -e @/etc/kolla/passwords.yml -e CONFIG_DIR=/etc/kolla -e kolla_action=bootstrap-servers /opt/python3/ansible/kolla-host.yml
[root@localhost googlebigtable]#
[root@localhost googlebigtable]# yum install -y python-deltarpm.x86_64
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile

PLAY [Gather facts for all hosts] ***

TASK [Gathering Facts] **
ok: [OpenStack]

TASK [Group hosts to determine when using --limit] **
changed: [OpenStack]
[WARNING]: Could not match supplied host pattern, ignoring: all_using_limit_True

PLAY [Gather facts for all hosts (if using --limit)] ****
skipping: no hosts matched

PLAY [Apply role baremetal] *****

TASK [baremetal : include_tasks] ****
included: /opt/python3/ansible/roles/baremetal/tasks/bootstrap-servers.yml for OpenStack

TASK [baremetal : include_tasks] ****
included: /opt/python3/ansible/roles/baremetal/tasks/pre-install.yml for OpenStack

TASK [baremetal : Ensure localhost in /etc/hosts] ***
ok: [OpenStack]

TASK [baremetal : Ensure hostname does not point to 127.0.1.1 in /etc/hosts] ****
ok: [OpenStack]

TASK [baremetal : Generate /etc/hosts for all of the nodes] *****
ok: [OpenStack]

TASK [baremetal : Ensure /etc/cloud/cloud.cfg exists] ***
ok: [OpenStack]

TASK [baremetal : Disable cloud-init manage_etc_hosts] **
skipping: [OpenStack]

TASK [baremetal : Ensure sudo group is present] *****
ok: [OpenStack]

TASK [baremetal : Ensure kolla group is present] ****
ok: [OpenStack]

TASK [baremetal : Install apt packages] *****
skipping: [OpenStack]

TASK [baremetal : Install ca certs] *****
skipping: [OpenStack] => (item=ca-certificates)
skipping: [OpenStack] => (item=apt-transport-https)

TASK [baremetal : Ensure apt sources list directory exists] *****
skipping: [OpenStack]

TASK [baremetal : Install docker apt gpg key] ***
skipping: [OpenStack]

TASK [baremetal : Enable docker apt repository] *****
skipping: [OpenStack]

TASK [baremetal : Ensure yum repos directory exists] ****
ok: [OpenStack]

TASK [baremetal : Enable docker yum repository] *****
changed: [OpenStack]

TASK [baremetal : Ensure module_hotfixes enabled for docker] ****
changed: [OpenStack]

TASK [baremetal : Install docker rpm gpg key] ***
ok: [OpenStack]

TASK [baremetal : include_tasks] ****
included: /opt/python3/ansible/roles/baremetal/tasks/install.yml for OpenStack

TASK [baremetal : Update apt cache] *****
skipping: [OpenStack]

TASK [baremetal : Set firewall default policy] **
skipping: [OpenStack]

TASK [baremetal : Check if firewalld is installed] **
ok: [OpenStack]

TASK [baremetal : Disable firewalld] ****
ok: [OpenStack] => (item=firewalld)

TASK [baremetal : Check which containers are running] ***
ok: [OpenStack]

TASK [baremetal : Install apt packages] *****
skipping: [OpenStack]

TASK [baremetal : Install deltarpm packages] ****
fatal: [OpenStack]: FAILED! => {"changed": false, "msg": "The Python 2 bindings for rpm are needed for this module. If you require Python 3 support use the dnf Ansible module instead.. The Python 2 yum module is needed for this module. If you require Python 3 support use the dnf Ansible module instead."}

PLAY RECAP **
OpenStack : ok=18 changed=3 unreachable=0 failed=1 skipped=9 rescued=0 ignored=0

Command failed ansible-playbook -i /etc/kolla/all-in-one -e @/etc/kolla/globals.yml -e @/etc/kolla/passwords.yml -e CONFIG_DIR=/etc/kolla -e kolla_action=bootstrap-servers /opt/python3/ansible/kolla-host.yml
[root@localhost googlebigtable]# kolla-ansible -i /etc/kolla/all-in-one prechecks
Pre-deployment checking : ansible-playbook -i /etc/kolla/all-in-one -e @/etc/kolla/globals.yml -e @/etc/kolla/passwords.yml -e CONFIG_DIR=/etc/kolla -e kolla_action=precheck /opt/python3/ansible/site.yml
[WARNING]: Invalid characters were found in group names but not replaced, use -vvvv to see details
[WARNING]: Could not match supplied host pattern, ignoring: enable_nova_True

PLAY [Gather facts for all hosts] ***

TASK [Gathering Facts] **
ok: [OpenStack]

TASK [Group hosts to determine when using --limit] **
changed: [OpenStack]
[WARNING]: Could not match supplied host pattern, ignoring: all_using_limit_True

PLAY [Gather facts for all hosts (if using --limit)] ****
skipping: no hosts matched

PLAY [Group hosts based on configuration] ***

TASK [Group hosts based on Kolla action] ****
changed: [OpenStack]

TASK [Group hosts based on enabled services] ****
ok: [OpenStack] => (item=enable_aodh_False)
ok: [OpenStack] => (item=enable_barbican_False)
ok: [OpenStack] => (item=enable_blazar_False)
ok: [OpenStack] => (item=enable_ceilometer_False)
ok: [OpenStack] => (item=enable_chrony_True)
ok: [OpenStack] => (item=enable_cinder_False)
ok: [OpenStack] => (item=enable_cloudkitty_False)
ok: [OpenStack] => (item=enable_collectd_False)
ok: [OpenStack] => (item=enable_congress_False)
ok: [OpenStack] => (item=enable_cyborg_False)
ok: [OpenStack] => (item=enable_designate_False)
ok: [OpenStack] => (item=enable_elasticsearch_False)
ok: [OpenStack] => (item=enable_etcd_False)
ok: [OpenStack] => (item=enable_freezer_False)
ok: [OpenStack] => (item=enable_glance_True)
ok: [OpenStack] => (item=enable_gnocchi_False)
ok: [OpenStack] => (item=enable_grafana_False)
ok: [OpenStack] => (item=enable_haproxy_False)
ok: [OpenStack] => (item=enable_heat_True)
ok: [OpenStack] => (item=enable_horizon_True)
ok: [OpenStack] => (item=enable_hyperv_False)
ok: [OpenStack] => (item=enable_influxdb_False)
ok: [OpenStack] => (item=enable_ironic_False)
ok: [OpenStack] => (item=enable_iscsid_False)
ok: [OpenStack] => (item=enable_kafka_False)
ok: [OpenStack] => (item=enable_karbor_False)
ok: [OpenStack] => (item=enable_keystone_True)
ok: [OpenStack] => (item=enable_kibana_False)
ok: [OpenStack] => (item=enable_kuryr_False)
ok: [OpenStack] => (item=enable_magnum_False)
ok: [OpenStack] => (item=enable_manila_False)
ok: [OpenStack] => (item=enable_mariadb_True)
ok: [OpenStack] => (item=enable_masakari_False)
ok: [OpenStack] => (item=enable_memcached_True)
ok: [OpenStack] => (item=enable_mistral_False)
ok: [OpenStack] => (item=enable_monasca_False)
ok: [OpenStack] => (item=enable_mongodb_False)
ok: [OpenStack] => (item=enable_multipathd_False)
ok: [OpenStack] => (item=enable_murano_False)
ok: [OpenStack] => (item=enable_neutron_True)
ok: [OpenStack] => (item=enable_nova_True)
ok: [OpenStack] => (item=enable_octavia_False)
ok: [OpenStack] => (item=enable_openvswitch_True_enable_ovs_dpdk_False)
ok: [OpenStack] => (item=enable_outward_rabbitmq_False)
ok: [OpenStack] => (item=enable_ovn_False)
ok: [OpenStack] => (item=enable_panko_False)
ok: [OpenStack] => (item=enable_placement_True)
ok: [OpenStack] => (item=enable_prometheus_False)
ok: [OpenStack] => (item=enable_qdrouterd_False)
ok: [OpenStack] => (item=enable_qinling_False)
ok: [OpenStack] => (item=enable_rabbitmq_True)
ok: [OpenStack] => (item=enable_rally_False)
ok: [OpenStack] => (item=enable_redis_False)
ok: [OpenStack] => (item=enable_sahara_False)
ok: [OpenStack] => (item=enable_searchlight_False)
ok: [OpenStack] => (item=enable_senlin_False)
ok: [OpenStack] => (item=enable_skydive_False)
ok: [OpenStack] => (item=enable_solum_False)
ok: [OpenStack] => (item=enable_storm_False)
ok: [OpenStack] => (item=enable_swift_False)
ok: [OpenStack] => (item=enable_tacker_False)
ok: [OpenStack] => (item=enable_telegraf_False)
ok: [OpenStack] => (item=enable_tempest_False)
ok: [OpenStack] => (item=enable_trove_False)
ok: [OpenStack] => (item=enable_vitrage_False)
ok: [OpenStack] => (item=enable_vmtp_False)
ok: [OpenStack] => (item=enable_watcher_False)
ok: [OpenStack] => (item=enable_zookeeper_False)
ok: [OpenStack] => (item=enable_zun_False)

PLAY [Apply role prechecks] *****

TASK [prechecks : include_tasks] ****
included: /opt/python3/ansible/roles/prechecks/tasks/host_os_checks.yml for OpenStack

TASK [prechecks : Checking host OS distribution] ****
skipping: [OpenStack]

TASK [prechecks : Checking host OS release or version] **
fatal: [OpenStack]: FAILED! => {"changed": false, "msg": "CentOS release Core version 7.8 is not supported. Supported releases are: 8"}

PLAY RECAP **
OpenStack : ok=5 changed=2 unreachable=0 failed=1 skipped=1 rescued=0 ignored=0

Command failed ansible-playbook -i /etc/kolla/all-in-one -e @/etc/kolla/globals.yml -e @/etc/kolla/passwords.yml -e CONFIG_DIR=/etc/kolla -e kolla_action=precheck /opt/python3/ansible/site.yml
[root@localhost googlebigtable]#

OpenStack    Ussuri  安装的OS环境要求初探

猜你喜欢

转载自blog.51cto.com/6286393/2517861