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
Rely on the the `check_for_*` functions and remove redundant
`fail_unless_*` calls.
Also change `wait_for` to exit when it is missing a required argument.
Change-Id: I90c4545691d53185556e2838303ac3df0afaf9fa
In order for the `check_for_*` functions to be consumed by `wait_for`,
they should notify of their success but not exit.
As a consequence, the previous behavior is restored by the fail_unless_*
companion functions.
With this change, it is now possible to do:
wait_for 30 1 check_for_os_service_running keystone
Change-Id: I16ddf8913027030c3ccb5487713d172904508fd6
Previously, the vxlan kernel module was not being loaded. This
causes the following error when trying to start the lb-agent
when using the vxlan type driver:
ERROR neutron.plugins.linuxbridge.agent.linuxbridge_neutron_agent
[-] Linux kernel vxlan module and iproute2 3.8 or above are
required to enable VXLAN.
Change-Id: I1c9f5d13d25e887d15270a96d35f41a08316c8f0
libvirt is compiled with lxc support. On Ubuntu hosts, without this file
libvirt is nonusable. The container exits immediately.
Change-Id: Ifbc2d75defe082cbe3b80b1821799f1f965c2a85
This adds a very basic structure to begin supporting ansible in Kolla.
Ansible can support complete idempotency, but wrapping docker-compose
does not allow idempotency at this time. These playbooks will be
extended to compensate for that in future patches.
Change-Id: I1c9e8d32321e2733f5a9b752edf74b4fe90317ed
We have to overlay the /lib/modules folder from the host to properly
`modprobe` from within a container. We don't have to give it write
permissions however, so the docker-compose volume is mounted in as 'ro'
Change-Id: I95101136dad56e9331d8b92cd394495f7bd0576a
If a system is rebooted with kolla running, all the services will
continually restart. There appears to be some locking problem in
docker which will result in docker imploding. One problem is a
key dependency, mariadb, is never started on a reboot because it is
missing restart: always. Also restart the mariadb data container
until it returns success.
Change-Id: I599d28548ff041712d54a702c80fe36c321adf7f
Since it keeps changing and the upstream maintainer deletes the dropbox
image, I'll just put the docker image in one place.
Change-Id: I7098c2c6a1bf662665879324ff1bd1a7521fd941
When using ';' this can allow the previous command to fail and while the
docker build proceeds without realizing a command failed. Switching to
'&&' allows the exit code to make it to the docker build command and the
build to fail appropriately.
Change-Id: Idd0991ed4549542bb10d27da1a0a025d0503b6c1
This patch builds pam with no auditing. This allows the images to
operate on Ubuntu 14.04 which contain a kernel bug and have not been
updated.
Change-Id: I2b8bd192abcc26df27ca276dc3d0fde377048f20
Each container requires a set of environment variables be declared
so that it can function in a minimal setting. This doc will
provide a list of those environment var for each container.
Change-Id: I225f53c869e5830d680792fd0a38f6622ba9b04b
Data volumes are busted in docker master 1.6-rc1. Need to use a special
branch in order for docker to work.
Change-Id: Ia772de63e1fc8a07f052da2a3f4152f4d97b37f9
Previously, nova enabled_apis was hard coded and metdata_host
was using PUBLIC_IP param instead of exposing an individual
param.
Extending these params and creating a separate compose yml that
includes compute/libvirt/network/api is required to support
nova network multi_host.
Additional details can be found here:
http://docs.openstack.org/admin-guide-cloud/content/section_metadata-service.html
Change-Id: I5d417a0ee460f8ad9b2982fe83d63ab57013918e
Previously, eth0 was set as the nova flat interface. This
interface is used to bridge VM traffic between instances and
should not have an IP. It's a problem when you associate an
interface with an IP to the FLAT_INTERFACE.
Change-Id: I38c516094430e2d55b1b4c047a1bbcfe711a2dff
Previously, Heat was not allowing the necessary TCP ports for
RabbitMQ and MariaDB to Kolla nodes.
Change-Id: If34ca2de2e5213cb97138e5855cc88ff5c564b76
A few errors in the dev doc were causing problems with deploying
a dev env. The dev dos has been updated with the correct steps for
prep'ing a host for running Kolla. Additionally, wording has been
added to reference the Heat template for dev env deployment.
Change-Id: I9f0ba1bd2deca490a72b3c54cb1a7df386228ee8
Heat container is having trouble accessing heat meta data.
Heat needs to have HEAT_CFN_API_SERVICE_HOST set in order
to properly receive meta data.
Closes-bug 1435288
Change-Id: Ia28ece3ae91ec7acc62cc86039612841ac487f36