Add ironic configuration to baremetal environment#1729
Add ironic configuration to baremetal environment#1729jackhodgkiss wants to merge 3 commits intostackhpc/2025.1from
baremetal environment#1729Conversation
ea94fab to
ba4853e
Compare
|
I'm a big fan of this approach. What do you need to get this out of draft? |
I think there a some further additions that could be included here. Horizon fixes (scopes and configuration drive default) Some documentation. I think something for the SKC docs but also something in environment such as small README.md to summerise what the stack does/doesn't do and what you need to do if include it. |
ba4853e to
44d7661
Compare
44d7661 to
d8b14e4
Compare
d8b14e4 to
75a4a70
Compare
75a4a70 to
ef06398
Compare
Introduce the `stack-ironic` environment mixin. This environment is intended to be used as an environment mixin that other environments depend upon. It implements configuration for the `Ironic` service such that hardware support for `idrac`, `ipmi` and `redfish`. - Drop in support for ironic configuration - Apply sensible tweaks to `ironic` services - Add playbook for adding port groups Signed-off-by: Jack Hodgkiss <jack@stackhpc.com>
9121fb8 to
4c92eae
Compare
oneswig
left a comment
There was a problem hiding this comment.
@jackhodgkiss following a discussion on Friday - if we can rename the environment to be just baremetal, I will merge this and we will build the remaining PRs on top of it.
ironic environment mixinsbaremetal environment
jovial
left a comment
There was a problem hiding this comment.
All looks like great stuff to add. It would be nice to document:
- How to add the nodes into the baremetal- inventory groups. An example should be enough.
- How to configure the portgroups. The variables to need to be set and the inventory group that the hosts must be added to.
| # - Deletion of ports. | ||
| rpc_response_timeout = 360 | ||
| {% endif %} | ||
| force_config_drive = True |
There was a problem hiding this comment.
Could add this only to config/nova/nova-compute-ironic.conf, but part of me likes consistency between baremetal and virtual machines
There was a problem hiding this comment.
Happy with either approach. But will leave as is for now.
| extra_args: "{% if pip_upper_constraints_file %}-c {{ pip_upper_constraints_file }}{% endif %}" | ||
|
|
||
| - name: Ensure Ironic port groups exist | ||
| hosts: baremetal-compute-is-bonded |
There was a problem hiding this comment.
Potentially add baremetal-compute-is-bonded declaration to inventory for ease of discovery.
| @@ -0,0 +1,8 @@ | |||
| [baremetal-idrac] | |||
There was a problem hiding this comment.
Doc with an example of adding a host into these groups would be great. Maybe focus on redfish?
There was a problem hiding this comment.
Good idea but this might be something we need to document as part of the hardware onboarding workflow, and we could defer it until we have other components that build on this work.
| - from {{ internal_net_name | net_cidr }} table 1 | ||
|
|
||
| # IP routes for the admin-api routing table. | ||
| internal_routes: |
There was a problem hiding this comment.
Wonder if we could include:
- cidr: "{{ provision_wl_net_name | net_cidr }}"
gateway: "{{ internal_net_provision_wl_gateway }}"
table: admin-api - cidr: "{{ cleaning_net_name | net_cidr }}"
gateway: "{{ internal_net_cleaning_gateway }}"
table: admin-api
conditionally depending on whether internal_net_provision_wl_gateway and internal_net_cleaning_gateway is defined
Signed-off-by: Jack Hodgkiss <jack@stackhpc.com>
a02b84a to
67c7d92
Compare
Add support for environment mixins that capture the configuration behind
ironicfor bothredfish,idracandipmi. It is expected the users environments will depend onbaremetaland will simply add the nodes to the relevant groups.