Support direct provisioning of bare metal
If `baremetal_provision` is `true`, deploy baremetal with "openstack overcloud node provision" and deployed-server, instead of with heat/nova. Change-Id: I57893a64f4c3224ffe8bd12330f12bd9d3cbbf89 Blueprint: nova-less-deploy
This commit is contained in:
parent
0b62606370
commit
7a9676908f
@ -43,3 +43,6 @@ Role Variables
|
||||
- `composable_scenario`: <''> -- path to the composable scenarios used at deployment time
|
||||
- `upgrade_composable_scenario`: <''> -- path to the composable scenarios used at upgrade time
|
||||
- `undercloud_rpm_dependencies`: <'python-tripleoclient'> -- Dependency packages for undercloud deployments.
|
||||
- `baremetal_provision`: <false> Deploy baremetal with "openstack overcloud node provision" and deployed-server, instead of with heat/nova
|
||||
- `undercloud_enable_nova`: <true> -- sets up the 'enable_nova'
|
||||
option in undercloud.conf.
|
@ -84,3 +84,9 @@ validate_performance: true
|
||||
|
||||
# If `validate_services` is `true`, run the validate-services role
|
||||
validate_services: false
|
||||
|
||||
# If `baremetal_provision` is `true`, deploy baremetal with "openstack overcloud node provision" and deployed-server, instead of with heat/nova
|
||||
baremetal_provision: false
|
||||
|
||||
# If `undercloud_enable_nova` is `true`, the undercloud will have running glance and nova services
|
||||
undercloud_enable_nova: true
|
||||
|
@ -59,6 +59,12 @@
|
||||
dest: "{{ working_dir }}/overcloud-topology-config.yaml"
|
||||
when: topology_map is defined
|
||||
|
||||
- name: Create overcloud baremetal deploy yaml
|
||||
template:
|
||||
src: "overcloud_baremetal_deploy.yaml.j2"
|
||||
dest: "{{ working_dir }}/overcloud_baremetal_deploy.yaml"
|
||||
when: baremetal_provision|bool and topology_map is defined
|
||||
|
||||
- name: Cloud names heat environment
|
||||
when: release not in ['mitaka', 'liberty']
|
||||
template:
|
||||
|
@ -244,8 +244,23 @@
|
||||
-e {{ overcloud_templates_path }}/environments/deployed-server-bootstrap-environment-centos.yaml
|
||||
{% endif %}
|
||||
--overcloud-ssh-user {{ undercloud_user }}
|
||||
{% if not undercloud_enable_nova|bool %}
|
||||
--deployed-server
|
||||
{% endif %}
|
||||
when: deploy_multinode|bool
|
||||
|
||||
- name: set the baremetal provision args
|
||||
set_fact:
|
||||
hypervisor_wait: false
|
||||
multinode_args: >-
|
||||
-e {{ overcloud_templates_path }}/environments/deployed-server-environment.yaml
|
||||
{% if release not in ['mitaka', 'newton'] and overcloud_release|default('') not in ['newton', 'mitaka'] %}
|
||||
-e {{ overcloud_templates_path }}/environments/deployed-server-bootstrap-environment-centos.yaml
|
||||
{% endif %}
|
||||
-e {{ working_dir }}/overcloud-baremetal-deployed.yaml
|
||||
--deployed-server
|
||||
when: baremetal_provision|bool
|
||||
|
||||
- name: set the OVN args
|
||||
set_fact:
|
||||
ovn_args: >-
|
||||
|
@ -28,6 +28,12 @@ done
|
||||
|
||||
### --start_docs
|
||||
|
||||
{% if baremetal_provision|bool %}
|
||||
## * Provision the baremetal nodes
|
||||
## ::
|
||||
openstack overcloud node provision --stack overcloud --output {{ working_dir }}/overcloud-baremetal-deployed.yaml {{ working_dir }}/overcloud_baremetal_deploy.yaml
|
||||
{% endif %}
|
||||
|
||||
## * Deploy the overcloud!
|
||||
## ::
|
||||
openstack overcloud deploy {% if release is not in ['newton', 'ocata', 'pike', 'queens'] %}--override-ansible-cfg {{ working_dir }}/custom_ansible.cfg{% endif %} \
|
||||
|
@ -0,0 +1,11 @@
|
||||
{% for role in topology_map %}
|
||||
{% set role_count = topology_map[role].scale |default(0) %}
|
||||
{% set role_profile = topology_map[role].flavor |default('') %}
|
||||
{% if role_count %}
|
||||
- name: {{ role }}
|
||||
count: {{ role_count }}
|
||||
{% if role_profile %}
|
||||
profile: {{ role_profile }}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
@ -56,7 +56,6 @@ https://docs.openstack.org/tripleo-quickstart/latest/accessing-libvirt.html
|
||||
- `undercloud_enable_novajoin`: <'false'> -- sets up the 'enable_novajoin'
|
||||
value from undercloud.conf. Note that using 'enable_tls_everywhere' will have
|
||||
the same effect.
|
||||
- `undercloud_enable_nova`: <'true'> -- sets up the 'enable_nova'
|
||||
- `novajoin_connect_timeout`: <5> Sets vendordata_dynamic_connect_timeout when novajoin is enabled
|
||||
- `novajoin_read_timeout:` <20> Sets vendordata_dynamic_read_timeout when novajoin is enabled
|
||||
- `prepare_novajoin`: If set to true, it will install novajoin in the undercloud,
|
||||
|
@ -64,7 +64,6 @@ undercloud_enable_validations: true
|
||||
undercloud_enable_zaqar: true
|
||||
undercloud_ipxe_deploy: true
|
||||
undercloud_enable_swift_encryption: false
|
||||
undercloud_enable_nova: true
|
||||
|
||||
undercloud_undercloud_debug: true
|
||||
|
||||
|
@ -52,8 +52,10 @@ rm -f {{ working_dir }}/undercloud_sanity.subunit
|
||||
source {{ working_dir}}/stackrc
|
||||
citest openstack user list
|
||||
citest openstack catalog list
|
||||
{% if undercloud_enable_nova|bool %}
|
||||
citest nova service-list
|
||||
citest glance image-list
|
||||
{% endif %}
|
||||
citest neutron subnet-list
|
||||
citest neutron net-list
|
||||
citest neutron agent-list
|
||||
|
Loading…
Reference in New Issue
Block a user