Files
whitebox-tempest-plugin/.zuul.yaml
James Parker 0276f52886 Mixed Dedicated and Shared cpu instances
Tests deploying an instance mapped to shared PCPUs and dedicated PCPUs
on the host [1]

New test method deploys an instance using a flavor with a mixed
dedicated policy. Currently deploys with a mask that excludes core id
0 of the guest instance from mapping its cores to dedicated PCPUs from
  the host.

[1] https://specs.openstack.org/openstack/nova-specs/specs/victoria/implemented/use-pcpu-vcpu-in-one-instance.html

Change-Id: Id9a32f1439ee8b646f35988675f352e789deaf12
2021-10-28 15:54:06 -04:00

203 lines
6.4 KiB
YAML

- nodeset:
name: nested-virt-multinode
nodes:
- name: controller
label: nested-virt-ubuntu-focal
- name: compute
label: nested-virt-ubuntu-focal
groups:
# Node where tests are executed and test results collected
- name: tempest
nodes:
- controller
# Nodes running the compute service
- name: compute
nodes:
- controller
- compute
# Nodes that are not the controller
- name: subnode
nodes:
- compute
# Switch node for multinode networking setup
- name: switch
nodes:
- controller
# Peer nodes for multinode networking setup
- name: peers
nodes:
- compute
- job:
name: whitebox-devstack-multinode-base
abstract: true
parent: tempest-multinode-full-py3
nodeset: nested-virt-multinode
description: |
Runs the entire test suite on single-NUMA, non-SMT, nested virt VMs.
required-projects:
openstack/whitebox-tempest-plugin
pre-run: playbooks/whitebox/pre.yaml
irrelevant-files:
- ^test-requirements.txt$
vars:
tox_envlist: all
tempest_concurrency: 1
tempest_test_regex: ^whitebox_tempest_plugin\.
devstack_plugins:
whitebox-tempest-plugin: https://opendev.org/openstack/whitebox-tempest-plugin.git
devstack_localrc:
MAX_COMPUTE_NODES: 2
LIBVIRT_TYPE: kvm
TEMPEST_PLUGINS: /opt/stack/whitebox-tempest-plugin
WHITEBOX_PRIVKEY_PATH: /home/tempest/.ssh/id_rsa
WHITEBOX_CPU_MODEL: kvm64
WHITEBOX_CPU_MODEL_EXTRA_FLAGS: vme,+ssse3,-mmx
WHITEBOX_CPU_TOPOLOGY: "0: [0,1,2,3,4,5,6,7]"
devstack_local_conf:
post-config:
$NOVA_CONF:
libvirt:
cpu_mode: custom
cpu_models: kvm64
cpu_model_extra_flags: vme,+ssse3,-mmx
virt_type: kvm
rx_queue_size: 1024
group-vars:
subnode:
num_hugepages: 2048
devstack_localrc:
LIBVIRT_TYPE: kvm
devstack_local_conf:
post-config:
$NOVA_CONF:
libvirt:
cpu_mode: custom
cpu_models: kvm64
cpu_model_extra_flags: vme,+ssse3,-mmx
virt_type: kvm
rx_queue_size: 1024
tempest:
num_hugepages: 512
- job:
name: whitebox-devstack-multinode
parent: whitebox-devstack-multinode-base
vars:
# NOTE(artom) We can't have this on the parent job, otherwise the two
# -cpupinnig jobs will inherit it as well.
tempest_exclude_regex: test_live_migrate_and_reboot|test_shared_pinned_and_unpinned_guest
- job:
name: whitebox-devstack-multinode-cpupinning
parent: whitebox-devstack-multinode-base
description: |
Runs the CPU pinning tests on single-NUMA, non-SMT, nested virt VMs. Uses
[compute]cpu_dedicated_set to configure host CPUs for pinning.
vars:
tempest_test_regex: test_live_migrate_and_reboot|test_shared_pinned_and_unpinned_guest
devstack_local_conf:
post-config:
$NOVA_CONF:
compute:
cpu_dedicated_set: '0-3'
cpu_shared_set: '4,5'
group-vars:
subnode:
devstack_local_conf:
post-config:
$NOVA_CONF:
compute:
cpu_dedicated_set: '4-7'
cpu_shared_set: '2,3'
- job:
name: whitebox-devstack-multinode-cpupinninglegacy
parent: whitebox-devstack-multinode-base
description: |
Runs the CPU pinning tests on single-NUMA, non-SMT, nested virt VMs. Uses
[DEFAULT]vcpu_pin_set to configure host CPUs for pinning.
vars:
tempest_test_regex: 'test_live_migrate_and_reboot'
devstack_local_conf:
post-config:
$NOVA_CONF:
DEFAULT:
vcpu_pin_set: '0-3'
compute:
cpu_shared_set: '4,5'
group-vars:
subnode:
devstack_local_conf:
post-config:
$NOVA_CONF:
DEFAULT:
vcpu_pin_set: '4-7'
compute:
cpu_shared_set: '2,3'
- job:
name: whitebox-devstack-ceph-compute-local-ephemeral
parent: whitebox-devstack-multinode-base
nodeset: nested-virt-multinode
description: |
Runs test_rbd_direct_download test on single-NUMA, non-SMT, nested virt
VMs with ceph plugin enabled.
The job uses the default qcow2 file based imagebackend for ephemeral
storage. It also enables the direct download of images via rbd into
the local imagecache for Nova.
required-projects:
- openstack/devstack-plugin-ceph
irrelevant-files:
- ^whitebox_tempest_plugin/api/compute/(?!test_rbd_direct_download).*py$
vars:
devstack_plugins:
devstack-plugin-ceph: https://opendev.org/openstack/devstack-plugin-ceph
tempest_test_regex: '^whitebox_tempest_plugin.api.compute.test_rbd_direct_download'
devstack_localrc:
COMPUTE_FEATURE_RBD_DOWNLOAD: True
CINDER_CEPH_UUID: d531d2d4-3937-429c-b0c2-658fe41e82ab
devstack_local_conf:
post-config:
$NOVA_CPU_CONF:
glance:
enable_rbd_download: True
rbd_user: glance
rbd_ceph_conf: /etc/ceph/ceph.conf
rbd_pool: images
libvirt:
images_type: default
group-vars:
subnode:
devstack_localrc:
REMOTE_CEPH: true
CINDER_CEPH_UUID: d531d2d4-3937-429c-b0c2-658fe41e82ab
devstack_local_conf:
post-config:
$NOVA_CPU_CONF:
glance:
enable_rbd_download: True
rbd_user: glance
rbd_ceph_conf: /etc/ceph/ceph.conf
rbd_pool: images
libvirt:
images_type: default
- project:
templates:
- openstack-python3-yoga-jobs
check:
jobs:
- whitebox-devstack-multinode
- whitebox-devstack-multinode-cpupinning
- whitebox-devstack-multinode-cpupinninglegacy
# TODO(amodi): Add a periodic job for below
- whitebox-devstack-ceph-compute-local-ephemeral
gate:
jobs:
- whitebox-devstack-multinode
- whitebox-devstack-multinode-cpupinning
- whitebox-devstack-multinode-cpupinninglegacy
- whitebox-devstack-ceph-compute-local-ephemeral