1 - [ 'nova-compute:amqp', 'rabbitmq-server:amqp' ]
2 - [ 'neutron-gateway:amqp', 'rabbitmq-server:amqp' ]
3 - [ 'keystone:shared-db', 'mysql:shared-db' ]
4 - [ 'nova-cloud-controller:identity-service', 'keystone:identity-service' ]
5 - [ 'glance:identity-service', 'keystone:identity-service' ]
6 - [ 'neutron-api:identity-service', 'keystone:identity-service' ]
7 - [ 'neutron-api:shared-db', 'mysql:shared-db' ]
8 - [ 'neutron-api:amqp', 'rabbitmq-server:amqp' ]
9 - [ 'neutron-gateway:neutron-plugin-api', 'neutron-api:neutron-plugin-api' ]
10 - [ 'glance:shared-db', 'mysql:shared-db' ]
11 - [ 'glance:amqp', 'rabbitmq-server:amqp' ]
12 - [ 'nova-cloud-controller:image-service', 'glance:image-service' ]
13 - [ 'nova-compute:image-service', 'glance:image-service' ]
14 - [ 'nova-cloud-controller:cloud-compute', 'nova-compute:cloud-compute' ]
15 - [ 'nova-cloud-controller:amqp', 'rabbitmq-server:amqp' ]
16 - [ 'nova-cloud-controller:quantum-network-service', 'neutron-gateway:quantum-network-service' ]
17 - [ 'openstack-dashboard:identity-service', 'keystone:identity-service' ]
18 - [ 'nova-cloud-controller:shared-db', 'mysql:shared-db' ]
19 - [ 'nova-cloud-controller:neutron-api', 'neutron-api:neutron-api' ]
20 - [ 'cinder:image-service', 'glance:image-service' ]
21 - [ 'cinder:amqp', 'rabbitmq-server:amqp' ]
22 - [ 'cinder:identity-service', 'keystone:identity-service' ]
23 - [ 'cinder:cinder-volume-service', 'nova-cloud-controller:cinder-volume-service' ]
24 - [ 'cinder-ceph:storage-backend', 'cinder:storage-backend' ]
25 - [ 'ceph:client', 'nova-compute:ceph' ]
26 - [ 'cinder:shared-db', 'mysql:shared-db' ]
27 - [ 'ceph:client', 'cinder-ceph:ceph' ]
28 - [ 'ceph:client', 'glance:ceph' ]
29 - [ 'ceph-osd:mon', 'ceph:osd' ]
30 - [ 'ceph-radosgw:mon', 'ceph:radosgw' ]
31 - [ 'ceph-radosgw:identity-service', 'keystone:identity-service' ]
32 - [ 'ceilometer:amqp', 'rabbitmq-server:amqp' ]
33 - [ 'ceilometer-agent:ceilometer-service', 'ceilometer:ceilometer-service' ]
34 - [ 'ceilometer:identity-service', 'keystone:identity-service' ]
35 - [ 'ceilometer:identity-notifications', 'keystone:identity-notifications' ]
36 - [ 'ceilometer-agent:nova-ceilometer', 'nova-compute:nova-ceilometer' ]
37 - [ 'ceilometer:shared-db', 'mongodb:database' ]
38 - [ 'heat:shared-db', 'mysql:shared-db' ]
39 - [ 'heat:identity-service', 'keystone:identity-service' ]
40 - [ 'heat:amqp', 'rabbitmq-server:amqp' ]
41 - [ 'congress:shared-db', 'mysql:shared-db' ]
42 - [ 'congress:identity-service', 'keystone:identity-service' ]
43 - [ 'congress:amqp', 'rabbitmq-server:amqp' ]
44 - [ 'aodh:amqp', 'rabbitmq-server:amqp' ]
45 - [ 'aodh:shared-db', 'mysql:shared-db' ]
46 - [ 'aodh:identity-service', 'keystone:identity-service' ]
48 - [ 'nova-compute:lxd', 'lxd:lxd' ]
50 {% if os.network.controller == 'nosdn' %}
51 - [ 'neutron-openvswitch:amqp', 'rabbitmq-server:amqp' ]
52 - [ 'nova-compute:neutron-plugin', 'neutron-openvswitch:neutron-plugin' ]
53 - [ 'neutron-openvswitch:neutron-plugin-api', 'neutron-api:neutron-plugin-api' ]
54 {% elif os.network.controller == 'odl' %}
55 - [ 'neutron-api:neutron-plugin-api-subordinate', 'neutron-api-odl:neutron-plugin-api-subordinate' ]
56 - [ 'nova-compute:neutron-plugin', 'openvswitch-odl:neutron-plugin' ]
57 - [ 'neutron-gateway', 'openvswitch-odl' ]
58 - [ 'openvswitch-odl:ovsdb-manager', 'odl-controller:ovsdb-manager' ]
59 - [ 'neutron-api-odl:odl-controller', 'odl-controller:controller-api' ]
60 {% elif os.network.controller == 'onos' %}
61 - [ 'neutron-api:neutron-plugin-api-subordinate', 'neutron-api-onos:neutron-plugin-api-subordinate' ]
62 - [ 'nova-compute:neutron-plugin', 'openvswitch-onos:neutron-plugin' ]
63 - [ 'neutron-gateway', 'openvswitch-onos' ]
64 - [ 'openvswitch-onos:ovsdb-manager', 'onos-controller:ovsdb-manager' ]
65 - [ 'neutron-api-onos:onos-controller', 'onos-controller:controller-api' ]
66 {% elif os.network.controller == 'ocl' %}
67 - [ 'contrail-configuration:cassandra', 'cassandra:database' ]
68 - [ 'contrail-configuration', 'zookeeper' ]
69 - [ 'contrail-configuration', 'rabbitmq-server' ]
70 - [ 'contrail-configuration', 'keystone' ]
71 - [ 'neutron-api-contrail', 'contrail-configuration' ]
72 - [ 'neutron-api-contrail', 'keystone' ]
73 - [ 'contrail-control:contrail-api', 'contrail-configuration:contrail-api' ]
74 - [ 'contrail-control:contrail-discovery', 'contrail-configuration:contrail-discovery' ]
75 - [ 'contrail-control:contrail-ifmap', 'contrail-configuration:contrail-ifmap' ]
76 - [ 'contrail-control', 'keystone' ]
77 - [ 'contrail-analytics:cassandra', 'cassandra:database' ]
78 - [ 'contrail-analytics:contrail-analytics-api', 'contrail-configuration:contrail-analytics-api' ]
79 - [ 'contrail-configuration:contrail-discovery', 'contrail-analytics:contrail-discovery' ]
80 - [ 'contrail-webui', 'keystone' ]
81 - [ 'contrail-webui:contrail_api', 'contrail-configuration:contrail-api' ]
82 - [ 'contrail-webui:contrail_discovery', 'contrail-configuration:contrail-discovery' ]
83 - [ 'contrail-webui:cassandra', 'cassandra:database' ]
84 - [ 'nova-compute', 'neutron-contrail' ]
85 - [ 'neutron-contrail:contrail-discovery', 'contrail-configuration:contrail-discovery' ]
86 - [ 'neutron-contrail:contrail-api', 'contrail-configuration:contrail-api' ]
87 - [ 'neutron-contrail', 'keystone' ]
88 - [ 'contrail-configuration', 'ntp' ]
89 - [ 'contrail-control', 'ntp' ]
90 - [ 'contrail-analytics', 'ntp' ]
91 - [ 'contrail-configuration', 'haproxy' ]
92 - [ 'contrail-analytics', 'haproxy' ]
93 - [ 'contrail-webui', 'haproxy' ]
94 - [ 'haproxy', 'keepalived' ]