Add support for deploying Openstack Baremetal service (Ironic)
As a user of Fuel, I would like to be able to use baremetal compute hosts to deploy a critical workload inside the OpenStack environment created by Fuel.
OpenStack Baremetal service allows deploying workload on baremetal nodes, leveraging their better performance. We should support deploying this service with Fuel.
When appropriate Ironic packages are built and available, approximate list of steps to add such support:
- add general option to Fuel / Fuel UI to deploy OpeStack Baremetal service
- should be available only when Neutron is installed
- add two new roles to Fuel / Fuel UI
- "ironic" - assigned to separate nodes where Ironic Conductor and nova-compute with baremetal driver are deployed
- "baremetal" - (for now empty) role assigned to separate nodes that can be used as barematal compute hosts
- when deploying Ironic the user must assign these roles to at least one separate node each
- add/extend Puppet manifests for deployment and/or configuration of:
- Ironic API on controllers
- Ironic Conductor on "ironic" nodes
- tftp server on these nodes as well
- nova-compute with baremetal driver on "ironic" nodes
- OpenStack Baremetal service to Keystone
These tasks can be tracked as separate blueprints if needed.
There are already upstream puppet manifests for Ironic deployment we could check out
https:/
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Pavlo Shchelokovskyy
- Direction:
- Approved
- Assignee:
- Andrey Shestakov
- Definition:
- Approved
- Series goal:
- Accepted for 8.0.x
- Implementation:
- Implemented
- Milestone target:
- 8.0
- Started by
- Pavlo Shchelokovskyy
- Completed by
- Serge Kovaleff
Related branches
Related bugs
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Blueprint: fuel-integrate-
Addressed by: https:/
add ironic module
Addressed by: https:/
Add ability to override compute_driver
Addressed by: https:/
Add haproxy services for Ironic
Addressed by: https:/
Add ability to set compute_driver for nova compute
Addressed by: https:/
Add ability to set reserved_
Gerrit topic: https:/
Addressed by: https:/
Add ironic module
Addressed by: https:/
Add baremetal network for Ironic
Addressed by: https:/
Add tftp module tag 0.2.3
Addressed by: https:/
Enable ironic in MOS
Addressed by: https:/
Enable Ironic in MOS
Addressed by: https:/
Add tftp module
Addressed by: https:/
Add haproxy services for Ironic
Addressed by: https:/
Set openstack-contoller parameters for ironic
Addressed by: https:/
Add ironic module
Addressed by: https:/
[Ironic] Add ironic conductor and compute
Addressed by: https:/
[Ironic] Add baremetal network for ironic
Addressed by: https:/
Add ironic_base test case
Addressed by: https:/
Add ironic_base test case
Addressed by: https:/
[Ironic] Add firewall rules for baremetal network
Addressed by: https:/
[Ironic] Add ironic logs collector
Addressed by: https:/
[Ironic] Add baremetal network for ironic
Addressed by: https:/
[Ironic] enable fuel_ssh fuel_ipmitool drivers
Addressed by: https:/
[Ironic] build bootstrap
Addressed by: https:/
[Ironic] generate bootstrap
Gerrit topic: https:/
Addressed by: https:/
Change bootstrap file permissions
Addressed by: https:/
[Ironic] add configs for noop tests
Gerrit topic: https:/
Addressed by: https:/
Add restrictions for network groups
Addressed by: https:/
DNM serialize net roles depends on deployment tasks
Addressed by: https:/
[Ironic] Add network roles for ironic
Addressed by: https:/
[Ironic] Add transformations for Ironic
Addressed by: https:/
Add network_roles attribute to deployment tasks
Addressed by: https:/
DNM move change_
Addressed by: https:/
Add checks for network roles default mapping
Addressed by: https:/
Add vendor_specific parameter to VIPs meta
Addressed by: https:/
[Ironic] Enable RadosGW support for Ironic
Addressed by: https:/
[Ironic] Add haproxy service for RadosGW on baremetal network
Addressed by: https:/
[Ironic] Fix RadosGW haproxy service configuration
Addressed by: https:/
[Ironic] Configure Swift as Glance backend when Ironic enabled
Addressed by: https:/
[Ironic] Configure neutron-server only on controllers
Addressed by: https:/
[Ironic] Add enable_rados to requirments for irnic_post_
Addressed by: https:/
[Ironic] Fix volumes metadata for ironic role
Addressed by: https:/
Revert "[Ironic] Configure neutron-server only on controllers"
Addressed by: https:/
[Ironic] Configure neutron-server only on controllers
Addressed by: https:/
Add possibility to use data from different fixtures
Addressed by: https:/
Fix baremetal allocation pools
Gerrit topic: https:/
Work Items
Work items:
Add general switch to deploy Ironic (Fuel): TODO
Add general switch to deploy Ironic (FuelUI): TODO
Add and configure new roles: TODO
Deploy and configure Ironic API: TODO
Deploy and configure Ironic Conductor: TODO
Deploy and configure dedicated baremetal nova-compute: TODO
Add Baremetal service to Keystone: TODO
Dependency tree
* Blueprints in grey have been implemented.