Browse Source

Add scenario 012 - overlcoud baremetal+ansible-ml2

Used by a new featureset[1] that uses the neutron ansible-networking driver
to configure the switch providing networking for overcloud ironic
nodes such that tenant networks are segregated via vlan.

This scenario also sets up ssh keys so that ansible inside the neutron
container can ssh to the controller to configure OVS.

The new scenario also includes a temporary workaround to upgrade
ansible in the neutron container, this can be removed once ansible
in the container is v2.5.8+

Also remove scenario011 as the patches that used it never merged and
now the tennant networks are working in the overcloud, we'll test
with this instead.

[1] - https://review.openstack.org/#/c/579601/

Change-Id: Ife83825216ccb96a5f24918f42a757d0c48b0e9d
changes/03/579603/18
Derek Higgins 3 years ago
parent
commit
ca3d5e47b0
2 changed files with 32 additions and 2 deletions
  1. +21
    -2
      ci/common/vbmc_setup.yaml
  2. +11
    -0
      ci/environments/scenario012-multinode-containers.yaml

+ 21
- 2
ci/common/vbmc_setup.yaml View File

@ -13,7 +13,7 @@ resources:
config: |
#!/bin/bash
cd /etc/yum.repos.d
echo 'nameserver 8.8.8.8' > /etc/resolv.conf
echo 'nameserver 1.1.1.1' > /etc/resolv.conf
curl https://git.openstack.org/cgit/openstack/tripleo-repos/plain/tripleo_repos/main.py | python - current-tripleo
yum install -y python2-virtualbmc epel-release libvirt-client libvirt-daemon libvirt qemu-kvm-ev
yum install -y qemu-system-x86 # <-- needs epel
@ -22,8 +22,27 @@ resources:
git clone https://git.openstack.org/openstack/ironic /tmp/ironic
mkdir -p /var/log/bmlogs
chmod 777 /var/log/bmlogs
# Create a ssh keypair and place the private key somewhere ansible inside the
# neutron_api container can read it.
ssh-keygen -P "" -f /etc/puppet/ci-key
chmod 644 /etc/puppet/ci-key
cat /etc/puppet/ci-key.pub >> /root/.ssh/authorized_keys
# neutron_api workaround for https://github.com/ansible/ansible/issues/42108
# remove when ansible v2.5.8+ is in the container image
cat << EOF | docker exec -i -u 0 neutron_api /bin/bash -x
yum install -y epel-release
yum update -y ansible
EOF
docker restart neutron_api
# nohup needed as vbmc seems to keep stdin open
nohup /tmp/ironic/devstack/tools/ironic/scripts/create-node.sh -n node1 -c 1 -m 3072 -d 10 -b br-ex -p 1161 -M 1350 -f qcow2 -a x86_64 -E qemu -e /usr/bin/qemu-system-x86_64 -l /var/log/bmlogs -A 66:0d:1d:d8:0b:a3 > ~zuul/create-node.log 2>&1 < /dev/null &
nohup /tmp/ironic/devstack/tools/ironic/scripts/create-node.sh -n node1 -c 1 -m 3072 -d 10 -b br-ex -p 1161 -M 1350 -f qcow2 -a x86_64 -E qemu -e /usr/bin/qemu-system-x86_64 -l /var/log/bmlogs -A 66:0d:1d:d8:0b:11 > ~zuul/create-node-1.log 2>&1 < /dev/null
nohup /tmp/ironic/devstack/tools/ironic/scripts/create-node.sh -n node2 -c 1 -m 3072 -d 10 -b br-ex -p 1162 -M 1350 -f qcow2 -a x86_64 -E qemu -e /usr/bin/qemu-system-x86_64 -l /var/log/bmlogs -A 66:0d:1d:d8:0b:22 > ~zuul/create-node-2.log 2>&1 < /dev/null &
disown -a
ExtraDeployments:
type: OS::Heat::SoftwareDeploymentGroup


ci/environments/scenario011-multinode-containers.yaml → ci/environments/scenario012-multinode-containers.yaml View File


Loading…
Cancel
Save