# 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 host
control01       ansible_ssh_user=sam
control02       ansible_ssh_user=sam
control03       ansible_ssh_user=sam

# The above can also be specified as follows:
#control[01:03]     ansible_ssh_user=sam

[network]
network01

[compute]
compute01

[storage]
storage01

# You can explicitly specify which hosts run each project by updating the
# groups in the sections below. Common services are grouped together.
[haproxy:children]
network

[mariadb:children]
control

[rabbitmq:children]
control

[keystone:children]
control

[glance:children]
control

[nova:children]
control

[neutron:children]
network

[cinder:children]
control

[memcached:children]
control


# 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

# Neutron
[neutron-server:children]
neutron

[neutron-agents:children]
neutron

#Cinder
[cinder-api:children]
cinder

[cinder-backup:children]
storage

[cinder-scheduler:children]
cinder

[cinder-volume:children]
storage