I'm running a Kolla-Ansible 9.1.0 deployment of Train on CentOS 8 and I'm running into the following issue. The deployment fails at the `RUNNING HANDLER [elasticsearch : Restart elasticsearch container]` play. Below is the "log" for the play itself when it fails:
RUNNING HANDLER [elasticsearch : Restart elasticsearch container] ****************************************************************************************************************************
task path: /home/nomad/openstack/share/kolla-ansible/ansible/roles/elasticsearch/handlers/main.yml:2
<localhost> ESTABLISH LOCAL CONNECTION FOR USER: nomad
<localhost> EXEC /bin/sh -c 'echo ~nomad && sleep 0'
<localhost> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/nomad/.ansible/tmp `"&& mkdir /home/nomad/.ansible/tmp/ansible-tmp-1589322933.7655256-5122-96496832711461 && echo ansible-tm
p-1589322933.7655256-5122-96496832711461="` echo /home/nomad/.ansible/tmp/ansible-tmp-1589322933.7655256-5122-96496832711461 `" ) && sleep 0'
Using module file /home/nomad/openstack/share/kolla-ansible/ansible/library/kolla_docker.py
<localhost> PUT /home/nomad/.ansible/tmp/ansible-local-32237tzfv1ojq/tmp8b02406h TO /home/nomad/.ansible/tmp/ansible-tmp-1589322933.7655256-5122-96496832711461/AnsiballZ_kolla_docker.py
<localhost> EXEC /bin/sh -c 'chmod u+x /home/nomad/.ansible/tmp/ansible-tmp-1589322933.7655256-5122-96496832711461/ /home/nomad/.ansible/tmp/ansible-tmp-1589322933.7655256-5122-9649683271146
1/AnsiballZ_kolla_docker.py && sleep 0'
<localhost> EXEC /bin/sh -c 'sudo -H -S -n -u root /bin/sh -c '"'"'echo BECOME-SUCCESS-bxddilegdiwbgoxrnbkeemcurjdwzkjn ; /usr/libexec/platform-python /home/nomad/.ansible/tmp/ansible-tmp-1
589322933.7655256-5122-96496832711461/AnsiballZ_kolla_docker.py'"'"' && sleep 0'
<localhost> EXEC /bin/sh -c 'rm -f -r /home/nomad/.ansible/tmp/ansible-tmp-1589322933.7655256-5122-96496832711461/ > /dev/null 2>&1 && sleep 0'
The full traceback is:
File "/tmp/ansible_kolla_docker_payload_o0xmgzm2/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py", line 1024, in main
File "/tmp/ansible_kolla_docker_payload_o0xmgzm2/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py", line 747, in recreate_or_restart_container
File "/tmp/ansible_kolla_docker_payload_o0xmgzm2/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py", line 765, in start_container
File "/tmp/ansible_kolla_docker_payload_o0xmgzm2/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py", line 571, in pull_image
File "/usr/local/lib/python3.6/site-packages/docker/api/image.py", line 415, in pull
self._raise_for_status(response)
File "/usr/local/lib/python3.6/site-packages/docker/api/client.py", line 263, in _raise_for_status
raise create_api_error_from_http_exception(e)
File "/usr/local/lib/python3.6/site-packages/docker/errors.py", line 31, in create_api_error_from_http_exception
raise cls(e, response=response, explanation=explanation)
fatal: [localhost]: FAILED! => {
"changed": true,
"invocation": {
"module_args": {
"action": "recreate_or_restart_container",
"api_version": "auto",
"auth_email": null,
"auth_password": null,
"auth_registry": null,
"auth_username": null,
"cap_add": [],
"client_timeout": 120,
"command": null,
"detach": true,
"dimensions": {},
"environment": {
"ES_JAVA_OPTS": "-Xms1G -Xmx1G",
"KOLLA_CONFIG_STRATEGY": "COPY_ALWAYS"
},
"graceful_timeout": 10,
"image": "kolla/centos-source-elasticsearch:train-centos8",
"labels": {},
"name": "elasticsearch",
"privileged": false,
"remove_on_exit": true,
"restart_policy": "unless-stopped",
"restart_retries": 10,
"security_opt": [],
"state": "running",
"tls_cacert": null,
"tls_cert": null,
"tls_key": null,
"tls_verify": false,
"tty": false,
"volumes": [
"/etc/kolla/elasticsearch/:/var/lib/kolla/config_files/",
"/etc/localtime:/etc/localtime:ro",
"",
"elasticsearch:/var/lib/elasticsearch/data"
],
"volumes_from": null
}
},
"msg": "'Traceback (most recent call last):\\n File \"/usr/local/lib/python3.6/site-packages/docker/api/client.py\", line 261, in _raise_for_status\\n response.raise_for_status()\\n
File \"/usr/local/lib/python3.6/site-packages/requests/models.py\", line 941, in raise_for_status\\n raise HTTPError(http_error_msg, response=self)\\nrequests.exceptions.HTTPError: 404 C
lient Error: Not Found for url: http+docker://localhost/v1.40/images/create?tag=train-centos8&fromImage=kolla%2Fcentos-source-elasticsearch\\n\\nDuring handling of the above exception, anoth
er exception occurred:\\n\\nTraceback (most recent call last):\\n File \"/tmp/ansible_kolla_docker_payload_o0xmgzm2/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py\", line
1024, in main\\n File \"/tmp/ansible_kolla_docker_payload_o0xmgzm2/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py\", line 747, in recreate_or_restart_container\\n File \"
/tmp/ansible_kolla_docker_payload_o0xmgzm2/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py\", line 765, in start_container\\n File \"/tmp/ansible_kolla_docker_payload_o0xmgzm2/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py\", line 571, in pull_image\\n File \"/usr/local/lib/python3.6/site-packages/docker/api/image.py\", line 415, in pull\\n
self._raise_for_status(response)\\n File \"/usr/local/lib/python3.6/site-packages/docker/api/client.py\", line 263, in _raise_for_status\\n raise create_api_error_from_http_exception(
e)\\n File \"/usr/local/lib/python3.6/site-packages/docker/errors.py\", line 31, in create_api_error_from_http_exception\\n raise cls(e, response=response, explanation=explanation)\\ndocker.errors.NotFound: 404 Client Error: Not Found (\"manifest for kolla/centos-source-elasticsearch:train-centos8 not found: manifest unknown: manifest unknown\")\\n'"
}
META: ran handlers
NO MORE HOSTS LEFT ***************************************************************************************************************************************************************************
PLAY RECAP ***********************************************************************************************************************************************************************************
localhost : ok=96 changed=1 unreachable=0 failed=1 skipped=87 rescued=0 ignored=0
It appears from the message above that when Kolla-Ansible reaches out for the `kolla/centos-source-elasticsearch:train-centos8` container, it does not find it on dockerhub. I went to dockerhub and searched manually and it looks like that docker container tag does not exists. The following information is probably irrevelant but I am including it for completeless.
**Environment**
OS: CentOS 8
Kernel: Linux localhost 4.18.0-147.8.1.el8_1.x86_64 x86_64 x86_64 x86_64 GNU/Linux
Docker Client: Version: 19.03.8
Docker Server: Version: 19.03.8
Kolla-Ansible: Train: 9.1.0
Images: From Docker Hub(Source)
Ansible: 2.9.7(Tagged so I don't used 2.9.8 which appears to have issues at the moment)
Deployment: All-in-One using Python 3 virtual environment
Pip Version: pip 20.1 from python 3.6
If you need any further information, feel free to let me know. Thanks.
I set it critical on the default series because it blocks the migration path as well.
The problem is that the E*K images for Train CentOS 8 were added with a sufffix: elasticsearch6, kibana6: https:/ /review. opendev. org/718696
And kolla-ansible does not know about it.
This was made to allow CentOS 7 to upgrade E*K stack nicely w/o the need to upgrade everything at once.