Ironic: rename containers
Change-Id: I8e4096d7136d0ce9e54f1af0bb9ba110487fb35b
This commit is contained in:
parent
9503308a87
commit
e8025b3cb8
@ -352,7 +352,7 @@ ironic_inspector_internal_fqdn: "{{ kolla_internal_fqdn }}"
|
|||||||
ironic_inspector_external_fqdn: "{{ kolla_external_fqdn }}"
|
ironic_inspector_external_fqdn: "{{ kolla_external_fqdn }}"
|
||||||
ironic_inspector_port: "5050"
|
ironic_inspector_port: "5050"
|
||||||
ironic_inspector_listen_port: "{{ ironic_inspector_port }}"
|
ironic_inspector_listen_port: "{{ ironic_inspector_port }}"
|
||||||
ironic_ipxe_port: "8089"
|
ironic_http_port: "8089"
|
||||||
|
|
||||||
iscsi_port: "3260"
|
iscsi_port: "3260"
|
||||||
|
|
||||||
|
@ -444,10 +444,10 @@ ironic
|
|||||||
[ironic-inspector:children]
|
[ironic-inspector:children]
|
||||||
ironic
|
ironic
|
||||||
|
|
||||||
[ironic-pxe:children]
|
[ironic-tftp:children]
|
||||||
ironic
|
ironic
|
||||||
|
|
||||||
[ironic-ipxe:children]
|
[ironic-http:children]
|
||||||
ironic
|
ironic
|
||||||
|
|
||||||
# Magnum
|
# Magnum
|
||||||
|
@ -452,10 +452,10 @@ ironic
|
|||||||
[ironic-inspector:children]
|
[ironic-inspector:children]
|
||||||
ironic
|
ironic
|
||||||
|
|
||||||
[ironic-pxe:children]
|
[ironic-tftp:children]
|
||||||
ironic
|
ironic
|
||||||
|
|
||||||
[ironic-ipxe:children]
|
[ironic-http:children]
|
||||||
ironic
|
ironic
|
||||||
|
|
||||||
# Magnum
|
# Magnum
|
||||||
|
@ -54,26 +54,26 @@ ironic_services:
|
|||||||
external: true
|
external: true
|
||||||
port: "{{ ironic_inspector_port }}"
|
port: "{{ ironic_inspector_port }}"
|
||||||
listen_port: "{{ ironic_inspector_listen_port }}"
|
listen_port: "{{ ironic_inspector_listen_port }}"
|
||||||
ironic-pxe:
|
ironic-tftp:
|
||||||
container_name: ironic_pxe
|
container_name: ironic_tftp
|
||||||
group: ironic-pxe
|
group: ironic-tftp
|
||||||
enabled: true
|
enabled: true
|
||||||
image: "{{ ironic_pxe_image_full }}"
|
image: "{{ ironic_pxe_image_full }}"
|
||||||
environment:
|
environment:
|
||||||
TFTPBOOT_PATH: /var/lib/ironic/tftpboot
|
TFTPBOOT_PATH: /var/lib/ironic/tftpboot
|
||||||
HTTPBOOT_PATH: /var/lib/ironic/httpboot
|
HTTPBOOT_PATH: /var/lib/ironic/httpboot
|
||||||
volumes: "{{ ironic_pxe_default_volumes + ironic_pxe_extra_volumes }}"
|
volumes: "{{ ironic_tftp_default_volumes + ironic_tftp_extra_volumes }}"
|
||||||
dimensions: "{{ ironic_pxe_dimensions }}"
|
dimensions: "{{ ironic_tftp_dimensions }}"
|
||||||
ironic-ipxe:
|
ironic-http:
|
||||||
container_name: ironic_ipxe
|
container_name: ironic_http
|
||||||
group: ironic-ipxe
|
group: ironic-http
|
||||||
# NOTE(mgoddard): This container is always enabled, since may be used by
|
# NOTE(mgoddard): This container is always enabled, since may be used by
|
||||||
# the direct deploy driver.
|
# the direct deploy driver.
|
||||||
enabled: true
|
enabled: true
|
||||||
image: "{{ ironic_pxe_image_full }}"
|
image: "{{ ironic_pxe_image_full }}"
|
||||||
volumes: "{{ ironic_ipxe_default_volumes + ironic_ipxe_extra_volumes }}"
|
volumes: "{{ ironic_http_default_volumes + ironic_http_extra_volumes }}"
|
||||||
dimensions: "{{ ironic_ipxe_dimensions }}"
|
dimensions: "{{ ironic_http_dimensions }}"
|
||||||
healthcheck: "{{ ironic_ipxe_healthcheck }}"
|
healthcheck: "{{ ironic_http_healthcheck }}"
|
||||||
ironic-dnsmasq:
|
ironic-dnsmasq:
|
||||||
container_name: ironic_dnsmasq
|
container_name: ironic_dnsmasq
|
||||||
group: ironic-inspector
|
group: ironic-inspector
|
||||||
@ -125,8 +125,8 @@ ironic_dnsmasq_image_full: "{{ ironic_dnsmasq_image }}:{{ ironic_dnsmasq_tag }}"
|
|||||||
|
|
||||||
ironic_api_dimensions: "{{ default_container_dimensions }}"
|
ironic_api_dimensions: "{{ default_container_dimensions }}"
|
||||||
ironic_conductor_dimensions: "{{ default_container_dimensions }}"
|
ironic_conductor_dimensions: "{{ default_container_dimensions }}"
|
||||||
ironic_pxe_dimensions: "{{ default_container_dimensions }}"
|
ironic_tftp_dimensions: "{{ default_container_dimensions }}"
|
||||||
ironic_ipxe_dimensions: "{{ default_container_dimensions }}"
|
ironic_http_dimensions: "{{ default_container_dimensions }}"
|
||||||
ironic_inspector_dimensions: "{{ default_container_dimensions }}"
|
ironic_inspector_dimensions: "{{ default_container_dimensions }}"
|
||||||
ironic_dnsmasq_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 %}"
|
test: "{% if ironic_inspector_enable_healthchecks | bool %}{{ ironic_inspector_healthcheck_test }}{% else %}NONE{% endif %}"
|
||||||
timeout: "{{ ironic_inspector_healthcheck_timeout }}"
|
timeout: "{{ ironic_inspector_healthcheck_timeout }}"
|
||||||
|
|
||||||
ironic_ipxe_enable_healthchecks: "{{ enable_container_healthchecks }}"
|
ironic_http_enable_healthchecks: "{{ enable_container_healthchecks }}"
|
||||||
ironic_ipxe_healthcheck_interval: "{{ default_container_healthcheck_interval }}"
|
ironic_http_healthcheck_interval: "{{ default_container_healthcheck_interval }}"
|
||||||
ironic_ipxe_healthcheck_retries: "{{ default_container_healthcheck_retries }}"
|
ironic_http_healthcheck_retries: "{{ default_container_healthcheck_retries }}"
|
||||||
ironic_ipxe_healthcheck_start_period: "{{ default_container_healthcheck_start_period }}"
|
ironic_http_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_http_healthcheck_test: ["CMD-SHELL", "healthcheck_listen {% if kolla_base_distro in ['debian', 'ubuntu'] %}apache2{% else %}httpd{% endif %} {{ ironic_http_port }}"]
|
||||||
ironic_ipxe_healthcheck_timeout: "{{ default_container_healthcheck_timeout }}"
|
ironic_http_healthcheck_timeout: "{{ default_container_healthcheck_timeout }}"
|
||||||
ironic_ipxe_healthcheck:
|
ironic_http_healthcheck:
|
||||||
interval: "{{ ironic_ipxe_healthcheck_interval }}"
|
interval: "{{ ironic_http_healthcheck_interval }}"
|
||||||
retries: "{{ ironic_ipxe_healthcheck_retries }}"
|
retries: "{{ ironic_http_healthcheck_retries }}"
|
||||||
start_period: "{{ ironic_ipxe_healthcheck_start_period }}"
|
start_period: "{{ ironic_http_healthcheck_start_period }}"
|
||||||
test: "{% if ironic_ipxe_enable_healthchecks | bool %}{{ ironic_ipxe_healthcheck_test }}{% else %}NONE{% endif %}"
|
test: "{% if ironic_http_enable_healthchecks | bool %}{{ ironic_http_healthcheck_test }}{% else %}NONE{% endif %}"
|
||||||
timeout: "{{ ironic_ipxe_healthcheck_timeout }}"
|
timeout: "{{ ironic_http_healthcheck_timeout }}"
|
||||||
|
|
||||||
ironic_api_default_volumes:
|
ironic_api_default_volumes:
|
||||||
- "{{ node_config_directory }}/ironic-api/:{{ container_config_directory }}/:ro"
|
- "{{ node_config_directory }}/ironic-api/:{{ container_config_directory }}/:ro"
|
||||||
@ -199,14 +199,14 @@ ironic_conductor_default_volumes:
|
|||||||
- "kolla_logs:/var/log/kolla"
|
- "kolla_logs:/var/log/kolla"
|
||||||
- "ironic:/var/lib/ironic"
|
- "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 '' }}"
|
- "{{ 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:
|
ironic_tftp_default_volumes:
|
||||||
- "{{ node_config_directory }}/ironic-pxe/:{{ container_config_directory }}/:ro"
|
- "{{ node_config_directory }}/ironic-tftp/:{{ container_config_directory }}/:ro"
|
||||||
- "/etc/localtime:/etc/localtime:ro"
|
- "/etc/localtime:/etc/localtime:ro"
|
||||||
- "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}"
|
- "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}"
|
||||||
- "ironic:/var/lib/ironic"
|
- "ironic:/var/lib/ironic"
|
||||||
- "kolla_logs:/var/log/kolla"
|
- "kolla_logs:/var/log/kolla"
|
||||||
ironic_ipxe_default_volumes:
|
ironic_http_default_volumes:
|
||||||
- "{{ node_config_directory }}/ironic-ipxe/:{{ container_config_directory }}/:ro"
|
- "{{ node_config_directory }}/ironic-http/:{{ container_config_directory }}/:ro"
|
||||||
- "/etc/localtime:/etc/localtime:ro"
|
- "/etc/localtime:/etc/localtime:ro"
|
||||||
- "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}"
|
- "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}"
|
||||||
- "ironic:/var/lib/ironic"
|
- "ironic:/var/lib/ironic"
|
||||||
@ -228,8 +228,8 @@ ironic_dnsmasq_default_volumes:
|
|||||||
ironic_extra_volumes: "{{ default_extra_volumes }}"
|
ironic_extra_volumes: "{{ default_extra_volumes }}"
|
||||||
ironic_api_extra_volumes: "{{ ironic_extra_volumes }}"
|
ironic_api_extra_volumes: "{{ ironic_extra_volumes }}"
|
||||||
ironic_conductor_extra_volumes: "{{ ironic_extra_volumes }}"
|
ironic_conductor_extra_volumes: "{{ ironic_extra_volumes }}"
|
||||||
ironic_pxe_extra_volumes: "{{ ironic_extra_volumes }}"
|
ironic_tftp_extra_volumes: "{{ ironic_extra_volumes }}"
|
||||||
ironic_ipxe_extra_volumes: "{{ ironic_extra_volumes }}"
|
ironic_http_extra_volumes: "{{ ironic_extra_volumes }}"
|
||||||
ironic_inspector_extra_volumes: "{{ ironic_extra_volumes }}"
|
ironic_inspector_extra_volumes: "{{ ironic_extra_volumes }}"
|
||||||
ironic_dnsmasq_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_dnsmasq_uefi_ipxe_boot_file: "snponly.efi"
|
||||||
ironic_cleaning_network:
|
ironic_cleaning_network:
|
||||||
ironic_console_serial_speed: "115200n8"
|
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_enable_rolling_upgrade: "yes"
|
||||||
ironic_upgrade_skip_wait_check: false
|
ironic_upgrade_skip_wait_check: false
|
||||||
ironic_inspector_kernel_cmdline_extras: []
|
ironic_inspector_kernel_cmdline_extras: []
|
||||||
|
@ -69,9 +69,9 @@
|
|||||||
when:
|
when:
|
||||||
- kolla_action != "config"
|
- kolla_action != "config"
|
||||||
|
|
||||||
- name: Restart ironic-pxe container
|
- name: Restart ironic-tftp container
|
||||||
vars:
|
vars:
|
||||||
service_name: "ironic-pxe"
|
service_name: "ironic-tftp"
|
||||||
service: "{{ ironic_services[service_name] }}"
|
service: "{{ ironic_services[service_name] }}"
|
||||||
become: true
|
become: true
|
||||||
kolla_docker:
|
kolla_docker:
|
||||||
@ -85,9 +85,9 @@
|
|||||||
when:
|
when:
|
||||||
- kolla_action != "config"
|
- kolla_action != "config"
|
||||||
|
|
||||||
- name: Restart ironic-ipxe container
|
- name: Restart ironic-http container
|
||||||
vars:
|
vars:
|
||||||
service_name: "ironic-ipxe"
|
service_name: "ironic-http"
|
||||||
service: "{{ ironic_services[service_name] }}"
|
service: "{{ ironic_services[service_name] }}"
|
||||||
become: true
|
become: true
|
||||||
kolla_docker:
|
kolla_docker:
|
||||||
|
@ -45,9 +45,9 @@
|
|||||||
delegate_to: "{{ groups[ironic_inspector.group][0] }}"
|
delegate_to: "{{ groups[ironic_inspector.group][0] }}"
|
||||||
when: inventory_hostname in groups[ironic_inspector.group]
|
when: inventory_hostname in groups[ironic_inspector.group]
|
||||||
|
|
||||||
- name: Running Ironic-PXE bootstrap container
|
- name: Running ironic-tftp bootstrap container
|
||||||
vars:
|
vars:
|
||||||
ironic_pxe: "{{ ironic_services['ironic-pxe'] }}"
|
ironic_tftp: "{{ ironic_services['ironic-tftp'] }}"
|
||||||
become: true
|
become: true
|
||||||
kolla_docker:
|
kolla_docker:
|
||||||
action: "start_container"
|
action: "start_container"
|
||||||
@ -58,10 +58,10 @@
|
|||||||
HTTPBOOT_PATH: /var/lib/ironic/httpboot
|
HTTPBOOT_PATH: /var/lib/ironic/httpboot
|
||||||
KOLLA_BOOTSTRAP:
|
KOLLA_BOOTSTRAP:
|
||||||
KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}"
|
KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}"
|
||||||
image: "{{ ironic_pxe.image }}"
|
image: "{{ ironic_tftp.image }}"
|
||||||
labels:
|
labels:
|
||||||
BOOTSTRAP:
|
BOOTSTRAP:
|
||||||
name: "bootstrap_ironic_pxe"
|
name: "bootstrap_ironic_tftp"
|
||||||
restart_policy: no
|
restart_policy: no
|
||||||
volumes: "{{ ironic_pxe.volumes }}"
|
volumes: "{{ ironic_tftp.volumes }}"
|
||||||
when: inventory_hostname in groups[ironic_pxe.group]
|
when: inventory_hostname in groups[ironic_tftp.group]
|
||||||
|
@ -127,10 +127,10 @@
|
|||||||
|
|
||||||
- name: Copying pxelinux.cfg default
|
- name: Copying pxelinux.cfg default
|
||||||
vars:
|
vars:
|
||||||
service: "{{ ironic_services['ironic-pxe'] }}"
|
service: "{{ ironic_services['ironic-tftp'] }}"
|
||||||
template:
|
template:
|
||||||
src: "{{ item }}"
|
src: "{{ item }}"
|
||||||
dest: "{{ node_config_directory }}/ironic-pxe/default"
|
dest: "{{ node_config_directory }}/ironic-tftp/default"
|
||||||
mode: "0660"
|
mode: "0660"
|
||||||
become: true
|
become: true
|
||||||
with_first_found:
|
with_first_found:
|
||||||
@ -145,14 +145,14 @@
|
|||||||
- not enable_ironic_pxe_uefi | bool
|
- not enable_ironic_pxe_uefi | bool
|
||||||
- not enable_ironic_ipxe | bool
|
- not enable_ironic_ipxe | bool
|
||||||
notify:
|
notify:
|
||||||
- Restart ironic-pxe container
|
- Restart ironic-tftp container
|
||||||
|
|
||||||
- name: Copying ironic_pxe_uefi.cfg default
|
- name: Copying ironic_pxe_uefi.cfg default
|
||||||
vars:
|
vars:
|
||||||
service: "{{ ironic_services['ironic-pxe'] }}"
|
service: "{{ ironic_services['ironic-tftp'] }}"
|
||||||
template:
|
template:
|
||||||
src: "{{ item }}"
|
src: "{{ item }}"
|
||||||
dest: "{{ node_config_directory }}/ironic-pxe/default"
|
dest: "{{ node_config_directory }}/ironic-tftp/default"
|
||||||
mode: "0660"
|
mode: "0660"
|
||||||
become: true
|
become: true
|
||||||
with_first_found:
|
with_first_found:
|
||||||
@ -164,14 +164,14 @@
|
|||||||
- service.enabled | bool
|
- service.enabled | bool
|
||||||
- enable_ironic_pxe_uefi | bool
|
- enable_ironic_pxe_uefi | bool
|
||||||
notify:
|
notify:
|
||||||
- Restart ironic-pxe container
|
- Restart ironic-tftp container
|
||||||
|
|
||||||
- name: Copying ironic-agent kernel and initramfs (PXE)
|
- name: Copying ironic-agent kernel and initramfs (PXE)
|
||||||
vars:
|
vars:
|
||||||
service: "{{ ironic_services['ironic-pxe'] }}"
|
service: "{{ ironic_services['ironic-tftp'] }}"
|
||||||
copy:
|
copy:
|
||||||
src: "{{ node_custom_config }}/ironic/{{ item }}"
|
src: "{{ node_custom_config }}/ironic/{{ item }}"
|
||||||
dest: "{{ node_config_directory }}/ironic-pxe/{{ item }}"
|
dest: "{{ node_config_directory }}/ironic-tftp/{{ item }}"
|
||||||
mode: "0660"
|
mode: "0660"
|
||||||
become: true
|
become: true
|
||||||
with_items:
|
with_items:
|
||||||
@ -185,14 +185,14 @@
|
|||||||
- not enable_ironic_pxe_uefi | bool
|
- not enable_ironic_pxe_uefi | bool
|
||||||
- not enable_ironic_ipxe | bool
|
- not enable_ironic_ipxe | bool
|
||||||
notify:
|
notify:
|
||||||
- Restart ironic-pxe container
|
- Restart ironic-tftp container
|
||||||
|
|
||||||
- name: Copying ironic-agent kernel and initramfs (iPXE)
|
- name: Copying ironic-agent kernel and initramfs (iPXE)
|
||||||
vars:
|
vars:
|
||||||
service: "{{ ironic_services['ironic-ipxe'] }}"
|
service: "{{ ironic_services['ironic-http'] }}"
|
||||||
copy:
|
copy:
|
||||||
src: "{{ node_custom_config }}/ironic/{{ item }}"
|
src: "{{ node_custom_config }}/ironic/{{ item }}"
|
||||||
dest: "{{ node_config_directory }}/ironic-ipxe/{{ item }}"
|
dest: "{{ node_config_directory }}/ironic-http/{{ item }}"
|
||||||
mode: "0660"
|
mode: "0660"
|
||||||
become: true
|
become: true
|
||||||
with_items:
|
with_items:
|
||||||
@ -204,14 +204,14 @@
|
|||||||
- inventory_hostname in groups[service.group]
|
- inventory_hostname in groups[service.group]
|
||||||
- service.enabled | bool
|
- service.enabled | bool
|
||||||
notify:
|
notify:
|
||||||
- Restart ironic-ipxe container
|
- Restart ironic-http container
|
||||||
|
|
||||||
- name: Copying inspector.ipxe
|
- name: Copying inspector.ipxe
|
||||||
vars:
|
vars:
|
||||||
service: "{{ ironic_services['ironic-ipxe'] }}"
|
service: "{{ ironic_services['ironic-http'] }}"
|
||||||
template:
|
template:
|
||||||
src: "{{ item }}"
|
src: "{{ item }}"
|
||||||
dest: "{{ node_config_directory }}/ironic-ipxe/inspector.ipxe"
|
dest: "{{ node_config_directory }}/ironic-http/inspector.ipxe"
|
||||||
mode: "0660"
|
mode: "0660"
|
||||||
become: true
|
become: true
|
||||||
with_first_found:
|
with_first_found:
|
||||||
@ -224,24 +224,24 @@
|
|||||||
- inventory_hostname in groups[service.group]
|
- inventory_hostname in groups[service.group]
|
||||||
- service.enabled | bool
|
- service.enabled | bool
|
||||||
notify:
|
notify:
|
||||||
- Restart ironic-ipxe container
|
- Restart ironic-http container
|
||||||
|
|
||||||
- name: Copying iPXE apache config
|
- name: Copying iPXE apache config
|
||||||
vars:
|
vars:
|
||||||
service: "{{ ironic_services['ironic-ipxe'] }}"
|
service: "{{ ironic_services['ironic-http'] }}"
|
||||||
template:
|
template:
|
||||||
src: "{{ item }}"
|
src: "{{ item }}"
|
||||||
dest: "{{ node_config_directory }}/ironic-ipxe/httpd.conf"
|
dest: "{{ node_config_directory }}/ironic-http/httpd.conf"
|
||||||
mode: "0660"
|
mode: "0660"
|
||||||
become: true
|
become: true
|
||||||
with_first_found:
|
with_first_found:
|
||||||
- "{{ node_custom_config }}/ironic/ironic-ipxe-httpd.conf"
|
- "{{ node_custom_config }}/ironic/ironic-http-httpd.conf"
|
||||||
- "ironic-ipxe-httpd.conf.j2"
|
- "ironic-http-httpd.conf.j2"
|
||||||
when:
|
when:
|
||||||
- service.enabled | bool
|
- service.enabled | bool
|
||||||
- inventory_hostname in groups[service.group]
|
- inventory_hostname in groups[service.group]
|
||||||
notify:
|
notify:
|
||||||
- Restart ironic-ipxe container
|
- Restart ironic-http container
|
||||||
|
|
||||||
- name: Copying over existing Ironic policy file
|
- name: Copying over existing Ironic policy file
|
||||||
vars:
|
vars:
|
||||||
|
@ -11,7 +11,9 @@
|
|||||||
name:
|
name:
|
||||||
- ironic_api
|
- ironic_api
|
||||||
- ironic_inspector
|
- ironic_inspector
|
||||||
|
# TODO(yoctozepto): Remove ironic_ipxe entry in Zed.
|
||||||
- ironic_ipxe
|
- ironic_ipxe
|
||||||
|
- ironic_http
|
||||||
register: container_facts
|
register: container_facts
|
||||||
|
|
||||||
- name: Checking free port for Ironic API
|
- name: Checking free port for Ironic API
|
||||||
@ -36,16 +38,18 @@
|
|||||||
- container_facts['ironic_inspector'] is not defined
|
- container_facts['ironic_inspector'] is not defined
|
||||||
- inventory_hostname in groups['ironic-inspector']
|
- inventory_hostname in groups['ironic-inspector']
|
||||||
|
|
||||||
- name: Checking free port for Ironic iPXE
|
- name: Checking free port for Ironic HTTP server
|
||||||
wait_for:
|
wait_for:
|
||||||
host: "{{ api_interface_address }}"
|
host: "{{ api_interface_address }}"
|
||||||
port: "{{ ironic_ipxe_port }}"
|
port: "{{ ironic_http_port }}"
|
||||||
connect_timeout: 1
|
connect_timeout: 1
|
||||||
timeout: 1
|
timeout: 1
|
||||||
state: stopped
|
state: stopped
|
||||||
when:
|
when:
|
||||||
|
# TODO(yoctozepto): Remove ironic_ipxe entry in Zed.
|
||||||
- container_facts['ironic_ipxe'] is not defined
|
- 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
|
- name: Checking ironic-agent files exist for Ironic Inspector
|
||||||
stat:
|
stat:
|
||||||
@ -57,8 +61,8 @@
|
|||||||
when:
|
when:
|
||||||
# Only required when Ironic inspector is in use.
|
# Only required when Ironic inspector is in use.
|
||||||
- groups['ironic-inspector'] | length > 0
|
- groups['ironic-inspector'] | length > 0
|
||||||
- (not enable_ironic_ipxe | bool and inventory_hostname in groups['ironic-pxe']) or
|
- (not enable_ironic_ipxe | bool and inventory_hostname in groups['ironic-tftp']) or
|
||||||
(enable_ironic_ipxe | bool and inventory_hostname in groups['ironic-ipxe'])
|
(enable_ironic_ipxe | bool and inventory_hostname in groups['ironic-http'])
|
||||||
- not enable_ironic_pxe_uefi | bool
|
- not enable_ironic_pxe_uefi | bool
|
||||||
with_items:
|
with_items:
|
||||||
- "ironic-agent.kernel"
|
- "ironic-agent.kernel"
|
||||||
|
@ -27,6 +27,20 @@
|
|||||||
run_once: true
|
run_once: true
|
||||||
when: not ironic_upgrade_skip_wait_check | bool
|
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
|
- include_tasks: rolling_upgrade.yml
|
||||||
when: ironic_enable_rolling_upgrade | bool
|
when: ironic_enable_rolling_upgrade | bool
|
||||||
|
|
||||||
|
@ -13,6 +13,6 @@ chain pxelinux.cfg/${mac:hexhyp} || goto inspector_ipa
|
|||||||
:inspector_ipa
|
:inspector_ipa
|
||||||
:retry_boot
|
:retry_boot
|
||||||
imgfree
|
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
|
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_ipxe_url }}/ironic-agent.initramfs || goto retry_boot
|
initrd --timeout 30000 {{ ironic_http_url }}/ironic-agent.initramfs || goto retry_boot
|
||||||
boot
|
boot
|
||||||
|
@ -23,7 +23,7 @@ dhcp-match=ipxe,175
|
|||||||
dhcp-match=set:efi,option:client-arch,7
|
dhcp-match=set:efi,option:client-arch,7
|
||||||
dhcp-match=set:efi,option:client-arch,9
|
dhcp-match=set:efi,option:client-arch,9
|
||||||
# Client is already running iPXE; move to next stage of chainloading
|
# 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,
|
# Client is PXE booting over EFI without iPXE ROM,
|
||||||
# send EFI version of iPXE chainloader
|
# send EFI version of iPXE chainloader
|
||||||
dhcp-option=tag:efi,tag:!ipxe,option:bootfile-name,{{ ironic_dnsmasq_uefi_ipxe_boot_file }}
|
dhcp-option=tag:efi,tag:!ipxe,option:bootfile-name,{{ ironic_dnsmasq_uefi_ipxe_boot_file }}
|
||||||
|
@ -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
|
TraceEnable off
|
||||||
|
|
||||||
<VirtualHost *:{{ ironic_ipxe_port }}>
|
<VirtualHost *:{{ ironic_http_port }}>
|
||||||
LogLevel warn
|
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
|
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"
|
DocumentRoot "/var/lib/ironic/httpboot"
|
||||||
<Directory /var/lib/ironic/httpboot>
|
<Directory /var/lib/ironic/httpboot>
|
||||||
Options FollowSymLinks
|
Options FollowSymLinks
|
@ -182,7 +182,7 @@ tftp_server = {{ api_interface_address }}
|
|||||||
|
|
||||||
[deploy]
|
[deploy]
|
||||||
http_root = /var/lib/ironic/httpboot
|
http_root = /var/lib/ironic/httpboot
|
||||||
http_url = {{ ironic_ipxe_url }}
|
http_url = {{ ironic_http_url }}
|
||||||
|
|
||||||
[oslo_middleware]
|
[oslo_middleware]
|
||||||
enable_proxy_headers_parsing = True
|
enable_proxy_headers_parsing = True
|
||||||
|
@ -634,8 +634,8 @@
|
|||||||
- ironic-api
|
- ironic-api
|
||||||
- ironic-conductor
|
- ironic-conductor
|
||||||
- ironic-inspector
|
- ironic-inspector
|
||||||
- ironic-pxe
|
- ironic-tftp
|
||||||
- ironic-ipxe
|
- ironic-http
|
||||||
- '&enable_ironic_True'
|
- '&enable_ironic_True'
|
||||||
serial: '{{ kolla_serial|default("0") }}'
|
serial: '{{ kolla_serial|default("0") }}'
|
||||||
roles:
|
roles:
|
||||||
|
@ -66,14 +66,14 @@ You may optionally pass extra kernel parameters to the inspection kernel using:
|
|||||||
|
|
||||||
in ``/etc/kolla/globals.yml``.
|
in ``/etc/kolla/globals.yml``.
|
||||||
|
|
||||||
Configure iPXE HTTP server port (optional)
|
Configure conductor's HTTP server port (optional)
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
The port used for the iPXE webserver is controlled via ``ironic_ipxe_port`` in
|
The port used for conductor's HTTP server is controlled via
|
||||||
``/etc/kolla/globals.yml``:
|
``ironic_http_port`` in ``/etc/kolla/globals.yml``:
|
||||||
|
|
||||||
.. code-block:: yaml
|
.. code-block:: yaml
|
||||||
|
|
||||||
ironic_ipxe_port: "8089"
|
ironic_http_port: "8089"
|
||||||
|
|
||||||
Revert to plain PXE (not recommended)
|
Revert to plain PXE (not recommended)
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
11
releasenotes/notes/ironic-rename-61f8b1d0cb34a36f.yaml
Normal file
11
releasenotes/notes/ironic-rename-61f8b1d0cb34a36f.yaml
Normal file
@ -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``.
|
@ -508,10 +508,10 @@ ironic
|
|||||||
[ironic-inspector:children]
|
[ironic-inspector:children]
|
||||||
ironic
|
ironic
|
||||||
|
|
||||||
[ironic-pxe:children]
|
[ironic-tftp:children]
|
||||||
ironic
|
ironic
|
||||||
|
|
||||||
[ironic-ipxe:children]
|
[ironic-http:children]
|
||||||
ironic
|
ironic
|
||||||
|
|
||||||
# Magnum
|
# Magnum
|
||||||
|
Loading…
Reference in New Issue
Block a user