From e8025b3cb8550525321d3d9d2abf238311c4518b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rados=C5=82aw=20Piliszek?= Date: Fri, 4 Mar 2022 21:21:42 +0100 Subject: [PATCH] Ironic: rename containers Change-Id: I8e4096d7136d0ce9e54f1af0bb9ba110487fb35b --- ansible/group_vars/all.yml | 2 +- ansible/inventory/all-in-one | 4 +- ansible/inventory/multinode | 4 +- ansible/roles/ironic/defaults/main.yml | 64 +++++++++---------- ansible/roles/ironic/handlers/main.yml | 8 +-- .../roles/ironic/tasks/bootstrap_service.yml | 12 ++-- ansible/roles/ironic/tasks/config.yml | 40 ++++++------ ansible/roles/ironic/tasks/precheck.yml | 14 ++-- ansible/roles/ironic/tasks/upgrade.yml | 14 ++++ .../roles/ironic/templates/inspector.ipxe.j2 | 4 +- .../ironic/templates/ironic-dnsmasq.conf.j2 | 2 +- ...ttpd.conf.j2 => ironic-http-httpd.conf.j2} | 8 +-- ...ronic-ipxe.json.j2 => ironic-http.json.j2} | 0 ...ironic-pxe.json.j2 => ironic-tftp.json.j2} | 0 ansible/roles/ironic/templates/ironic.conf.j2 | 2 +- ansible/site.yml | 4 +- .../reference/bare-metal/ironic-guide.rst | 10 +-- .../notes/ironic-rename-61f8b1d0cb34a36f.yaml | 11 ++++ tests/templates/inventory.j2 | 4 +- 19 files changed, 118 insertions(+), 89 deletions(-) rename ansible/roles/ironic/templates/{ironic-ipxe-httpd.conf.j2 => ironic-http-httpd.conf.j2} (68%) rename ansible/roles/ironic/templates/{ironic-ipxe.json.j2 => ironic-http.json.j2} (100%) rename ansible/roles/ironic/templates/{ironic-pxe.json.j2 => ironic-tftp.json.j2} (100%) create mode 100644 releasenotes/notes/ironic-rename-61f8b1d0cb34a36f.yaml diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml index 7c650dd11d..f87dd84f60 100644 --- a/ansible/group_vars/all.yml +++ b/ansible/group_vars/all.yml @@ -352,7 +352,7 @@ ironic_inspector_internal_fqdn: "{{ kolla_internal_fqdn }}" ironic_inspector_external_fqdn: "{{ kolla_external_fqdn }}" ironic_inspector_port: "5050" ironic_inspector_listen_port: "{{ ironic_inspector_port }}" -ironic_ipxe_port: "8089" +ironic_http_port: "8089" iscsi_port: "3260" diff --git a/ansible/inventory/all-in-one b/ansible/inventory/all-in-one index f7aa2101ae..852a46ae4e 100644 --- a/ansible/inventory/all-in-one +++ b/ansible/inventory/all-in-one @@ -444,10 +444,10 @@ ironic [ironic-inspector:children] ironic -[ironic-pxe:children] +[ironic-tftp:children] ironic -[ironic-ipxe:children] +[ironic-http:children] ironic # Magnum diff --git a/ansible/inventory/multinode b/ansible/inventory/multinode index 04dfe199c2..c0b10f3325 100644 --- a/ansible/inventory/multinode +++ b/ansible/inventory/multinode @@ -452,10 +452,10 @@ ironic [ironic-inspector:children] ironic -[ironic-pxe:children] +[ironic-tftp:children] ironic -[ironic-ipxe:children] +[ironic-http:children] ironic # Magnum diff --git a/ansible/roles/ironic/defaults/main.yml b/ansible/roles/ironic/defaults/main.yml index 242fd2fb7c..ba80c617a4 100644 --- a/ansible/roles/ironic/defaults/main.yml +++ b/ansible/roles/ironic/defaults/main.yml @@ -54,26 +54,26 @@ ironic_services: external: true port: "{{ ironic_inspector_port }}" listen_port: "{{ ironic_inspector_listen_port }}" - ironic-pxe: - container_name: ironic_pxe - group: ironic-pxe + ironic-tftp: + container_name: ironic_tftp + group: ironic-tftp enabled: true image: "{{ ironic_pxe_image_full }}" environment: TFTPBOOT_PATH: /var/lib/ironic/tftpboot HTTPBOOT_PATH: /var/lib/ironic/httpboot - volumes: "{{ ironic_pxe_default_volumes + ironic_pxe_extra_volumes }}" - dimensions: "{{ ironic_pxe_dimensions }}" - ironic-ipxe: - container_name: ironic_ipxe - group: ironic-ipxe + volumes: "{{ ironic_tftp_default_volumes + ironic_tftp_extra_volumes }}" + dimensions: "{{ ironic_tftp_dimensions }}" + ironic-http: + container_name: ironic_http + group: ironic-http # NOTE(mgoddard): This container is always enabled, since may be used by # the direct deploy driver. enabled: true image: "{{ ironic_pxe_image_full }}" - volumes: "{{ ironic_ipxe_default_volumes + ironic_ipxe_extra_volumes }}" - dimensions: "{{ ironic_ipxe_dimensions }}" - healthcheck: "{{ ironic_ipxe_healthcheck }}" + volumes: "{{ ironic_http_default_volumes + ironic_http_extra_volumes }}" + dimensions: "{{ ironic_http_dimensions }}" + healthcheck: "{{ ironic_http_healthcheck }}" ironic-dnsmasq: container_name: ironic_dnsmasq group: ironic-inspector @@ -125,8 +125,8 @@ ironic_dnsmasq_image_full: "{{ ironic_dnsmasq_image }}:{{ ironic_dnsmasq_tag }}" ironic_api_dimensions: "{{ default_container_dimensions }}" ironic_conductor_dimensions: "{{ default_container_dimensions }}" -ironic_pxe_dimensions: "{{ default_container_dimensions }}" -ironic_ipxe_dimensions: "{{ default_container_dimensions }}" +ironic_tftp_dimensions: "{{ default_container_dimensions }}" +ironic_http_dimensions: "{{ default_container_dimensions }}" ironic_inspector_dimensions: "{{ default_container_dimensions }}" ironic_dnsmasq_dimensions: "{{ default_container_dimensions }}" @@ -169,18 +169,18 @@ ironic_inspector_healthcheck: test: "{% if ironic_inspector_enable_healthchecks | bool %}{{ ironic_inspector_healthcheck_test }}{% else %}NONE{% endif %}" timeout: "{{ ironic_inspector_healthcheck_timeout }}" -ironic_ipxe_enable_healthchecks: "{{ enable_container_healthchecks }}" -ironic_ipxe_healthcheck_interval: "{{ default_container_healthcheck_interval }}" -ironic_ipxe_healthcheck_retries: "{{ default_container_healthcheck_retries }}" -ironic_ipxe_healthcheck_start_period: "{{ default_container_healthcheck_start_period }}" -ironic_ipxe_healthcheck_test: ["CMD-SHELL", "healthcheck_listen {% if kolla_base_distro in ['debian', 'ubuntu'] %}apache2{% else %}httpd{% endif %} {{ ironic_ipxe_port }}"] -ironic_ipxe_healthcheck_timeout: "{{ default_container_healthcheck_timeout }}" -ironic_ipxe_healthcheck: - interval: "{{ ironic_ipxe_healthcheck_interval }}" - retries: "{{ ironic_ipxe_healthcheck_retries }}" - start_period: "{{ ironic_ipxe_healthcheck_start_period }}" - test: "{% if ironic_ipxe_enable_healthchecks | bool %}{{ ironic_ipxe_healthcheck_test }}{% else %}NONE{% endif %}" - timeout: "{{ ironic_ipxe_healthcheck_timeout }}" +ironic_http_enable_healthchecks: "{{ enable_container_healthchecks }}" +ironic_http_healthcheck_interval: "{{ default_container_healthcheck_interval }}" +ironic_http_healthcheck_retries: "{{ default_container_healthcheck_retries }}" +ironic_http_healthcheck_start_period: "{{ default_container_healthcheck_start_period }}" +ironic_http_healthcheck_test: ["CMD-SHELL", "healthcheck_listen {% if kolla_base_distro in ['debian', 'ubuntu'] %}apache2{% else %}httpd{% endif %} {{ ironic_http_port }}"] +ironic_http_healthcheck_timeout: "{{ default_container_healthcheck_timeout }}" +ironic_http_healthcheck: + interval: "{{ ironic_http_healthcheck_interval }}" + retries: "{{ ironic_http_healthcheck_retries }}" + start_period: "{{ ironic_http_healthcheck_start_period }}" + test: "{% if ironic_http_enable_healthchecks | bool %}{{ ironic_http_healthcheck_test }}{% else %}NONE{% endif %}" + timeout: "{{ ironic_http_healthcheck_timeout }}" ironic_api_default_volumes: - "{{ node_config_directory }}/ironic-api/:{{ container_config_directory }}/:ro" @@ -199,14 +199,14 @@ ironic_conductor_default_volumes: - "kolla_logs:/var/log/kolla" - "ironic:/var/lib/ironic" - "{{ kolla_dev_repos_directory ~ '/ironic/ironic:/var/lib/kolla/venv/lib/python' ~ distro_python_version ~ '/site-packages/ironic' if ironic_dev_mode | bool else '' }}" -ironic_pxe_default_volumes: - - "{{ node_config_directory }}/ironic-pxe/:{{ container_config_directory }}/:ro" +ironic_tftp_default_volumes: + - "{{ node_config_directory }}/ironic-tftp/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "ironic:/var/lib/ironic" - "kolla_logs:/var/log/kolla" -ironic_ipxe_default_volumes: - - "{{ node_config_directory }}/ironic-ipxe/:{{ container_config_directory }}/:ro" +ironic_http_default_volumes: + - "{{ node_config_directory }}/ironic-http/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "ironic:/var/lib/ironic" @@ -228,8 +228,8 @@ ironic_dnsmasq_default_volumes: ironic_extra_volumes: "{{ default_extra_volumes }}" ironic_api_extra_volumes: "{{ ironic_extra_volumes }}" ironic_conductor_extra_volumes: "{{ ironic_extra_volumes }}" -ironic_pxe_extra_volumes: "{{ ironic_extra_volumes }}" -ironic_ipxe_extra_volumes: "{{ ironic_extra_volumes }}" +ironic_tftp_extra_volumes: "{{ ironic_extra_volumes }}" +ironic_http_extra_volumes: "{{ ironic_extra_volumes }}" ironic_inspector_extra_volumes: "{{ ironic_extra_volumes }}" ironic_dnsmasq_extra_volumes: "{{ ironic_extra_volumes }}" @@ -258,7 +258,7 @@ ironic_dnsmasq_boot_file: "{% if enable_ironic_ipxe | bool %}undionly.kpxe{% els ironic_dnsmasq_uefi_ipxe_boot_file: "snponly.efi" ironic_cleaning_network: ironic_console_serial_speed: "115200n8" -ironic_ipxe_url: "http://{{ api_interface_address | put_address_in_context('url') }}:{{ ironic_ipxe_port }}" +ironic_http_url: "http://{{ api_interface_address | put_address_in_context('url') }}:{{ ironic_http_port }}" ironic_enable_rolling_upgrade: "yes" ironic_upgrade_skip_wait_check: false ironic_inspector_kernel_cmdline_extras: [] diff --git a/ansible/roles/ironic/handlers/main.yml b/ansible/roles/ironic/handlers/main.yml index 1f38e2e2fb..542324ff9f 100644 --- a/ansible/roles/ironic/handlers/main.yml +++ b/ansible/roles/ironic/handlers/main.yml @@ -69,9 +69,9 @@ when: - kolla_action != "config" -- name: Restart ironic-pxe container +- name: Restart ironic-tftp container vars: - service_name: "ironic-pxe" + service_name: "ironic-tftp" service: "{{ ironic_services[service_name] }}" become: true kolla_docker: @@ -85,9 +85,9 @@ when: - kolla_action != "config" -- name: Restart ironic-ipxe container +- name: Restart ironic-http container vars: - service_name: "ironic-ipxe" + service_name: "ironic-http" service: "{{ ironic_services[service_name] }}" become: true kolla_docker: diff --git a/ansible/roles/ironic/tasks/bootstrap_service.yml b/ansible/roles/ironic/tasks/bootstrap_service.yml index d8149d3310..cfb451cd05 100644 --- a/ansible/roles/ironic/tasks/bootstrap_service.yml +++ b/ansible/roles/ironic/tasks/bootstrap_service.yml @@ -45,9 +45,9 @@ delegate_to: "{{ groups[ironic_inspector.group][0] }}" when: inventory_hostname in groups[ironic_inspector.group] -- name: Running Ironic-PXE bootstrap container +- name: Running ironic-tftp bootstrap container vars: - ironic_pxe: "{{ ironic_services['ironic-pxe'] }}" + ironic_tftp: "{{ ironic_services['ironic-tftp'] }}" become: true kolla_docker: action: "start_container" @@ -58,10 +58,10 @@ HTTPBOOT_PATH: /var/lib/ironic/httpboot KOLLA_BOOTSTRAP: KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}" - image: "{{ ironic_pxe.image }}" + image: "{{ ironic_tftp.image }}" labels: BOOTSTRAP: - name: "bootstrap_ironic_pxe" + name: "bootstrap_ironic_tftp" restart_policy: no - volumes: "{{ ironic_pxe.volumes }}" - when: inventory_hostname in groups[ironic_pxe.group] + volumes: "{{ ironic_tftp.volumes }}" + when: inventory_hostname in groups[ironic_tftp.group] diff --git a/ansible/roles/ironic/tasks/config.yml b/ansible/roles/ironic/tasks/config.yml index fc7b24156d..7b9cab1b83 100644 --- a/ansible/roles/ironic/tasks/config.yml +++ b/ansible/roles/ironic/tasks/config.yml @@ -127,10 +127,10 @@ - name: Copying pxelinux.cfg default vars: - service: "{{ ironic_services['ironic-pxe'] }}" + service: "{{ ironic_services['ironic-tftp'] }}" template: src: "{{ item }}" - dest: "{{ node_config_directory }}/ironic-pxe/default" + dest: "{{ node_config_directory }}/ironic-tftp/default" mode: "0660" become: true with_first_found: @@ -145,14 +145,14 @@ - not enable_ironic_pxe_uefi | bool - not enable_ironic_ipxe | bool notify: - - Restart ironic-pxe container + - Restart ironic-tftp container - name: Copying ironic_pxe_uefi.cfg default vars: - service: "{{ ironic_services['ironic-pxe'] }}" + service: "{{ ironic_services['ironic-tftp'] }}" template: src: "{{ item }}" - dest: "{{ node_config_directory }}/ironic-pxe/default" + dest: "{{ node_config_directory }}/ironic-tftp/default" mode: "0660" become: true with_first_found: @@ -164,14 +164,14 @@ - service.enabled | bool - enable_ironic_pxe_uefi | bool notify: - - Restart ironic-pxe container + - Restart ironic-tftp container - name: Copying ironic-agent kernel and initramfs (PXE) vars: - service: "{{ ironic_services['ironic-pxe'] }}" + service: "{{ ironic_services['ironic-tftp'] }}" copy: src: "{{ node_custom_config }}/ironic/{{ item }}" - dest: "{{ node_config_directory }}/ironic-pxe/{{ item }}" + dest: "{{ node_config_directory }}/ironic-tftp/{{ item }}" mode: "0660" become: true with_items: @@ -185,14 +185,14 @@ - not enable_ironic_pxe_uefi | bool - not enable_ironic_ipxe | bool notify: - - Restart ironic-pxe container + - Restart ironic-tftp container - name: Copying ironic-agent kernel and initramfs (iPXE) vars: - service: "{{ ironic_services['ironic-ipxe'] }}" + service: "{{ ironic_services['ironic-http'] }}" copy: src: "{{ node_custom_config }}/ironic/{{ item }}" - dest: "{{ node_config_directory }}/ironic-ipxe/{{ item }}" + dest: "{{ node_config_directory }}/ironic-http/{{ item }}" mode: "0660" become: true with_items: @@ -204,14 +204,14 @@ - inventory_hostname in groups[service.group] - service.enabled | bool notify: - - Restart ironic-ipxe container + - Restart ironic-http container - name: Copying inspector.ipxe vars: - service: "{{ ironic_services['ironic-ipxe'] }}" + service: "{{ ironic_services['ironic-http'] }}" template: src: "{{ item }}" - dest: "{{ node_config_directory }}/ironic-ipxe/inspector.ipxe" + dest: "{{ node_config_directory }}/ironic-http/inspector.ipxe" mode: "0660" become: true with_first_found: @@ -224,24 +224,24 @@ - inventory_hostname in groups[service.group] - service.enabled | bool notify: - - Restart ironic-ipxe container + - Restart ironic-http container - name: Copying iPXE apache config vars: - service: "{{ ironic_services['ironic-ipxe'] }}" + service: "{{ ironic_services['ironic-http'] }}" template: src: "{{ item }}" - dest: "{{ node_config_directory }}/ironic-ipxe/httpd.conf" + dest: "{{ node_config_directory }}/ironic-http/httpd.conf" mode: "0660" become: true with_first_found: - - "{{ node_custom_config }}/ironic/ironic-ipxe-httpd.conf" - - "ironic-ipxe-httpd.conf.j2" + - "{{ node_custom_config }}/ironic/ironic-http-httpd.conf" + - "ironic-http-httpd.conf.j2" when: - service.enabled | bool - inventory_hostname in groups[service.group] notify: - - Restart ironic-ipxe container + - Restart ironic-http container - name: Copying over existing Ironic policy file vars: diff --git a/ansible/roles/ironic/tasks/precheck.yml b/ansible/roles/ironic/tasks/precheck.yml index aaf90786bf..dabf1338d5 100644 --- a/ansible/roles/ironic/tasks/precheck.yml +++ b/ansible/roles/ironic/tasks/precheck.yml @@ -11,7 +11,9 @@ name: - ironic_api - ironic_inspector + # TODO(yoctozepto): Remove ironic_ipxe entry in Zed. - ironic_ipxe + - ironic_http register: container_facts - name: Checking free port for Ironic API @@ -36,16 +38,18 @@ - container_facts['ironic_inspector'] is not defined - inventory_hostname in groups['ironic-inspector'] -- name: Checking free port for Ironic iPXE +- name: Checking free port for Ironic HTTP server wait_for: host: "{{ api_interface_address }}" - port: "{{ ironic_ipxe_port }}" + port: "{{ ironic_http_port }}" connect_timeout: 1 timeout: 1 state: stopped when: + # TODO(yoctozepto): Remove ironic_ipxe entry in Zed. - container_facts['ironic_ipxe'] is not defined - - inventory_hostname in groups['ironic-ipxe'] + - container_facts['ironic_http'] is not defined + - inventory_hostname in groups['ironic-http'] - name: Checking ironic-agent files exist for Ironic Inspector stat: @@ -57,8 +61,8 @@ when: # Only required when Ironic inspector is in use. - groups['ironic-inspector'] | length > 0 - - (not enable_ironic_ipxe | bool and inventory_hostname in groups['ironic-pxe']) or - (enable_ironic_ipxe | bool and inventory_hostname in groups['ironic-ipxe']) + - (not enable_ironic_ipxe | bool and inventory_hostname in groups['ironic-tftp']) or + (enable_ironic_ipxe | bool and inventory_hostname in groups['ironic-http']) - not enable_ironic_pxe_uefi | bool with_items: - "ironic-agent.kernel" diff --git a/ansible/roles/ironic/tasks/upgrade.yml b/ansible/roles/ironic/tasks/upgrade.yml index 0c144c4b0b..a16115fed9 100644 --- a/ansible/roles/ironic/tasks/upgrade.yml +++ b/ansible/roles/ironic/tasks/upgrade.yml @@ -27,6 +27,20 @@ run_once: true when: not ironic_upgrade_skip_wait_check | bool +# TODO(yoctozepto): Remove this task in Zed. +- name: Remove old Ironic containers + become: true + kolla_docker: + action: "stop_and_remove_container" + common_options: "{{ docker_common_options }}" + name: "{{ item }}" + with_items: + # NOTE(yoctozepto): Removing conductor to avoid it + # thinking that the tftp and http servers are available. + - ironic_conductor + - ironic_pxe + - ironic_ipxe + - include_tasks: rolling_upgrade.yml when: ironic_enable_rolling_upgrade | bool diff --git a/ansible/roles/ironic/templates/inspector.ipxe.j2 b/ansible/roles/ironic/templates/inspector.ipxe.j2 index c0715118f6..3bf2c8825e 100644 --- a/ansible/roles/ironic/templates/inspector.ipxe.j2 +++ b/ansible/roles/ironic/templates/inspector.ipxe.j2 @@ -13,6 +13,6 @@ chain pxelinux.cfg/${mac:hexhyp} || goto inspector_ipa :inspector_ipa :retry_boot imgfree -kernel --timeout 30000 {{ ironic_ipxe_url }}/ironic-agent.kernel ipa-inspection-callback-url={{ ironic_inspector_internal_endpoint }}/v1/continue systemd.journald.forward_to_console=yes BOOTIF=${mac} initrd=ironic-agent.initramfs {{ ironic_inspector_kernel_cmdline_extras | join(' ') }} || goto retry_boot -initrd --timeout 30000 {{ ironic_ipxe_url }}/ironic-agent.initramfs || goto retry_boot +kernel --timeout 30000 {{ ironic_http_url }}/ironic-agent.kernel ipa-inspection-callback-url={{ ironic_inspector_internal_endpoint }}/v1/continue systemd.journald.forward_to_console=yes BOOTIF=${mac} initrd=ironic-agent.initramfs {{ ironic_inspector_kernel_cmdline_extras | join(' ') }} || goto retry_boot +initrd --timeout 30000 {{ ironic_http_url }}/ironic-agent.initramfs || goto retry_boot boot diff --git a/ansible/roles/ironic/templates/ironic-dnsmasq.conf.j2 b/ansible/roles/ironic/templates/ironic-dnsmasq.conf.j2 index 05e1599622..7b772bd552 100644 --- a/ansible/roles/ironic/templates/ironic-dnsmasq.conf.j2 +++ b/ansible/roles/ironic/templates/ironic-dnsmasq.conf.j2 @@ -23,7 +23,7 @@ dhcp-match=ipxe,175 dhcp-match=set:efi,option:client-arch,7 dhcp-match=set:efi,option:client-arch,9 # Client is already running iPXE; move to next stage of chainloading -dhcp-option=tag:ipxe,option:bootfile-name,{{ ironic_ipxe_url }}/inspector.ipxe +dhcp-option=tag:ipxe,option:bootfile-name,{{ ironic_http_url }}/inspector.ipxe # Client is PXE booting over EFI without iPXE ROM, # send EFI version of iPXE chainloader dhcp-option=tag:efi,tag:!ipxe,option:bootfile-name,{{ ironic_dnsmasq_uefi_ipxe_boot_file }} diff --git a/ansible/roles/ironic/templates/ironic-ipxe-httpd.conf.j2 b/ansible/roles/ironic/templates/ironic-http-httpd.conf.j2 similarity index 68% rename from ansible/roles/ironic/templates/ironic-ipxe-httpd.conf.j2 rename to ansible/roles/ironic/templates/ironic-http-httpd.conf.j2 index 3e9b64c98f..3c374f73cf 100644 --- a/ansible/roles/ironic/templates/ironic-ipxe-httpd.conf.j2 +++ b/ansible/roles/ironic/templates/ironic-http-httpd.conf.j2 @@ -1,12 +1,12 @@ -Listen {{ api_interface_address | put_address_in_context('url') }}:{{ ironic_ipxe_port }} +Listen {{ api_interface_address | put_address_in_context('url') }}:{{ ironic_http_port }} TraceEnable off - + LogLevel warn - ErrorLog "/var/log/kolla/ironic/ironic-ipxe-error.log" + ErrorLog "/var/log/kolla/ironic/ironic-http-error.log" LogFormat "%h %l %u %t \"%r\" %>s %b %D \"%{Referer}i\" \"%{User-Agent}i\"" logformat - CustomLog "/var/log/kolla/ironic/ironic-ipxe-access.log" logformat + CustomLog "/var/log/kolla/ironic/ironic-http-access.log" logformat DocumentRoot "/var/lib/ironic/httpboot" Options FollowSymLinks diff --git a/ansible/roles/ironic/templates/ironic-ipxe.json.j2 b/ansible/roles/ironic/templates/ironic-http.json.j2 similarity index 100% rename from ansible/roles/ironic/templates/ironic-ipxe.json.j2 rename to ansible/roles/ironic/templates/ironic-http.json.j2 diff --git a/ansible/roles/ironic/templates/ironic-pxe.json.j2 b/ansible/roles/ironic/templates/ironic-tftp.json.j2 similarity index 100% rename from ansible/roles/ironic/templates/ironic-pxe.json.j2 rename to ansible/roles/ironic/templates/ironic-tftp.json.j2 diff --git a/ansible/roles/ironic/templates/ironic.conf.j2 b/ansible/roles/ironic/templates/ironic.conf.j2 index 1661a554ca..2c78dd8ad2 100644 --- a/ansible/roles/ironic/templates/ironic.conf.j2 +++ b/ansible/roles/ironic/templates/ironic.conf.j2 @@ -182,7 +182,7 @@ tftp_server = {{ api_interface_address }} [deploy] http_root = /var/lib/ironic/httpboot -http_url = {{ ironic_ipxe_url }} +http_url = {{ ironic_http_url }} [oslo_middleware] enable_proxy_headers_parsing = True diff --git a/ansible/site.yml b/ansible/site.yml index a2ede492d4..01c4b15387 100644 --- a/ansible/site.yml +++ b/ansible/site.yml @@ -634,8 +634,8 @@ - ironic-api - ironic-conductor - ironic-inspector - - ironic-pxe - - ironic-ipxe + - ironic-tftp + - ironic-http - '&enable_ironic_True' serial: '{{ kolla_serial|default("0") }}' roles: diff --git a/doc/source/reference/bare-metal/ironic-guide.rst b/doc/source/reference/bare-metal/ironic-guide.rst index fa6a72cd41..811434094d 100644 --- a/doc/source/reference/bare-metal/ironic-guide.rst +++ b/doc/source/reference/bare-metal/ironic-guide.rst @@ -66,14 +66,14 @@ You may optionally pass extra kernel parameters to the inspection kernel using: in ``/etc/kolla/globals.yml``. -Configure iPXE HTTP server port (optional) -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The port used for the iPXE webserver is controlled via ``ironic_ipxe_port`` in -``/etc/kolla/globals.yml``: +Configure conductor's HTTP server port (optional) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +The port used for conductor's HTTP server is controlled via +``ironic_http_port`` in ``/etc/kolla/globals.yml``: .. code-block:: yaml - ironic_ipxe_port: "8089" + ironic_http_port: "8089" Revert to plain PXE (not recommended) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/releasenotes/notes/ironic-rename-61f8b1d0cb34a36f.yaml b/releasenotes/notes/ironic-rename-61f8b1d0cb34a36f.yaml new file mode 100644 index 0000000000..cfb55ebf3a --- /dev/null +++ b/releasenotes/notes/ironic-rename-61f8b1d0cb34a36f.yaml @@ -0,0 +1,11 @@ +--- +upgrade: + - | + Ironic containers related to PXE (TFTP) and iPXE & direct deploy (HTTP) + are renamed to better reflect their role: ``ironic_pxe`` is now + ``ironic_tftp``, while ``ironic_ipxe`` is now ``ironic_http``. + Operators doing advanced customisations might need to review the + relevant defaults section. + Additionally, their respective host groups have changed analogously: + ``ironic-pxe`` is now ``ironic-tftp``, and ``ironic-ipxe`` is now + ``ironic-http``. diff --git a/tests/templates/inventory.j2 b/tests/templates/inventory.j2 index 0fe61e6e9e..74b132b064 100644 --- a/tests/templates/inventory.j2 +++ b/tests/templates/inventory.j2 @@ -508,10 +508,10 @@ ironic [ironic-inspector:children] ironic -[ironic-pxe:children] +[ironic-tftp:children] ironic -[ironic-ipxe:children] +[ironic-http:children] ironic # Magnum