tripleo-quickstart-extras/roles/undercloud-deploy
Ben Kero f65419107f (undercloud|overcloud)-deploy: Add deployed_server script support
This patchset adds a flag to the undercloud-deploy role to support
arbitrary extra configuration.

It also adds support to the overcloud-deploy role to allow it to perform
some setup tasks required for deployed_server deployments such as
nodepool multinode.

Change-Id: I0688d7538d4c6fe4d24d5152ee4c8dae2557508f
2017-01-12 12:29:05 +00:00
..
defaults (undercloud|overcloud)-deploy: Add deployed_server script support 2017-01-12 12:29:05 +00:00
meta move the undercloud deploy role from quickstart to quickstart-extras 2016-12-19 10:37:22 -05:00
tasks Make VirtualBMC usage optional 2016-12-21 10:12:05 -05:00
templates (undercloud|overcloud)-deploy: Add deployed_server script support 2017-01-12 12:29:05 +00:00
README.md (undercloud|overcloud)-deploy: Add deployed_server script support 2017-01-12 12:29:05 +00:00

README.md

undercloud-deploy

An Ansible role to execute the deployment of the tripleo undercloud

Requirements

This requires a running host to deploy the undercloud.

Role Variables

  • undercloud_config_file: <'undercloud.conf.j2'> -- the name of the jinja template used as the base for the undercloud.conf
  • undercloud_install_script: <'undercloud-install.j2'> -- the name of the jinja template used as the base for the undercloud-install bash script
  • undercloud_post_install_script: <'undercloud-install-post.sh.j2'> -- the name of the jinja template used as the base for the undercloud-install-post bash script
  • undercloud_install_log: <'{{ working_dir }}/undercloud_install.log'> -- the full path to the undercloud install log file.
  • undercloud_post_install.log: <'{{ working_dir }}/undercloud_post_install.log'> -- the full path to the undercloud-post-install.sh log file.
  • network_environment_file: <'network-environment.yaml.j2'> -- the name of the jinja template used as the base for the network-environment for tripleo.
  • undercloud_hieradata_override_file: <'quickstart-hieradata-overrides.yaml.j2'> -- the name of jinja template used to override the undercloud's install hieradata
  • step_introspect: <'false'> -- boolean value to enable/disable ironic introspection
  • bash_deploy_ramdisk: <'false'> -- the variable allows older versions of tripleo to upload images properly with the option --old-deploy-image
  • step_install_undercloud: <'true'> -- turn on/off the undercloud deployment
  • libvirt_uri: <'qemu:///session'> -- the URI used by libvirt, by default tripleo-quickstart uses user sessions to provide greater flexixiblity to our users. ** additional documentation ** is at http://docs.openstack.org/developer/tripleo-quickstart/accessing-libvirt.html
  • undercloud_conf_extra: "" -- extra options to be added to ~/undercloud.conf

Role Network Variables

  • undercloud_network_cidr: <'192.168.24.0/24'> -- the network cidr for the undercloud, note this also currently the default cidr used in other CI environments for tripleo.

The following variables are nested under network_environment_args. The values are calculated at run time using ansible jinja filters.

Note: See additional documentation at http://docs.ansible.com/ansible/playbooks_filters_ipaddr.html and the ansible code base ansible/plugins/filter/ipaddr.py

network_environment_args:
  ExternalNetCidr: "{{ undercloud_external_network_cidr }}"
  ExternalAllocationPools: >
    [{'start': '{{ undercloud_external_network_cidr|nthhost(4) }}',
    'end': '{{ undercloud_external_network_cidr|nthhost(250) }}'}]
  NeutronExternalNetworkBridge: ""
  ControlPlaneSubnetCidr: "{{ undercloud_network_cidr|ipaddr('prefix') }}"
  ControlPlaneDefaultRoute: "{{ undercloud_network_cidr|nthhost(1) }}"
  EC2MetadataIp: "{{ undercloud_network_cidr|nthhost(1) }}"
  DnsServers: [ '{{ external_network_cidr|nthhost(1) }}' ]

Example Playbook

Sample playbook to call the role

# Deploy the undercloud
- name:  Install undercloud
  hosts: undercloud
  gather_facts: no
  roles:
    - undercloud-deploy