431 Commits

Author SHA1 Message Date
Mark Goddard
3a2ba67743 Add kayobe user bootstrap support for the seed-hypervisor
This allows kayobe to configure the kayobe ansible user (default stack) on the
seed-hypervisor using a bootstrap user account.
2018-01-13 09:10:29 +00:00
Mark Goddard
8b17a75d6c Fix compute-node-discovery.yml - missing register 2017-12-20 10:22:07 +00:00
Mark Goddard
d8fe45b3d8 Tag all (well, some of) the things (plays)
Having tagged plays allows us to easily run a subset of the plays for a
command, and perform targeted operations with less risk of unintended
consequences.

The tags are typically named after the playbook, although some of the
overcloud playbooks have been tagged without an overcloud- prefix.
2017-12-19 16:58:21 +00:00
Mark Goddard
20ee6d6613 Add a comment about the ansible version limit for kolla-ansible 2017-12-19 16:32:48 +00:00
Mark Goddard
7f04e9ccc6 Create and install virtualenvs on seed/seed-hv/overcloud host upgrade
Adds two new commands:

kayobe seed hypervisor host upgrade
kayobe seed host upgrade

These commands can be used prior to performing an upgrade, in addition
to the existing command 'kayobe overcloud host upgrade'. These commands
will ensure that if kayobe and kolla-ansible remote virtualenvs are in
use, they exist and have all dependencies installed.
2017-12-19 16:32:48 +00:00
Mark Goddard
5e82121505 Don't fail if compute node is powered off in compute-node-discovery.yml
Some BMCs aren't idempotent, and cause ipmitool to fail if the requested power
state is already set.
2017-12-19 16:32:48 +00:00
Mark Goddard
ecf0527f97 Use (de)activate-virtualenv role to activate virtualenvs
These roles ensure that the previous value of ansible_python_interpreter is
restored when the virtualenv is deactivated.
2017-12-19 16:32:48 +00:00
Mark Goddard
3620be7c08 Support configuration of a remote virtualenv for kayobe 2017-12-19 16:32:48 +00:00
Mark Goddard
7f7d367385 Support configuration of a remote virtualenv for kolla-ansible 2017-12-19 16:32:48 +00:00
Mark Goddard
d757f90e0b
Merge pull request #96 from markgoddard/update-ka-ansible
Update kolla-ansible ansible version
2017-12-19 16:29:57 +00:00
Mark Goddard
422ffc0f93 Use a requirements file to install kolla-ansible, update ansible to 2.3
We install ansible in the kolla-ansible virtualenv. By moving to a
requirements.txt file for specifying dependencies, we can use non-exact version
matching, to allow us to install the latest release in the 2.3 ansible release
series.
2017-12-13 17:03:54 +00:00
Mark Goddard
87d46a33c2 Update python docker package requirement note in role READMEs 2017-12-13 17:03:54 +00:00
Mark Goddard
a2cbe94b76 Improve bare metal compute node management
Adds these new commands:

kayobe baremetal compute inspect
kayobe baremetal compute manage
kayobe baremetal compute provide

These can be used to set the provision state of ironic nodes in the
baremetal-compute group.
2017-12-13 11:30:26 +00:00
Mark Goddard
c02524d753
Merge pull request #94 from markgoddard/add-docker-to-ka-test
Add docker registry config to kolla-ansible role test
2017-12-08 09:24:06 +00:00
Mark Goddard
94f37ea66f
Merge pull request #86 from ktibi/add_collectd
add collectd regex
2017-12-08 09:03:47 +00:00
Kevin TIBI
1f3032233b add collectd regex 2017-12-08 09:52:16 +01:00
Mark Goddard
4b7f3c2344 Add docker registry config to kolla-ansible role test 2017-12-08 08:40:52 +00:00
Mark Goddard
76309988ff Initial unit testing of ansible - kolla-ansible role
Adds a new tox environment, ansible, which runs ansible unit tests. One
such test has been implemented so far, for the kolla-ansible role.
2017-12-07 11:26:50 +00:00
Mark Goddard
91c341ad3e Add missing defaults for kolla-ansible docker configuration 2017-12-07 11:00:46 +00:00
Mark Goddard
6aef98b142 Add a variable to kolla-ansible role for path to passwords.yml
This is the input file kept in $KAYOBE_CONFIG_PATH, rather than the generated
file in .
2017-12-07 11:00:46 +00:00
Mark Goddard
10212674ac Use ansible_user_id rather than ansible_user
The former is a fact, the latter is used to configure the remote connection user
for a host.
2017-12-07 11:00:46 +00:00
Mark Goddard
817df37bf9 Don't quote a boolean value in globals.yml 2017-12-07 11:00:46 +00:00
Mark Goddard
84e8ba948b Allow controllers and seed groups to be non-existent in kolla-ansible role 2017-12-07 11:00:46 +00:00
Mark Goddard
c818758260 Remove support for colocated kolla & kolla-ansible
Kolla-ansible python code was moved to the kolla-ansible repo in ocata.
2017-12-07 11:00:46 +00:00
Mark Goddard
50a8e72a23
Only check presence of locally built IPA image on first controller
The image is only built on the first controller, so will not be present on other controllers.
2017-12-05 17:08:12 +00:00
Mark Goddard
c370b54a41
Merge pull request #88 from markgoddard/multiple-external-nets
Support multiple external networks
2017-12-05 14:08:21 +00:00
Mark Goddard
4f7a6ddde9
Add blank line after pip install task 2017-12-04 16:29:35 +00:00
Darren Hoyland
2bd0926604 Added python-ironicclient (would be better going in the os-openstackclient role, but that's on galaxy 2017-12-04 16:26:04 +00:00
Mark Goddard
bb22c94067 Use largest MTU of interfaces when determining OVS veth MTU
We create a veth pair to link the Linux bridge to the neutron Open vSwitch
bridge.  The MTU of the veth needs to be the largest MTU of the networks that
it will carry.  When VLAN subinterfaces are used, the provisioning network may
map to the same bridge as one of the external networks, and we must use the
largest MTU of these networks.
2017-12-01 11:21:00 +00:00
Mark Goddard
5b0a90baa4 Support multiple external networks 2017-12-01 11:21:00 +00:00
Mark Goddard
3608993e36 Fix support for provisioning and external networks on different physical networks
A list of external network interfaces is generated and provided to kolla-ansible. When
the list is greater than one item, the generated list is incorrect, containing OVS
bridge names instead of external interface names. This change fixes that.
2017-12-01 11:21:00 +00:00
Mark Goddard
dbb298707a Remove config-mgmt group, instead use localhost
There are places where we assume the control host is localhost, so this group is of
little use.
2017-12-01 11:21:00 +00:00
Mark Goddard
91f01ff8af Use a separate task to destroy node exporter, opensm and docker registry containers 2017-11-29 11:41:21 +00:00
Mark Goddard
5f6c181c69
Merge pull request #81 from markgoddard/container-image-builders
Improve container image build workflow
2017-11-24 15:37:43 +00:00
Mark Goddard
7f767b1b4e Convert variable to bool in group_by
We use the group_by module to create groups based on host variables.
When the variable is a boolean, we should convert it to a bool using the
bool filter, to ensure that the group name has a consistent format.
2017-11-24 15:34:54 +00:00
Mark Goddard
92d70e70eb Extend /etc/hosts fixup playbook for the loopback IP
On Vagrant in particular, we get an entry for 127.0.0.1 for the server's hostname.
This will cause rabbitmq checks to fail, blocking upgrades.
2017-11-22 17:01:30 +00:00
Mark Goddard
6a6186f64f Add enable flag and image regex for manila 2017-11-22 09:43:04 +00:00
Mark Goddard
ae4a818007
Merge pull request #78 from markgoddard/veth-mtu
Add support for setting MTU on veth interfaces
2017-11-21 18:14:12 +00:00
Mark Goddard
6c4f179b6e Add support for free-form configuration of kolla-build.conf
Provide extra configuration of kolla-build.conf via
$KAYOBE_CONFIG_PATH/kolla/kolla-build.conf.
2017-11-21 17:51:07 +00:00
Mark Goddard
d130b8a62c Make more container image builds conditional
Also adds support for building the etcd image.
2017-11-21 17:51:07 +00:00
Mark Goddard
713da0730f Don't specify a docker registry when kolla_docker_registry is defined but None
This is the default.
2017-11-21 17:51:07 +00:00
Mark Goddard
19614e9491 Add an ansible group for container image builders
Hosts in this group are used to build container images for both the seed and
overcloud hosts.

We also rename various overcloud image related variables from controller* to
overcloud*.
2017-11-21 17:50:32 +00:00
John Garbutt
63cf1abf9f Fix image build regex
Turns out kolla_docker_registry is always defined, but is sometimes an
empty string or None. It defaults to None.

Before this change we always sent "--registry" but the kolla build CLI
would pick up our regex as the parameter associated with "--registry" so
we would get a strange image tag, and still build all the images.
2017-11-21 15:33:44 +00:00
John Garbutt
2a8f05a539 Add manila extra config path
This extra config path is being used by the next external ceph
configuration for the native ceph backend.
2017-11-21 09:30:22 +00:00
Mark Goddard
3970b875d4 Move galaxy requirements.yml to top level
This prevents ansible from expecting it to be a playbook when running syntax
checks against globbed file names.
2017-11-17 12:06:22 +00:00
Mark Goddard
619ad3ebc8 Update external-net.yml to use the stackhpc.os-networks role 2017-11-17 12:06:22 +00:00
Mark Goddard
510db6b121 Fix dell playbook inclusion 2017-11-17 12:06:22 +00:00
Mark Goddard
e83e2e2d09
Merge pull request #74 from ktibi/add_ldap_keystone
add ldap conf for keystone
2017-11-17 10:18:17 +00:00
Kevin TIBI
bdb90c0ed9 add ldap conf for keystone and horizon 2017-11-17 10:13:40 +00:00
Mark Goddard
07733d1aea Add support for setting MTU on veth interfaces 2017-11-17 09:14:56 +00:00