12376b958e
This patch adds installation of virtualbmc and plugging VMs into it as part of 'bifrost-create-vm-nodes' role. The baremetal data file is now populated with nodes using "agent_ipmitool" driver. All things defaulting to some *_ssh drivers are replaced with corresponding *_ipmitool drivers. Most libvirt and VM related tasks (including some SSH key management) and vars are moved from 'bifrost-ironic-install' role to 'bifrost-create-vm-nodes' role, as ironic istelf now should barely care about libvirt as no *_ssh drivers are used. Change-Id: If42082e5b1fe8b83a364e27efc549bb74a19ab2f Closes-Bug: #1659876
91 lines
2.9 KiB
Django/Jinja
91 lines
2.9 KiB
Django/Jinja
# {{ ansible_managed }}
|
|
# For additional details on configuring ironic, you may wish to reference
|
|
# the sample configuration file which can be located at
|
|
# http://git.openstack.org/cgit/openstack/ironic/tree/etc/ironic/ironic.conf.sample
|
|
|
|
|
|
[DEFAULT]
|
|
# NOTE(TheJulia): Until Bifrost supports neutron or some other network
|
|
# configuration besides a flat network where bifrost orchustrates the
|
|
# control instead of ironic, noop is the only available network driver.
|
|
enabled_network_interfaces = noop
|
|
{% if testing | bool == true %}
|
|
enabled_drivers = agent_ipmitool,pxe_ipmitool
|
|
debug = true
|
|
{% else %}
|
|
enabled_drivers = {{ enabled_drivers }}
|
|
debug = false
|
|
{% endif %}
|
|
|
|
rabbit_userid = ironic
|
|
rabbit_password = {{ ironic_db_password }}
|
|
|
|
{% if enable_keystone is defined and enable_keystone | bool == true %}
|
|
auth_strategy = keystone
|
|
{% else %}
|
|
auth_strategy = noauth
|
|
{% endif %}
|
|
|
|
[pxe]
|
|
pxe_append_params = systemd.journald.forward_to_console=yes {{ extra_kernel_options | default('') }}
|
|
pxe_config_template = $pybasedir/drivers/modules/ipxe_config.template
|
|
tftp_server = {{ hostvars[inventory_hostname]['ansible_' + ans_network_interface]['ipv4']['address'] }}
|
|
tftp_root = /tftpboot
|
|
pxe_bootfile_name = undionly.kpxe
|
|
ipxe_enabled = true
|
|
ipxe_boot_script = /etc/ironic/boot.ipxe
|
|
|
|
[deploy]
|
|
http_url = http://{{ hostvars[inventory_hostname]['ansible_' + ans_network_interface]['ipv4']['address'] }}:{{ file_url_port }}/
|
|
http_root = {{ http_boot_folder }}
|
|
|
|
[conductor]
|
|
api_url = http://{{ hostvars[inventory_hostname]['ansible_' + ans_network_interface]['ipv4']['address'] }}:6385/
|
|
clean_nodes = {{ cleaning | lower }}
|
|
automated_clean = {{ cleaning | lower }}
|
|
|
|
[database]
|
|
connection = mysql+pymysql://ironic:{{ ironic_db_password }}@localhost/ironic?charset=utf8
|
|
|
|
[dhcp]
|
|
dhcp_provider = none
|
|
|
|
{% if testing | bool == true %}
|
|
[ssh]
|
|
libvirt_uri = qemu:///system
|
|
{% endif %}
|
|
|
|
{% if enable_cors | bool == true %}
|
|
[cors]
|
|
allowed_origin = {{ cors_allowed_origin | default('allowed_origin=http://localhost:8000') }}
|
|
allow_credentials = {{ enable_cors_credential_support | default('true') }}
|
|
{% endif %}
|
|
|
|
[ilo]
|
|
use_web_server_for_images = true
|
|
|
|
{% if enable_inspector | bool == true %}
|
|
[inspector]
|
|
enabled = true
|
|
{% endif %}
|
|
|
|
{% if enable_keystone is defined and enable_keystone | bool == true %}
|
|
[keystone]
|
|
region_name = {{ keystone.bootstrap.region_name | default('RegionOne')}}
|
|
[keystone_authtoken]
|
|
auth_plugin = password
|
|
auth_url = {{ ironic.service_catalog.auth_url }}
|
|
username = {{ ironic.service_catalog.username }}
|
|
password = {{ ironic.service_catalog.password }}
|
|
user_domain_id = default
|
|
project_name = {{ ironic.service_catalog.project_name }}
|
|
project_domain_id = default
|
|
|
|
[service_catalog]
|
|
auth_url = {{ ironic.service_catalog.auth_url }}
|
|
auth_type = password
|
|
tenant_name = {{ ironic.service_catalog.project_name }}
|
|
username = {{ ironic.service_catalog.username }}
|
|
password = {{ ironic.service_catalog.password }}
|
|
{% endif %}
|