roles
cassandra
cinder-controller
cinder-storage
common
dockerregistry
glance-controller
horizon
keystone
mariadb
memcached
neutron-controller
nova-compute
nova-controller
tasks
templates
nova-controller.service
rabbitmq
.gitignore
README.md
ansible.cfg
cassandra.yml
cinder-controller.yml
cinder-storage.yml
common.yml
dockerregistry.yml
generate_secrets.py
glance-controller.yml
horizon.yml
hosts
keystone.yml
mariadb.yml
memcached.yml
neutron-controller.yml
nova-compute.yml
nova-controller.yml
post-install.yml
rabbitmq.yml
secrets.yml
secrets.yml.topol
settings.yml
site.yml
test_hosts
the default listen_ip. make a loop for more flexibility. Get a listen ip specifically for that host. see if components have listen_ip defined before using ansible_default_ipv4 Make service files look for listen_ip variable. implemented listen_ip variable here too
24 lines
784 B
Desktop File
24 lines
784 B
Desktop File
[Unit]
|
|
Description=Openstack nova-controller Container
|
|
After=docker.service
|
|
Requires=docker.service
|
|
|
|
[Service]
|
|
TimeoutStartSec=0
|
|
Restart=always
|
|
ExecStartPre=-/usr/bin/docker kill %n
|
|
ExecStartPre=-/usr/bin/docker rm %n
|
|
ExecStart=/usr/bin/docker run --name %n \
|
|
{{ env_vars | replace('\n', '') }} \
|
|
--add-host=mariadb:{{ hostvars[groups['databases'][0]]['listen_ip'] | default(hostvars[groups['databases'][0]]['ansible_default_ipv4']['address']) }} \
|
|
--add-host=keystone:{{ hostvars[groups['keystone'][0]]['listen_ip'] | default(hostvars[groups['keystone'][0]]['ansible_default_ipv4']['address']) }} \
|
|
--privileged \
|
|
-v /srv/nova-controller/root:/root \
|
|
-p 8774:8774 \
|
|
-p 8778:8778 \
|
|
-p 6080:6080 \
|
|
{{ docker_image }} /etc/run.sh
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|