# These initial groups are the only groups required to be modified. The# additional groups are for more control of the environment.[control]# These hostname must be resolvable from your deployment hostcontrol01control02control03# The above can also be specified as follows:#control[01:03] ansible_ssh_user=kolla# The network nodes are where your l3-agent and loadbalancers will run# This can be the same as a host in the control group[network]network01[compute]compute01# When compute nodes and control nodes use different interfaces,# you can specify "api_interface" and another interfaces like below:#compute01 neutron_external_interface=eth0 api_interface=em1 storage_interface=em1 tunnel_interface=em1[storage]storage01[baremetal:children]controlnetworkcomputestorage# You can explicitly specify which hosts run each project by updating the# groups in the sections below. Common services are grouped together.[kibana:children]control[elasticsearch:children]control[haproxy:children]network[mariadb:children]control[rabbitmq:children]control[mongodb:children]control[keystone:children]control[glance:children]control[nova:children]control[neutron:children]network[cinder:children]control[memcached:children]control[horizon:children]control[swift:children]control[heat:children]control[murano:children]control[ironic:children]control[ceph-mon:children]control[ceph-rgw:children]control[ceph-osd:children]storage# Additional control implemented here. These groups allow you to control which# services run on which hosts at a per-service level.## Word of caution: Some services are required to run on the same host to# function appropriately. For example, neutron-metadata-agent must run on the# same host as the l3-agent and (depending on configuration) the dhcp-agent.# Glance[glance-api:children]glance[glance-registry:children]glance# Nova[nova-api:children]nova[nova-conductor:children]nova[nova-consoleauth:children]nova[nova-novncproxy:children]nova[nova-scheduler:children]nova[nova-spicehtml5proxy:children]nova[nova-compute-ironic:children]nova# Neutron[neutron-server:children]control[neutron-dhcp-agent:children]neutron[neutron-l3-agent:children]neutron[neutron-lbaas-agent:children]neutron[neutron-metadata-agent:children]neutron
# kolla/ansible/roles/nova/tasks/upgrade.yml---# Create new set of configs on nodes-include:config.yml# TODO(inc0): since nova is creating new database in L->M, we need to call it.# It should be removed later-include:bootstrap.yml-include:bootstrap_service.yml-name:Checkingifconductorcontainerneedsupgradingkolla_docker:action:"compare_image"common_options:"{{ docker_common_options }}"name:"nova_conductor"image:"{{ nova_conductor_image_full }}"when:inventory_hostnameingroups['nova-conductor']register:conductor_differs# Short downtime here, but from user perspective his call will just timeout or execute later-name:Stoppingallnova_conductorcontainerskolla_docker:action:"stop_container"common_options:"{{ docker_common_options }}"name:"nova_conductor"when:-inventory_hostnameingroups['nova-conductor']-conductor_differs['result']-include:start_conductors.yml-include:start_controllers.ymlserial:"30%"-include:start_compute.ymlserial:"10%"-include:reload.ymlserial:"30%"