[Tripleo] - Provisioning Baremetal Instances in Wallaby Openstack

Harald Jensas hjensas at redhat.com
Tue Jun 7 13:31:47 UTC 2022


On 6/7/22 14:32, Harald Jensas wrote:
> On 6/7/22 11:49, Anirudh Gupta wrote:
>> Hi Harald/Julia/Openstack Team
>>
>> I had successfully installed Ironic Service in Tripleo Train, Ussuri 
>> Release with the help of openstack discuss team members.
>>
>> https://lists.openstack.org/pipermail/openstack-discuss/2022-February/027047.html 
>> <https://lists.openstack.org/pipermail/openstack-discuss/2022-February/027047.html> 
>>
>>
>> I had custom network configuration for which I had passed Service net 
>> map as below in network-environment file.
>>
>> parameter_defaults:
>>    ServiceNetMap:
>>      IronicApiNetwork: oc_provisioning
>>      IronicNetwork: oc_provisioning
>>
>> But with the Wallaby Release, since the deployment format has changed 
>> There is no network-environment file.
>>
>> So I tried passing it in a separate environment.yaml file along with 
>> the templates.
>> Command to deploy  in wallaby:
>>
>> openstack overcloud deploy --templates \
>>      --networks-file /home/stack/templates/custom_network_data.yaml \
>>      --vip-file  /home/stack/templates/custom_vip_data.yaml \
>>      --baremetal-deployment 
>>   /home/stack/templates/overcloud-baremetal-deploy.yaml 
>> --deployed-server \
>>      --network-config \
>>      -e /home/stack/templates/environment.yaml \
>>      -e 
>> /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml 
>> \
>>      -e 
>> /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml 
>> \
>>      -e 
>> /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml 
>> \
>>      -e /home/stack/templates/ironic-config.yaml \
>>      -e 
>> /usr/share/openstack-tripleo-heat-templates/environments/services/ptp.yaml 
>> \
>>      -e 
>> /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \
>>      -e 
>> /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \
>>      -e /home/stack/containers-prepare-parameter.yaml
>>
>> Without Service Net Map, deployment was successful but TFTP of image 
>> was an issue since we are going with custom network approach.
>>
>> Passing Service Net map details in a seperate file environment.yaml, 
>> is giving the below error:
>>
>> 24d-f43f-6f76-000000006ce9 | TASK | Create containers managed by 
>> Podman for /var/lib/tripleo-config/container-startup-config/step_3
>> 2022-06-07 11:16:46.806982 | | WARNING | ERROR: Can't run container 
>> ironic_db_sync
>> stderr: Error: statfs 
>> /var/lib/config-data/puppet-generated/ironic_api: no such file or 
>> directory
>> 2022-06-07 11:16:46.809252 | 525400fd-f24d-f43f-6f76-000000006c79 | 
>> FATAL | Create containers managed by Podman for 
>> /var/lib/tripleo-config/container-startup-config/step_3 | 
>> overcloud-controller-1 | error={"changed": false, "msg": "Failed 
>> containers: ironic_db_sync"}
>> 2022-06-07 11:16:46.810197 | 525400fd-f24d-f43f-6f76-000000006c79 | 
>> TIMING | tripleo_container_manage : Create containers managed by 
>> Podman for /var/lib/tripleo-config/container-startup-config/step_3 | 
>> overcloud-controller-1 | 0:11:40.574944 | 10.62s
>> 2022-06-07 11:16:47.683400 | | WARNING | ERROR: Can't run container 
>> ironic_db_sync
>> stderr: Error: statfs 
>> /var/lib/config-data/puppet-generated/ironic_api: no such file or 
>> directory
>> 2022-06-07 11:16:47.684455 | 525400fd-f24d-f43f-6f76-000000006ce9 | 
>> FATAL | Create containers managed by Podman for 
>> /var/lib/tripleo-config/container-startup-config/step_3 | 
>> overcloud-controller-2 | error={"changed": false, "msg": "Failed 
>> containers: ironic_db_sync"}
>>
>> Can you please suggest the place we can pass the service net map 
>> details in Wallaby Release to resolve this issue?
>>
> 
> You should be able to pass it in any of the environment files, like you 
> did. Can you try adding the following to the environment file where you 
> override the ServiceNetMap?
> 
> parameter_merge_strategies:
>    ServiceNetMap: merge
> 

Actually, my bad. (Thanks Rabi for reminding me on IRC.) The merge 
strategies is after a change in master. With Wallaby we still have 
ServiceNetMapDefaults which is merged with overrides in ServiceNetMap.

AFICT from this error ...

 > 2022-06-07 11:16:47.683400 | | WARNING | ERROR: Can't run container
 > ironic_db_sync
 > stderr: Error: statfs
 > /var/lib/config-data/puppet-generated/ironic_api: no such file or
 > directory

... it did not execute $THT/common/container-puppet.sh for the 
ironic_api service correctly.

Could it be because you don't use a custom roles file?
The default[1] role file does not have the `oc_provisioning` 
provisioning network. I wonder if some task is skipped because the node 
is not on the network the service is mapped to. Can you try using a 
custom roles file with the `oc_provisioning` network defined on the 
controller role?

I think we probably need more information to understand the problem. 
Would it be possible to share more data? i.e full deploy log, all custom 
environment files?

Thanks!

[1] https://opendev.org/openstack/tripleo-heat-templates/src/branch/stable/wallaby/roles_data.yaml#L18




More information about the openstack-discuss mailing list