[kolla] local registry setup issue

Satish Patel satish.txt at gmail.com
Sat Jan 28 20:22:30 UTC 2023


Nevermind, figured it out


$ docker pull quay.io/openstack.kolla/ubuntu-source-nova-ssh:yoga
$ docker tag quay.io/openstack.kolla/ubuntu-source-nova-ssh:yoga "
10.73.0.181:4000"/openstack.kolla/ubuntu-source-nova-ssh
$ docker push "10.73.0.181:4000"/openstack.kolla/ubuntu-source-nova-ssh

I have a question related to the registry so let's say if I don't have a
local registry in that case, does kolla always pull new images when
running  $ kolla-ansible -i multinode deploy ?

Are there any best practices for local registry in production?  like
download images and push them to local-registry with specific tags to keep
track or patch etc?



On Sat, Jan 28, 2023 at 3:07 PM Satish Patel <satish.txt at gmail.com> wrote:

> Great!! I don't know how I missed that part. It seems working but related
> to i got following error
>
> 10.73.0.181:4000/openstack.kolla/ubuntu-source-nova-ssh:yoga not found:
> manifest unknown
>
> I have checked and found I don't have that image in the registry. How do I
> download that image from quay.io and push it to the local registry?
>
>
>
> On Fri, Jan 27, 2023 at 11:59 PM Tobias McNulty <tobias at caktusgroup.com>
> wrote:
>
>> You might need to configure daemon.json as described here:
>> https://docs.openstack.org/kolla-ansible/rocky/user/multinode.html#configure-docker-on-all-nodes
>>
>> On Fri, Jan 27, 2023, 11:46 PM Satish Patel <satish.txt at gmail.com> wrote:
>>
>>> Folks,
>>>
>>> I have set up a local registry using the following method as per
>>> official doc.
>>>
>>> docker run -d \
>>>  --network host \
>>>  --name registry \
>>>  --restart=always \
>>>  -e REGISTRY_HTTP_ADDR=0.0.0.0:4000 \
>>>  -v registry:/var/lib/registry \
>>>  registry:2
>>>
>>> After that I ran the following command to import all images to the local
>>> registry.
>>>
>>> docker images | grep kolla | grep -v local | awk '{print $1,$2}' | while
>>> read -r image tag; do
>>>     new_image_name=${image#"quay.io/"}
>>>     docker tag ${image}:${tag} "localhost:4000"/${new_image_name}:${tag}
>>>     docker push localhost:4000/${new_image_name}:${tag}
>>> done
>>>
>>>
>>> Now i can see images in local registry using docker images command
>>>
>>> (venv-kolla) root at kolla-infra-1:/etc/kolla# docker images | grep
>>> localhost
>>> localhost:4000/openstack.kolla/ubuntu-source-nova-novncproxy
>>>       yoga      01dc100dc65a   2 days ago     1.2GB
>>> localhost:4000/openstack.kolla/ubuntu-source-horizon
>>>       yoga      a016e1f5b9af   2 days ago     1.1GB
>>> localhost:4000/openstack.kolla/ubuntu-source-nova-conductor
>>>        yoga      381a64a368bd   2 days ago     1.11GB
>>> localhost:4000/openstack.kolla/ubuntu-source-nova-api
>>>        yoga      f90a15a09142   2 days ago     1.11GB
>>> ....
>>> ....
>>>
>>>
>>> I have added it in global.yml
>>>
>>> docker_registry: 10.73.0.181:4000
>>> docker_registry_insecure: yes
>>>
>>>
>>> Now when i am trying to add compute nodes then I get a registry error
>>> like the following. Not sure why its trying to use
>>> https://10.73.0.181:4000/v2 instead of http;//
>>>
>>> TASK [common : include_tasks]
>>> ****************************************************************************************************************************************************
>>> included:
>>> /root/venv-kolla/share/kolla-ansible/ansible/roles/common/tasks/pull.yml
>>> for kolla-comp-2
>>>
>>> TASK [service-images-pull : common | Pull images]
>>> ********************************************************************************************************************************
>>> FAILED - RETRYING: common | Pull images (3 retries left).
>>> FAILED - RETRYING: common | Pull images (2 retries left).
>>> FAILED - RETRYING: common | Pull images (1 retries left).
>>> failed: [kolla-comp-2] (item=fluentd) => {"ansible_loop_var": "item",
>>> "attempts": 3, "changed": true, "item": {"key": "fluentd", "value":
>>> {"container_name": "fluentd", "dimensions": {}, "enabled": true,
>>> "environment": {"KOLLA_CONFIG_STRATEGY": "COPY_ALWAYS"}, "group":
>>> "fluentd", "image": "
>>> 10.73.0.181:4000/openstack.kolla/ubuntu-source-fluentd:yoga",
>>> "volumes": ["/etc/kolla/fluentd/:/var/lib/kolla/config_files/:ro",
>>> "/etc/localtime:/etc/localtime:ro", "/etc/timezone:/etc/timezone:ro",
>>> "kolla_logs:/var/log/kolla/", "fluentd_data:/var/lib/fluentd/data/"]}},
>>> "msg": "'Traceback (most recent call last):\\n  File
>>> \"/usr/lib/python3/dist-packages/docker/api/client.py\", line 261, in
>>> _raise_for_status\\n    response.raise_for_status()\\n  File
>>> \"/usr/lib/python3/dist-packages/requests/models.py\", line 940, in
>>> raise_for_status\\n    raise HTTPError(http_error_msg,
>>> response=self)\\nrequests.exceptions.HTTPError: 500 Server Error: Internal
>>> Server Error for url:
>>> http+docker://localhost/v1.41/images/create?tag=yoga&fromImage=10.73.0.181%3A4000%2Fopenstack.kolla%2Fubuntu-source-fluentd\\n\\nDuring
>>> handling of the above exception, another exception occurred:\\n\\nTraceback
>>> (most recent call last):\\n  File
>>> \"/tmp/ansible_kolla_docker_payload_6o9nw9xd/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py\",
>>> line 381, in main\\n  File
>>> \"/tmp/ansible_kolla_docker_payload_6o9nw9xd/ansible_kolla_docker_payload.zip/ansible/module_utils/kolla_docker_worker.py\",
>>> line 450, in pull_image\\n    json.loads(line.strip().decode(\\'utf-8\\'))
>>> for line in self.dc.pull(\\n  File
>>> \"/usr/lib/python3/dist-packages/docker/api/image.py\", line 415, in
>>> pull\\n    self._raise_for_status(response)\\n  File
>>> \"/usr/lib/python3/dist-packages/docker/api/client.py\", line 263, in
>>> _raise_for_status\\n    raise create_api_error_from_http_exception(e)\\n
>>>  File \"/usr/lib/python3/dist-packages/docker/errors.py\", line 31, in
>>> create_api_error_from_http_exception\\n    raise cls(e, response=response,
>>> explanation=explanation)\\ndocker.errors.APIError: 500 Server Error:
>>> Internal Server Error (\"Get \"https://10.73.0.181:4000/v2/\": http:
>>> server gave HTTP response to HTTPS client\")\\n'"}
>>> FAILED - RETRYING: common | Pull images (3 retries left).
>>>
>>>
>>>
>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.openstack.org/pipermail/openstack-discuss/attachments/20230128/1c8ab71f/attachment.htm>


More information about the openstack-discuss mailing list