podman manifest error | status 404 | openstack wallaby

Bug #2003811 reported by swogat pradhan
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
tripleo
Triaged
Low
Brendan Shephard

Bug Description

Hi,
I am currently trying DCN for my openstack and when running the deployment command for the edge site i am getting the following error:

FATAL | Pre-fetch all the containers | dcn01-hci-0 | item=172.25.201.68:8787/tripleomaster/openstack-etcd:current-tripleo | error={"ansible_loop_var": "prefetch_image", "changed": false, "msg": "Failed to pull image 172.25.201.68:8787/tripleomaster/openstack-etcd:current-tripleo", "prefetch_image": "172.25.201.68:8787/tripleomaster/openstack-etcd:current-tripleo"}

Can someone please guide me on how to fix this issue?

When i directly run podman pull on the baremetal node:
Trying to pull 172.25.201.68:8787/tripleomaster/openstack-etcd:current-tripleo...
Error: initializing source docker://172.25.201.68:8787/tripleomaster/openstack-etcd:current-tripleo: reading manifest current-tripleo in 172.25.201.68:8787/tripleomaster/openstack-etcd: StatusCode: 404, <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">...
(undercloud) [stack@hkg2director ~]$

Revision history for this message
swogat pradhan (swogat) wrote :

Hi, can anyone please suggest a workaround or solution for this issue?

swogat pradhan (swogat)
tags: added: podman tripleo-heat-templates wallaby
tags: added: containers
tags: added: confi
tags: added: config-download
removed: confi
Revision history for this message
Brendan Shephard (bshephar) wrote :

Hey Swogat,

We only download images that are used in the roles during the container image prepare step. So the DCN role isn't one of the defaults, we never would have downloaded the etcd container to the undercloud. In the case of etcd, we only download the image if there is a role using the OS::TripleO::Services:Etcd service:
https://github.com/openstack/tripleo-common/blob/master/container-images/tripleo_containers.yaml.j2#L218-L224

You can pass the `--roles-file` argument to the container image prepare command and specify the roles_data.yaml you're using for dcn:

`openstack tripleo container image prepare -e containers-prepare-parameter.yaml --roles-file roles_data.yaml`

https://github.com/openstack/python-tripleoclient/blob/master/tripleoclient/v1/container_image.py#L515-L523

Revision history for this message
Rabi Mishra (rabi) wrote :

Sounds like you're using undercloud local registry. Can you check if you've the image there tagged appropiately i.e docker://172.25.201.68:8787/tripleomaster/openstack-etcd:current-tripleo ?

I suspect the image won't be there. I notice that https://github.com/openstack/tripleo-heat-templates/blob/master/roles/DistributedComputeHCI.yaml role does not have OS::TripleO::Services::ContainerImagePrepare so the etcd container image required OS::TripleO::Services::CinderVolumeEdge won't be available. Looks like a bug.

You can add OS::TripleO::Services::ContainerImagePrepare to
distributed-roles-data.yaml (your copy of tripleo-heat-templates/roles/DistributedComputeHCI.yaml) and re-deploy the edge stack.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to tripleo-heat-templates (stable/zed)
Changed in tripleo:
status: New → Triaged
importance: Undecided → Low
assignee: nobody → Brendan Shephard (bshephar)
milestone: none → zed-1
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to tripleo-heat-templates (stable/zed)

Reviewed: https://review.opendev.org/c/openstack/tripleo-heat-templates/+/876258
Committed: https://opendev.org/openstack/tripleo-heat-templates/commit/d14e005e90331123161ae7d0bfb0953a66d86d2a
Submitter: "Zuul (22348)"
Branch: stable/zed

commit d14e005e90331123161ae7d0bfb0953a66d86d2a
Author: Brendan Shephard <email address hidden>
Date: Fri Mar 3 18:53:07 2023 +1000

    Add CIP to distributed compute roles

    When running DCN, it's necessary to include the DCN role during the
    container image prepare step. Else the etcd containers will never be
    cached on the undercloud registry. This change adds the
    OS::TripleO::Services::ContainerImagePrepare service to each of the
    distributed compute roles.

    Closes-Bug: #2003811
    Change-Id: I6932743cd0674d55075846b1e9d03d0513e7dc65

tags: added: in-stable-zed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.