Skip to content
Snippets Groups Projects
user avatar
Sam Yaple authored
This ansible module for docker-compose allows for idempotency. I have
submitted a pull request upstream to ansible-modules-extra to include
this new module. When/if the module is accepted upstream if can be
removed from the local module library.

The two playbooks have been updated to use this module. The database
data container does not support idempotency due to the fact that it
exists instead of sleeps. Therefore each time `docker-compose up` is
called, it will start the container and register a change. The
message-broker does not have this issue and will remain unchanged even
repeatedly running these playbooks.

Due to the use of a special branch of docker-compose provided by sdake,
this module requires at least docker-compose==1.2.0rc1

Change-Id: If1644eaa3bff0c2a007fa2d479a95bea941945f6
fd5c23ad
History
Name Last commit Last update
..
inventory
library
roles
README.md
site.yml

Koalla - Kolla with ansible!

Koalla extends the Kolla project past TripleO into its own bonified deployment system using Ansible and docker-compose.

Getting Started

To run the ansible playbooks, you must specify an inventory file which tracks all of the available nodes in your environment. With this inventory file ansible will log into each node via ssh (configurable) and run tasks. Ansible does not require password less logins via ssh, however it is highly recommended to setup ssh-keys. More information on the ansible inventory file can be found here.

Deploying

For All-In-One deploys, you can run the following commands. These will setup all of the containers on your localhost.

cd ./kolla/ansible
ansible-playbook -i inventory/all-in-one site.yml

To run the playbooks for only a particular service, you can us ansible tags. Multiple tags may be specified, and order is still determined by the playbooks.

cd ./kolla/ansible
ansible-playbook -i inventory/all-in-one site.yml --tags message-broker
ansible-playbook -i inventory/all-in-one site.yml --tags message-broker,database

Further Reading

Ansible playbook documentation can be found here.