This change removes logic for releases older than train, because these
releases are already EOLed. This covers only overcloud-* roles and
playbooks and the other items will be covered by separate changes.
Note that this change also removes the containerized_* variables
because current active releases(>=Train) no longer supports
non-containerized deployment. The containerized_overcloud_upgrade
variable is still left because the variable is still required by
the tripleo-ci-base-multinode-standard job template.
Change-Id: If29ec2c2219a28a1f79db0e552e2c622c0a7bda6
Currently network config for external network
is not handled when deploying overcloud with
multiple-nics-vlans network_isolation.
This patch handles this case and configures the vlan
on external interface on the undercloud.
Change-Id: I82013d33c1729619e47b633bddd1580e9efe0b55
We set this with undercloud post_deploy since train. As stein
and queens have already been proposed for EOL, we can safely
remove this.
Change-Id: I5303ffee8abd775e5289440fdb1d50f3b697bda8
Upgrades yamllint to latest version and adots use of its strict
checking.
Fix all known problems reported by yamllint so we don't have to do
that while touching these files.
Change-Id: I4bdc520d9e2aff086c4b463718bc1e053261a4f5
Story: https://tree.taiga.io/project/tripleo-ci-board/task/381
Makes those files conformant with current linting rules and avoids
linting errors when we need to toch them again.
Previous doing "pre-commit run -a" uncovered these errors, now is no
longer reporting any other errors.
Change-Id: Ie4cf229c8f11c2b55b323eac23c89483b26d3781
1) This reverts commit e47d68eb11.
That was technical debt, and with the new service in THT we don't need
it anymore in Rocky.
2) This removes undercloud_external_network_cidr rule that shouldn't be
useful since we control in THT for Rocky.
Closes-Bug: #1756183
Change-Id: I39b04f81803d76e419d1f3960edc4c927b2dbd4e
Full context: https://bugs.launchpad.net/tripleo/+bug/1756183
This code aims to:
- configure basic masquerade network iptables rules
- be temporary until routed networks is properly ported in
tripleoclient.
- be technical debt and will be cleanup as soon as possible.
Co-authored-by: Bogdan Dobrelya <bdobreli@redhat.com>
Change-Id: Ic8c9c6d3f30d9a37a0b3e0904c1bc7a6b35b32a3
Related-Bug: #1756183
Previously, the overcloud-prep-network.sh script would parse
/etc/resolv.conf and add all resolvers found in the file to the ctlplane
neutron subnet unless the overcloud_dns_servers variable is set.
In the case the host machine has IPv6 enabled, this causes the neutron
subnet-update command to fail on IPv6 addresses with:
Invalid input for operation: dns_nameserver '2a01:e00::1' does not
match the ip_version '4'.
This commit filters out IPv6 addresses.
Change-Id: I4f287015b6161b615eb95312b528d6a392a54d90
Closes-Bug: #1736264
In cases where TLS and IPv6 is enabled in the overcloud, quickstart
still passed an IPv4 value for PublicVirtualFixedIps. This fixes that.
Co-Author: Juan Antonio Osorio Robles <jaosorior@redhat.com>
Co-Author: Sagi Shnaidman <sshnaidm@redhat.com>
Change-Id: I09849c0915e7de7cf3b6de92457dfb5ff29f05ff
This is useful if some of the NIC configs are no-op but we still want
DNS available on *all* overcloud nodes.
Change-Id: I83017b0598ce2321c99fe1bcc142c9127a932a48
When passing an empty external network definition for the
undercloud, it was failing because it was assuming to have values
and a device type. Check if that exists before using it
Change-Id: I6b573485d373219d257b8c34a252d8490a4c09a0
Fixes-Bug: #1720796
We currently use the following single systemd service to start all vbmc
instances:
Type=oneshot
ExecStart=/bin/bash -c 'for bmc in $(ls /root/.vbmc/); do vbmc start $bmc; done'
ExecStop=/bin/bash -c 'for bmc in $(ls /root/.vbmc/); do vbmc stop $bmc; done'
While this works okay for deployment and undercloud reboot, it does
not restart a crashing vbmc process. Let's switch to starting a vbmc process
via systemd's instantiated service, which will cover for all existing
cases and can also take care of restarting a crashing vbmc process:
$ systemctl status virtualbmc@ceph_2
virtualbmc@ceph_2.service - VirtualBMC ceph_2 service
Loaded: loaded (/usr/lib/systemd/system/virtualbmc@.service; disabled; vendor preset: disabled)
Active: active (running) since Sun 2017-10-08 07:09:36 UTC; 23s ago
Process: 18184 ExecStart=/bin/vbmc start %i (code=exited, status=0/SUCCESS)
Main PID: 18194 (vbmc)
CGroup: /system.slice/system-virtualbmc.slice/virtualbmc@ceph_2.service
18194 /usr/bin/python2 /bin/vbmc start ceph_2
Oct 08 07:09:35 undercloud systemd[1]: Starting VirtualBMC ceph_2 service...
Oct 08 07:09:36 undercloud systemd[1]: PID file /root/.vbmc/ceph_2/pid not readable (yet?) after start.
Oct 08 07:09:36 undercloud systemd[1]: Started VirtualBMC ceph_2 service.
$ kill 18194
$ systemctl status virtualbmc@ceph_2
virtualbmc@ceph_2.service - VirtualBMC ceph_2 service
Loaded: loaded (/usr/lib/systemd/system/virtualbmc@.service; disabled; vendor preset: disabled)
Active: active (running) since Sun 2017-10-08 07:10:22 UTC; 816ms ago
Process: 18311 ExecStop=/bin/vbmc stop %i (code=exited, status=0/SUCCESS)
Process: 18319 ExecStart=/bin/vbmc start %i (code=exited, status=0/SUCCESS)
Main PID: 18328 (vbmc)
CGroup: /system.slice/system-virtualbmc.slice/virtualbmc@ceph_2.service
18328 /usr/bin/python2 /bin/vbmc start ceph_2
Oct 08 07:10:22 undercloud systemd[1]: virtualbmc@ceph_2.service holdoff time over, scheduling restart.
Oct 08 07:10:22 undercloud systemd[1]: Starting VirtualBMC ceph_2 service...
Oct 08 07:10:22 undercloud systemd[1]: PID file /root/.vbmc/ceph_2/pid not readable (yet?) after start.
Oct 08 07:10:22 undercloud systemd[1]: Started VirtualBMC ceph_2 service.
Additionally let's open the IPMI ports used by vbmc on the undercloud.
This way ironic on the overcloud and cluster stonith can actually work
correctly.
Change-Id: I2d2f8554a58196e88996aee5089899529b5af831
Closes-Bug: #1722037
eth6 doesn't exist, don't configure it at all,
instead of this the external interface wil be configured
according to network-template.yaml file settings.
Change-Id: Ib4ef9ee5a8ed04273ec6614c33f953642ac22d7c
We need to append the confs related to IPV6 (if ipv6 is enabled) instead
of overwriting the whole file.
Change-Id: I5e8b486f8e63f53c43a72443cb6404ac8da2e579
This commit adds IPV6 support for devices of type "ethernet", the config
file, while using IPV6, will be something like this:
undercloud_networks:
external:
address: 172.20.0.254
netmask: 255.255.255.0
address6: fd00:fd00:fd00:2305:ffff:ffff:ffff:fffe/64
device_type: ethernet
device_name: eth2
Change-Id: Ie8fc67b34dcf13059e71ee13a88b83b68095840f
Today when we need to configure the external network on the undercloud
we can only set an ovs device with type OVSIntPort.
This commit makes you able to set a device as it is (so without any vlan
or additional ovs options), like this:
undercloud_networks:
external:
address: 172.20.0.254
netmask: 255.255.255.0
device_type: ethernet
device_name: eth2
Change-Id: I0e57891d845bde21a42746b2babb55c75b336ee7
When pipe is added to command, it should still exit with its
result code, so save it by setting pipeline option before each
command.
Close-Bug: #1676156
Change-Id: Ibbe49b4a15a5b7825447a563fe35af85fd48b3ff
Prepend a timestamp with awk to our deployment and test commands. This
allows html linking from the log servers and also better correlation
with the system logs.
We are not using the "ts" command from the moreutils package to avoid
extra dependencies. The drawback is the lack of sub-second timinig.
It is possible to disable the timestamping by setting the
timestamper_cmd to an empty string.
Also add a README file for the extras-common role.
Closes-Bug: #1673046
Change-Id: I8a2a1e4fde2ba805d3361e2e7a2337e873133ef0
add role var undercloud_network_cidr from undercloud-deploy so it can be
reused by validate-undercloud role for the sanity check script
Removed unnecessary default from other roles.
Change-Id: Id46d7a9e3fdc2028cf345564311c04af323b289f
Support multinic network isolation for ipv4 and ipv6 in quickstart
Also updates the roles and configs for network isolation types
used upstream in tripleo-heat-templates.
Change-Id: I5f78b908fe41a1304295fad4e0187d049b16fa80
Implement the composable upgrade workflow for tripleo-quickstart
- Download a newton overcloud image and remove the current one (master)
- Deploy a newton overcloud with the newton tht repo
- Upgrade only the overcloud to master
Change-Id: Ib0ad132f419b2fd3c23287d2f1374909c4ad486d
currently, the overcloud_dns_servers variable is added to the DnsServers
parameter in heat, this parameter adds the nameserver for the overcloud
nodes once os-net-config runs. However, if we need these nameservers to
be set before this (for instance, when a cloud-init script runs), we
need something that runs before this.
So, adding the nameservers defined by this variable to the subnet works
for us in this case.
Change-Id: I8edb1e8fb700082ac6fac8995ebbb7bf27211f37
We need to differentiate local_working_dir from working_dir
as well as decouple the stack user from `ansible_user` var.
Both of these are causing issues as we begin to automate
deployments in more environments.
- Cleanup duplicate variables that are consumed via extras-common
- Note: extras-common depends on the common role in OOOQ
- Cleanup redundant var and superfluous quotes from overcloud-scale
role
- Cleanup redundant comments in <role>/defaults/main.yml
Closes-bug: 1654574
Change-Id: I9c7a3166ed1fc5042c11e420223134ea912b45c5
As more ansible variables are shared or reused across roles it is
important to define these variables in a role that is always
executed. In this case that role is extras-common.
Note: This review is a blocker for https://review.openstack.org/#/c/418998/
Change-Id: I31fd13d7bcb98d73e7f16048c57c027d95faeec5