05ae112e20
The LXC container creation playbook is one of the longest-running playbooks in the repository. It generally takes 15-17 minutes to run during the gate jobs. Much of this time is spent updating each container with the latest packages. This patch causes the LXC cached image to be updated one time before that image is used for all of the containers. It reduces the amount of times the updates actually run and this shortens the time it takes to complete the playbook. The updates to the cached image will only occur if a new cache image has just been downloaded. Partial-bug: 1489169 Change-Id: Iba64f9a3aeb999907088f2a99e8904700074550b |
||
---|---|---|
.. | ||
defaults | ||
handlers | ||
meta | ||
tasks | ||
templates | ||
CONTRIBUTING.rst | ||
LICENSE | ||
README.rst |
OpenStack LXC container create
- tags
-
openstack, lxc, container, cloud, ansible
- category
-
*nix
Role for creating LXC containers. This role has been setup for use in OpenStack. This role will create several directories on the LXC host for use in bind mounted storage within the container.
- Example Play:
-
- name: Create container(s) hosts: all_containers gather_facts: false user: root roles: - { role: "lxc_container_create", tags: [ "lxc-container-create" ] }
- Example Inventory:
-
{ "all_containers": { "children": [ "group_of_containers" ], "hosts": [] }, "lxc_hosts": { "children": [], "hosts": [ "infra1" ] }, "group_of_containers": { "children": [], "hosts": [ "container1" ] }, "_meta": { "hostvars": { "infra1": { "ansible_ssh_host": "192.168.0.1", "container_address": "192.168.0.1", "container_name": "infra1", "container_networks": { "management_address": { "bridge": "br-mgmt", "interface": "eth1", "netmask": "255.255.252.0", "type": "veth" } }, "properties": { "container_release": "trusty", "is_metal": true } }, "container1": { "ansible_ssh_host": "10.0.0.1", "container_address": "10.0.0.1", "container_name": "container1", "container_networks": { "management_address": { "address": "10.0.0.1", "bridge": "br-mgmt", "interface": "eth1", "netmask": "255.255.252.0", "type": "veth" } }, "physical_host": "infra1", "physical_host_group": "lxc_hosts", "properties": { "container_release": "trusty", } } } } }