tripleo-quickstart-extras/roles/undercloud-deploy
Sagi Shnaidman cf5bc14e7d Make VirtualBMC usage optional
In some environments we don't want to use vbmc, like in ovb,
where we already have dedicated bmc machine, so make it
configurable.

Closes-Bug: #1651562
Change-Id: I99dcae5853761663514078cb6045ca886e8d10f4
2016-12-21 10:12:05 -05:00
..
defaults Make VirtualBMC usage optional 2016-12-21 10:12:05 -05: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 move the undercloud deploy role from quickstart to quickstart-extras 2016-12-19 10:37:22 -05:00
README.md move the undercloud deploy role from quickstart to quickstart-extras 2016-12-19 10:37:22 -05: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

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