diff --git a/etc/openstack_deploy/conf.d/ironic.yml.aio b/etc/openstack_deploy/conf.d/ironic.yml.aio index 2703236031..9aafd62230 100644 --- a/etc/openstack_deploy/conf.d/ironic.yml.aio +++ b/etc/openstack_deploy/conf.d/ironic.yml.aio @@ -8,3 +8,7 @@ ironic-infra_hosts: ironic-compute_hosts: aio1: ip: 172.29.236.100 + +ironic-inspector_hosts: + aio1: + ip: 172.29.236.100 diff --git a/etc/openstack_deploy/user_secrets.yml b/etc/openstack_deploy/user_secrets.yml index beb6f062c4..7e932125a7 100644 --- a/etc/openstack_deploy/user_secrets.yml +++ b/etc/openstack_deploy/user_secrets.yml @@ -289,3 +289,9 @@ manila_service_password: # Placement Options placement_service_password: placement_galera_password: + + +#Ironic Inspector options: +ironic_inspector_container_mysql_password: +ironic_inspector_service_password: +ironic_inspector_swift_password: diff --git a/inventory/env.d/ironic.yml b/inventory/env.d/ironic.yml index 5e89466e18..f5a92c061a 100644 --- a/inventory/env.d/ironic.yml +++ b/inventory/env.d/ironic.yml @@ -28,7 +28,9 @@ component_skel: ironic_compute: belongs_to: - nova_all - + ironic_inspector: + belongs_to: + - ironic_all container_skel: ironic_api_container: @@ -55,7 +57,11 @@ container_skel: - neutron_openvswitch_agent properties: is_metal: false - + ironic_inspector_container: + belongs_to: + - ironic-inspector_containers + contains: + - ironic_inspector physical_skel: ironic-infra_containers: @@ -76,3 +82,9 @@ physical_skel: ironic-compute_hosts: belongs_to: - hosts + ironic-inspector_containers: + belongs_to: + - all_containers + ironic-inspector_hosts: + belongs_to: + - hosts diff --git a/inventory/group_vars/haproxy/haproxy.yml b/inventory/group_vars/haproxy/haproxy.yml index 590654fadb..d3f2c30351 100644 --- a/inventory/group_vars/haproxy/haproxy.yml +++ b/inventory/group_vars/haproxy/haproxy.yml @@ -244,6 +244,15 @@ haproxy_default_services: haproxy_backend_options: - "httpchk GET / HTTP/1.0\\r\\nUser-agent:\\ osa-haproxy-healthcheck" haproxy_service_enabled: "{{ groups['ironic_api'] is defined and groups['ironic_api'] | length > 0 }}" + - service: + haproxy_service_name: ironic_inspector + haproxy_backend_nodes: "{{ groups['ironic_inspector'] | default([]) }}" + haproxy_ssl: "{{ haproxy_ssl }}" + haproxy_port: 5050 + haproxy_balance_type: http + haproxy_backend_options: + - "httpchk GET / HTTP/1.0\\r\\nUser-agent:\\ osa-haproxy-healthcheck" + haproxy_service_enabled: "{{ groups['ironic_inspector'] is defined and groups['ironic_inspector'] | length > 0 }}" - service: haproxy_service_name: rabbitmq_mgmt haproxy_backend_nodes: "{{ groups['rabbitmq'] | default([]) }}" diff --git a/inventory/inventory.ini b/inventory/inventory.ini index 0ef7114a14..63deccfda7 100644 --- a/inventory/inventory.ini +++ b/inventory/inventory.ini @@ -73,7 +73,6 @@ ceilometer_collector ceph-mon ceph-osd ceph-rgw - [ceph-mon] [ceph-osd] [ceph-rgw] @@ -122,10 +121,12 @@ ironic_api ironic_compute ironic_conductor ironic_server +ironic_inspector [ironic_api] [ironic_compute] [ironic_conductor] [ironic_server] +[ironic_inspector] [keystone_all] @@ -248,4 +249,3 @@ swift_remote [tacker_all] [trove_all] - diff --git a/tests/roles/bootstrap-host/templates/user_variables.aio.yml.j2 b/tests/roles/bootstrap-host/templates/user_variables.aio.yml.j2 index e575753e51..ebd49d1911 100644 --- a/tests/roles/bootstrap-host/templates/user_variables.aio.yml.j2 +++ b/tests/roles/bootstrap-host/templates/user_variables.aio.yml.j2 @@ -155,6 +155,11 @@ ironic_wsgi_threads: 1 ironic_wsgi_processes_max: 2 ironic_wsgi_processes: 1 +## Ironic Inspector +ironic_inspector_wsgi_threads: 1 +ironic_inspector_wsgi_processes_max: 2 +ironic_inspector_wsgi_processes: 1 + ## Trove trove_api_workers_max: 2 trove_service_net_setup: true @@ -260,3 +265,8 @@ deployment_environment_variables: # must go via the http proxy lxc_container_networks: {} {% endif %} + +{% if 'ironic' in bootstrap_host_scenario %} +# The ironic inspector DHCP address that hands out DHCP offers +ironic_inspector_dhcp_address: 192.168.0.100 +{% endif %} diff --git a/tests/test_inventory.py b/tests/test_inventory.py index a17c336486..c7f1d82e61 100644 --- a/tests/test_inventory.py +++ b/tests/test_inventory.py @@ -258,6 +258,11 @@ class TestAnsibleInventoryFormatConstraints(unittest.TestCase): 'ironic-compute_containers', 'ironic-compute_all', 'ironic-compute_hosts', + 'ironic-inspector_all', + 'ironic_inspector', + 'ironic-inspector_containers', + 'ironic-inspector_hosts', + 'ironic_inspector_container', 'key-manager_containers', 'key-manager_hosts', 'key-manager_all',