add DPDK on VF test scenarios and auto~tests
* add kernel options for DPDK on VF * update sriov, failover, DPDK on VF test with new contrail-controller role Change-Id: Ic8065c29c1df8b55149d353852a0c51e52ed867c
This commit is contained in:
parent
7d96e3c2bf
commit
c7815d83c8
@ -1,5 +1,5 @@
|
||||
=================================================
|
||||
Master Test Plan for Contrail v 4.0.1 Fuel Plugin
|
||||
Master Test Plan for Contrail v 5.0 Fuel Plugin
|
||||
=================================================
|
||||
|
||||
|
||||
@ -192,6 +192,7 @@ Not Run test cases - this metric shows a count of test cases which should be run
|
||||
.. include:: test_suite_gui.rst
|
||||
.. include:: test_suite_system.rst
|
||||
.. include:: test_suite_dpdk.rst
|
||||
.. include:: test_suite_dpdk_on_vf.rst
|
||||
.. include:: test_suite_sriov.rst
|
||||
.. include:: test_suite_dpdk_vf.rst
|
||||
.. include:: test_suite_multiple_networks.rst
|
@ -420,7 +420,7 @@ Steps
|
||||
5. Enable sriov on interfaces of dpdk+compute node
|
||||
6. Deploy cluster
|
||||
7. Run OSTF
|
||||
8 Run contrail health check tests
|
||||
8. Run contrail health check tests
|
||||
9. Add nodes with configurations:
|
||||
node-5: 'contrail-controller';
|
||||
node-6: 'contrail-controller';
|
||||
|
453
doc/testing/test_suite_dpdk_on_vf.rst
Normal file
453
doc/testing/test_suite_dpdk_on_vf.rst
Normal file
@ -0,0 +1,453 @@
|
||||
==========
|
||||
DPDK on VF
|
||||
==========
|
||||
|
||||
|
||||
Contrail HA DPDK on VF
|
||||
----------------------
|
||||
|
||||
|
||||
ID
|
||||
##
|
||||
|
||||
contrail_ha_dpdk_on_vf
|
||||
|
||||
|
||||
Description
|
||||
###########
|
||||
|
||||
Check Contrail deploy on HA environment
|
||||
|
||||
|
||||
Complexity
|
||||
##########
|
||||
|
||||
advanced
|
||||
|
||||
|
||||
Steps
|
||||
#####
|
||||
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration and CEPH storage
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller';
|
||||
node-02: 'controller';
|
||||
node-03: 'controller', 'ceph-osd';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-05: 'compute', 'ceph-osd';
|
||||
node-06: 'contrail-controller';
|
||||
node-07: 'contrail-analytics';
|
||||
node-08: 'contrail-analytics-db';
|
||||
node-dpdk: 'compute', dpdk';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
|
||||
|
||||
Expected results
|
||||
################
|
||||
|
||||
All steps should pass
|
||||
|
||||
|
||||
Contrail DPDK on VF add compute
|
||||
-------------------------------
|
||||
|
||||
|
||||
ID
|
||||
##
|
||||
|
||||
contrail_dpdk_on_vf_add_compute
|
||||
|
||||
|
||||
Description
|
||||
###########
|
||||
|
||||
Verify that Contrail compute role can be added after deploying
|
||||
|
||||
|
||||
Complexity
|
||||
##########
|
||||
|
||||
advanced
|
||||
|
||||
|
||||
Steps
|
||||
#####
|
||||
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-1: 'controller', 'ceph-osd';
|
||||
node-2: 'contrail-controller';
|
||||
node-3: 'compute', 'ceph-osd';
|
||||
node-4: 'compute', 'ceph-osd';
|
||||
node-5: 'compute', 'ceph-osd';
|
||||
node-6: 'contrail-analytics', 'contrail-analytics-db';
|
||||
node-dpdk: 'compute', 'dpdk';
|
||||
5. Run OSTF tests
|
||||
6. Add one node with following configuration:
|
||||
node-7: "compute", "ceph-osd";
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
|
||||
|
||||
Expected results
|
||||
################
|
||||
|
||||
All steps should pass
|
||||
|
||||
|
||||
Contrail DPDK on VF delete compute
|
||||
----------------------------------
|
||||
|
||||
|
||||
ID
|
||||
##
|
||||
|
||||
contrail_dpdk_on_vf_delete_compute
|
||||
|
||||
|
||||
Description
|
||||
###########
|
||||
|
||||
Verify that Contrail compute role can be deleted after deploying
|
||||
|
||||
|
||||
Complexity
|
||||
##########
|
||||
|
||||
advanced
|
||||
|
||||
|
||||
Steps
|
||||
#####
|
||||
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller';
|
||||
node-02: 'contrail-controller';
|
||||
node-03: 'contrail-controller';
|
||||
node-04: 'compute', 'cinder';
|
||||
node-05: 'compute';
|
||||
node-06: 'contrail-analytics', 'contrail-analytics-db';
|
||||
5. Run OSTF tests
|
||||
6. Delete node-05 with "compute" role
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
|
||||
|
||||
Expected results
|
||||
################
|
||||
|
||||
All steps should pass
|
||||
|
||||
|
||||
Contrail DPDK on VF add dpdk
|
||||
----------------------------
|
||||
|
||||
|
||||
ID
|
||||
##
|
||||
|
||||
contrail_dpdk_on_vf_add_dpdk
|
||||
|
||||
|
||||
Description
|
||||
###########
|
||||
|
||||
Verify that DPDK role can be added after deploying
|
||||
|
||||
|
||||
Complexity
|
||||
##########
|
||||
|
||||
advanced
|
||||
|
||||
|
||||
Steps
|
||||
#####
|
||||
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller', 'ceph-osd';
|
||||
node-02: 'contrail-controller';
|
||||
node-03: 'compute', 'ceph-osd';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-05: 'controller', 'cinder';
|
||||
node-06: 'controller', 'cinder';
|
||||
node-07: 'contrail-analytics';
|
||||
node-08: 'contrail-analytics-db';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
7. Add one node with following configuration:
|
||||
node-dpdk: "compute", "dpdk";
|
||||
8. Deploy changes
|
||||
9. Run OSTF tests
|
||||
10. Run contrail health check tests
|
||||
|
||||
|
||||
Expected results
|
||||
################
|
||||
|
||||
All steps should pass
|
||||
|
||||
|
||||
Contrail DPDK on VF delete dpdk
|
||||
-------------------------------
|
||||
|
||||
|
||||
ID
|
||||
##
|
||||
|
||||
contrail_dpdk_on_vf_delete_dpdk
|
||||
|
||||
|
||||
Description
|
||||
###########
|
||||
|
||||
Verify that DPDK role can be deleted after deploying
|
||||
|
||||
|
||||
Complexity
|
||||
##########
|
||||
|
||||
advanced
|
||||
|
||||
|
||||
Steps
|
||||
#####
|
||||
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller', 'ceph-osd', 'cinder';
|
||||
node-02: 'contrail-controller';
|
||||
node-03: 'compute', 'ceph-osd';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-05: 'contrail-analytics', 'contrail-analytics-db';
|
||||
node-dpdk: 'compute', 'dpdk';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
7. Delete node "node-dpdk" with "dpdk" and "compute" roles
|
||||
8. Deploy changes
|
||||
9. Run OSTF tests
|
||||
10. Run contrail health check tests
|
||||
|
||||
|
||||
Expected results
|
||||
################
|
||||
|
||||
All steps should pass
|
||||
|
||||
|
||||
Contrail DPDK on VF add controller
|
||||
----------------------------------
|
||||
|
||||
|
||||
ID
|
||||
##
|
||||
|
||||
contrail_dpdk_on_vf_add_controller
|
||||
|
||||
|
||||
Description
|
||||
###########
|
||||
|
||||
Verify that controller node can be added after deploy
|
||||
|
||||
|
||||
Complexity
|
||||
##########
|
||||
|
||||
advanced
|
||||
|
||||
|
||||
Steps
|
||||
#####
|
||||
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-1: 'controller', 'ceph-osd';
|
||||
node-2: 'contrail-controller';
|
||||
node-3: 'compute', 'ceph-osd';
|
||||
node-4: 'compute', 'ceph-osd';
|
||||
node-5: 'contrail-analytics', 'contrail-analytics-db';
|
||||
node-6: 'contrail-analytics';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
7. Add one node with following configuration:
|
||||
node-7: 'controller', 'ceph-osd';
|
||||
8. Deploy changes
|
||||
9. Run OSTF tests
|
||||
10. Run contrail health check tests
|
||||
|
||||
|
||||
Expected results
|
||||
################
|
||||
|
||||
All steps must be completed successfully, without any errors
|
||||
|
||||
|
||||
Contrail DPDK on VF delete controller
|
||||
-------------------------------------
|
||||
|
||||
|
||||
ID
|
||||
##
|
||||
|
||||
contrail_dpdk_on_vf_delete_controller
|
||||
|
||||
|
||||
Description
|
||||
###########
|
||||
|
||||
Verify that controller node can be deleted after deploy
|
||||
|
||||
|
||||
Complexity
|
||||
##########
|
||||
|
||||
advanced
|
||||
|
||||
|
||||
Steps
|
||||
#####
|
||||
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller';
|
||||
node-02: 'contrail-controller';
|
||||
node-03: 'controller';
|
||||
node-04: 'compute', 'cinder';
|
||||
node-05: 'controller';
|
||||
node-06: 'contrail-analytics', 'contrail-analytics-db';
|
||||
node-07: 'contrail-analytics-db';
|
||||
node-08: 'contrail-analytics-db';
|
||||
5. Run OSTF tests
|
||||
6. Delete node-01 with "controller" role
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
|
||||
|
||||
Expected results
|
||||
################
|
||||
|
||||
All steps must be completed successfully, without any errors
|
||||
|
||||
|
||||
Contrail DPDK on VF disable
|
||||
---------------------------
|
||||
|
||||
|
||||
ID
|
||||
##
|
||||
|
||||
contrail_dpdk_on_vf_disable
|
||||
|
||||
|
||||
Description
|
||||
###########
|
||||
|
||||
Verify that DPDK on VF feature could be disabled
|
||||
|
||||
|
||||
Complexity
|
||||
##########
|
||||
|
||||
advanced
|
||||
|
||||
|
||||
Steps
|
||||
#####
|
||||
|
||||
1. Create an environment with "Neutron with tunneling segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller', 'ceph-osd', 'cinder';
|
||||
node-02: 'contrail-controller', 'contrail-analytics';
|
||||
node-03: 'compute', 'ceph-osd';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-dpdk: 'compute', 'dpdk';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
7. Disable DPDK on VF feature
|
||||
8. Deploy changes
|
||||
9. Run OSTF tests
|
||||
10. Run contrail health check tests
|
||||
|
||||
|
||||
Expected results
|
||||
################
|
||||
|
||||
All steps must be completed successfully, without any errors
|
||||
|
||||
|
||||
Contrail DPDK on VF enable
|
||||
--------------------------
|
||||
|
||||
|
||||
ID
|
||||
##
|
||||
|
||||
contrail_dpdk_on_vf_enable
|
||||
|
||||
|
||||
Description
|
||||
###########
|
||||
|
||||
Verify that DPDK on VF feature could be enabled.
|
||||
|
||||
|
||||
Complexity
|
||||
##########
|
||||
|
||||
advanced
|
||||
|
||||
|
||||
Steps
|
||||
#####
|
||||
|
||||
1. Create an environment with "Neutron with tunneling segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Deploy cluster with following node configuration:
|
||||
node-01: 'controller', 'ceph-osd', 'cinder';
|
||||
node-02: 'contrail-controller', 'contrail-analytics';
|
||||
node-03: 'compute', 'ceph-osd';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-dpdk: 'compute', 'dpdk';
|
||||
4. Run OSTF tests
|
||||
5. Run contrail health check tests
|
||||
6. Enable DPDK on VF feature
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
|
||||
|
||||
Expected results
|
||||
################
|
||||
|
||||
All steps must be completed successfully, without any errors
|
||||
|
@ -42,9 +42,9 @@ Steps
|
||||
12. Delete a Controller node and deploy changes
|
||||
13. Run OSTF tests
|
||||
14. Run contrail health check tests
|
||||
16. Add a node with "Controller" role and deploy changes
|
||||
17. Run OSTF tests.
|
||||
18. Run contrail health check tests
|
||||
15. Add a node with "Controller" role and deploy changes
|
||||
16. Run OSTF tests.
|
||||
17. Run contrail health check tests
|
||||
|
||||
Expected results
|
||||
################
|
||||
@ -172,19 +172,19 @@ Steps
|
||||
1. Create an environment with "Neutron with tunneling segmentation"
|
||||
as a network configuration
|
||||
2. Enable and configure Contrail plugin with Vcenter
|
||||
4. Add a controller and a compute+cinder nodes
|
||||
5. Add 2 nodes with "contrail-controller" roles
|
||||
6. Add a node with "contrail-analytics" role
|
||||
7. Add a node with "contrail-analytics-db" role
|
||||
8. Add a node with "compute-vmware" role
|
||||
9. Add a node with "contrail-vmware" role
|
||||
10. Deploy cluster
|
||||
11. Run OSTF tests
|
||||
12. Run contrail health check tests
|
||||
13. Add one node with "contrail-controller" role
|
||||
14. Deploy changes
|
||||
15. Run OSTF tests
|
||||
16. Run contrail health check tests
|
||||
3. Add a controller and a compute+cinder nodes
|
||||
4. Add 2 nodes with "contrail-controller" roles
|
||||
5. Add a node with "contrail-analytics" role
|
||||
6. Add a node with "contrail-analytics-db" role
|
||||
7. Add a node with "compute-vmware" role
|
||||
8. Add a node with "contrail-vmware" role
|
||||
9. Deploy cluster
|
||||
10. Run OSTF tests
|
||||
11. Run contrail health check tests
|
||||
12. Add one node with "contrail-controller" role
|
||||
13. Deploy changes
|
||||
14. Run OSTF tests
|
||||
15. Run contrail health check tests
|
||||
|
||||
|
||||
Expected results
|
||||
@ -223,14 +223,14 @@ Steps
|
||||
3. Add a node with "controller" + "mongo" roles and 3 nodes with "compute" + "ceph-osd" roles
|
||||
4. Add a node with contrail-controller role
|
||||
5. Add a node with contrail-analytics and contrail-analytics-db
|
||||
5. Deploy cluster and run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
7. Add node with "compute" role
|
||||
8. Deploy changes and run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
10. Delete node with "compute" role
|
||||
11. Deploy cluster and run OSTF tests
|
||||
12. Run contrail health check tests
|
||||
6. Deploy cluster and run OSTF tests
|
||||
7. Run contrail health check tests
|
||||
8. Add node with "compute" role
|
||||
9. Deploy changes and run OSTF tests
|
||||
10. Run contrail health check tests
|
||||
11. Delete node with "compute" role
|
||||
12. Deploy cluster and run OSTF tests
|
||||
13. Run contrail health check tests
|
||||
|
||||
|
||||
Expected results
|
||||
@ -452,7 +452,7 @@ Steps
|
||||
3. Add a node with controller and cinder role
|
||||
4. Add 2 nodes with compute role
|
||||
5. Add 3 nodes with contrail-controller
|
||||
and contrail-analytics roles
|
||||
and contrail-analytics roles
|
||||
6. Add a node with contrail-analytics-db role
|
||||
7. Deploy cluster
|
||||
8. Run OSTF tests
|
||||
|
@ -33,7 +33,8 @@ Steps
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Add some controller (at least 3), compute,
|
||||
compute with sriov and storage nodes
|
||||
4. And contrail-control, contrail-config, contrail-db and contrail-analytics nodes
|
||||
4. Add contrail-controler,
|
||||
contrail-analytics and contrail-analytics-db nodes
|
||||
5. Deploy cluster
|
||||
6. Run OSTF tests
|
||||
7. Run contrail check tests
|
||||
@ -73,7 +74,7 @@ Steps
|
||||
|
||||
1. Create an environment with "Neutron with tunneling segmentation"
|
||||
as a network configuration and CEPH storage
|
||||
2. Enable and configure Contrail plugin with dedicated analytics DB
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Deploy cluster with some controller, compute+ceph, compute,
|
||||
compute with sriov and contrail-specified nodes
|
||||
4. Run OSTF tests
|
||||
@ -162,7 +163,7 @@ Steps
|
||||
|
||||
1. Create an environment with "Neutron with tunneling segmentation"
|
||||
as a network configuration and CEPH+Cinder storage
|
||||
2. Enable and configure Contrail plugin with dedicated analytics DB
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Deploy cluster with some controller+ceph, compute+ceph, compute,
|
||||
compute with sriov and contrail-specified nodes
|
||||
4. Run OSTF tests
|
||||
@ -206,7 +207,7 @@ Steps
|
||||
|
||||
1. Create an environment with "Neutron with tunneling segmentation"
|
||||
as a network configuration and Cinder storage
|
||||
2. Enable and configure Contrail plugin with dedicated analytics DB
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Deploy cluster with some controller, controller+cinder, compute+cinder,
|
||||
compute, compute with sriov and contrail-specified nodes
|
||||
4. Run OSTF tests
|
||||
@ -290,7 +291,7 @@ Steps
|
||||
|
||||
1. Create an environment with "Neutron with tunneling segmentation"
|
||||
as a network configuration and CEPH storage
|
||||
2. Enable and configure Contrail plugin with dedicated analytics DB
|
||||
2. Enable and configure Contrail
|
||||
3. Deploy cluster with some controller, compute+ceph,
|
||||
compute, compute with sriov and contrail-specified nodes
|
||||
4. Run OSTF tests
|
||||
|
@ -305,10 +305,10 @@ Steps
|
||||
2. Create 2 instances in the default network.
|
||||
3. Send icpm packets from one instance to another.
|
||||
4. Check contrail ceilometer metrics:
|
||||
"\*ip.floating.receive.bytes",
|
||||
"\*ip.floating.receive.packets",
|
||||
"\*ip.floating.transmit.bytes",
|
||||
"\*ip.floating.transmit.packets".
|
||||
"\*ip.floating.receive.bytes",
|
||||
"\*ip.floating.receive.packets",
|
||||
"\*ip.floating.transmit.bytes",
|
||||
"\*ip.floating.transmit.packets".
|
||||
|
||||
|
||||
Expected results
|
||||
|
@ -59,6 +59,7 @@ def import_tests():
|
||||
from tests import test_dpdk # noqa
|
||||
from tests import test_sriov # noqa
|
||||
from tests import test_dpdk_vf # noqa
|
||||
from tests import test_dpdk_on_vf # noqa
|
||||
from tests import test_contrail_multiple_networks # noqa
|
||||
|
||||
|
||||
|
@ -632,8 +632,8 @@ class TestContrailCheck(object):
|
||||
out = remote.execute(command)['stdout']
|
||||
for res in out:
|
||||
logger.info('Check status: {}'.format(res))
|
||||
assert('active' in res,
|
||||
"Contrail node status invalid: {}".format(out))
|
||||
assert_true('active' in res,
|
||||
"Contrail node status invalid: {}".format(out))
|
||||
return True
|
||||
|
||||
nailgun_nodes = self.obj.fuel_web.client.list_cluster_nodes(cluster_id)
|
||||
|
939
plugin_test/tests/test_dpdk_on_vf.py
Normal file
939
plugin_test/tests/test_dpdk_on_vf.py
Normal file
@ -0,0 +1,939 @@
|
||||
"""Copyright 2016 Mirantis, Inc.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
not use this file except in compliance with the License. You may obtain
|
||||
a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
License for the specific language governing permissions and limitations
|
||||
under the License.
|
||||
"""
|
||||
|
||||
import os
|
||||
|
||||
from proboscis import test
|
||||
|
||||
from fuelweb_test import logger
|
||||
from fuelweb_test.helpers.decorators import log_snapshot_after_test
|
||||
from fuelweb_test.settings import CONTRAIL_PLUGIN_PACK_UB_PATH
|
||||
from fuelweb_test.tests.base_test_case import SetupEnvironment
|
||||
from fuelweb_test.tests.base_test_case import TestBasic
|
||||
|
||||
from helpers import vsrx
|
||||
from helpers import plugin
|
||||
from helpers import openstack
|
||||
from helpers import baremetal
|
||||
from helpers import fuel
|
||||
from tests.test_contrail_check import TestContrailCheck
|
||||
|
||||
|
||||
@test(groups=["plugins"])
|
||||
class DPDKonVFTests(TestBasic):
|
||||
"""DPDKTests."""
|
||||
|
||||
pack_copy_path = '/var/www/nailgun/plugins/contrail-5.0'
|
||||
add_package = '/var/www/nailgun/plugins/contrail-5.0/'\
|
||||
'repositories/ubuntu/contrail-setup*'
|
||||
ostf_msg = 'OSTF tests passed successfully.'
|
||||
cluster_id = ''
|
||||
pack_path = CONTRAIL_PLUGIN_PACK_UB_PATH
|
||||
CONTRAIL_DISTRIBUTION = os.environ.get('CONTRAIL_DISTRIBUTION')
|
||||
bm_drv = baremetal.BMDriver()
|
||||
|
||||
def add_kernel_params(self):
|
||||
logger.info('Update kernel parameters for DPDK on VF.')
|
||||
curr_params = fuel.get_cluster_settings(self,
|
||||
self.cluster_id,
|
||||
'kernel_params')
|
||||
from pprint import pformat
|
||||
logger.info('attrs: {0}'.format(pformat(curr_params)))
|
||||
|
||||
curr_value = curr_params['kernel']['value']
|
||||
new_value = '{0} intel_iommu=on iommu=pt'.format(curr_value)
|
||||
logger.info('Update kernel params for cluster {0} = {1}'.format(
|
||||
self.cluster_id, new_value))
|
||||
fuel.update_cluster_settings(self, self.cluster_id,
|
||||
'kernel_params', {'kernel': new_value})
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_9],
|
||||
groups=["contrail_ha_dpdk_on_vf", "contrail_dpdk_on_vf_tests"])
|
||||
@log_snapshot_after_test
|
||||
def contrail_ha_dpdk_on_vf(self):
|
||||
"""Check Contrail deploy on HA environment with DPDK on VF.
|
||||
|
||||
Scenario:
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration and CEPH storage
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller';
|
||||
node-02: 'controller';
|
||||
node-03: 'controller', 'ceph-osd';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-05: 'compute', 'ceph-osd';
|
||||
node-06: 'contrail-controller';
|
||||
node-07: 'contrail-analytics';
|
||||
node-08: 'contrail-analytics-db';
|
||||
node-dpdk: 'compute', dpdk';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
|
||||
Duration 120 min
|
||||
|
||||
"""
|
||||
conf_contrail = {
|
||||
"dpdk_on_vf": True,
|
||||
}
|
||||
self.show_step(1)
|
||||
plugin.prepare_contrail_plugin(self, slaves=9,
|
||||
options={'images_ceph': True,
|
||||
'volumes_ceph': True,
|
||||
'ephemeral_ceph': True,
|
||||
'objects_ceph': True,
|
||||
'volumes_lvm': False})
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
plugin.show_range(self, 2, 4)
|
||||
# activate plugin with DPDK feature
|
||||
plugin.activate_dpdk(self, **conf_contrail)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
self.show_step(4)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute', 'dpdk'])
|
||||
openstack.setup_hugepages(self)
|
||||
|
||||
conf_nodes = {
|
||||
'slave-01': ['controller'],
|
||||
'slave-02': ['controller'],
|
||||
'slave-03': ['controller', 'ceph-osd'],
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
'slave-05': ['compute', 'ceph-osd'],
|
||||
'slave-06': ['contrail-controller'],
|
||||
'slave-07': ['contrail-analytics'],
|
||||
'slave-08': ['contrail-analytics-db'],
|
||||
}
|
||||
# Cluster configuration
|
||||
self.fuel_web.update_nodes(self.cluster_id,
|
||||
nodes_dict=conf_nodes,
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Enable SRIOV on interface
|
||||
openstack.enable_sriov(self)
|
||||
# add mandatory kernel parameters for DPDK on VK
|
||||
self.add_kernel_params()
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
# FIXME: remove shouldfail, when livemigration+DPDK works
|
||||
if vsrx_setup_result:
|
||||
self.show_step(5)
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
test_sets=['smoke', 'sanity', 'ha'],
|
||||
should_fail=1,
|
||||
failed_test_name=['Instance live migration']
|
||||
)
|
||||
self.show_step(6)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_9],
|
||||
groups=["contrail_dpdk_on_vf_add_compute",
|
||||
"contrail_dpdk_on_vf_tests"])
|
||||
@log_snapshot_after_test
|
||||
def contrail_dpdk_on_vf_add_compute(self):
|
||||
"""Verify that Contrail compute role can be added after deploying.
|
||||
|
||||
Scenario:
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-1: 'controller', 'ceph-osd';
|
||||
node-2: 'contrail-controller';
|
||||
node-3: 'compute', 'ceph-osd';
|
||||
node-4: 'compute', 'ceph-osd';
|
||||
node-5: 'compute', 'ceph-osd';
|
||||
node-6: 'contrail-analytics', 'contrail-analytics-db';
|
||||
node-dpdk: 'compute', 'dpdk';
|
||||
5. Run OSTF tests
|
||||
6. Add one node with following configuration:
|
||||
node-7: "compute", "ceph-osd";
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
|
||||
"""
|
||||
conf_contrail = {
|
||||
"dpdk_on_vf": True,
|
||||
}
|
||||
self.show_step(1)
|
||||
plugin.prepare_contrail_plugin(self, slaves=9,
|
||||
options={'images_ceph': True,
|
||||
'volumes_ceph': True,
|
||||
'ephemeral_ceph': True,
|
||||
'objects_ceph': True,
|
||||
'volumes_lvm': False})
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
plugin.show_range(self, 2, 4)
|
||||
# activate plugin with DPDK feature
|
||||
plugin.activate_dpdk(self, **conf_contrail)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
self.show_step(4)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute', 'dpdk'])
|
||||
openstack.setup_hugepages(self)
|
||||
conf_nodes = {
|
||||
'slave-01': ['controller', 'ceph-osd'],
|
||||
'slave-02': ['contrail-controller'],
|
||||
'slave-03': ['compute', 'ceph-osd'],
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
'slave-05': ['compute', 'ceph-osd'],
|
||||
# slave-06 here
|
||||
'slave-07': ['contrail-analytics',
|
||||
'contrail-analytics-db'],
|
||||
}
|
||||
conf_compute = {'slave-06': ['compute', 'ceph-osd']}
|
||||
|
||||
# Cluster configuration
|
||||
self.fuel_web.update_nodes(self.cluster_id,
|
||||
nodes_dict=conf_nodes,
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Enable SRIOV on interface
|
||||
openstack.enable_sriov(self)
|
||||
# add mandatory kernel parameters for DPDK on VK
|
||||
self.add_kernel_params()
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
self.show_step(5)
|
||||
# FIXME: remove shouldfail, when livemigration+DPDK works
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
should_fail=1,
|
||||
failed_test_name=['Instance live migration']
|
||||
)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
# Add Compute node and check again
|
||||
self.show_step(6)
|
||||
# Cluster configuration
|
||||
self.fuel_web.update_nodes(self.cluster_id,
|
||||
nodes_dict=conf_compute,
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Deploy cluster
|
||||
self.show_step(7)
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
self.show_step(8)
|
||||
# FIXME: remove shouldfail, when livemigration+DPDK works
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
should_fail=1,
|
||||
failed_test_name=['Instance live migration']
|
||||
)
|
||||
self.show_step(9)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_9],
|
||||
groups=["contrail_dpdk_on_vf_delete_compute",
|
||||
"contrail_dpdk_on_vf_tests"])
|
||||
@log_snapshot_after_test
|
||||
def contrail_dpdk_on_vf_delete_compute(self):
|
||||
"""Verify that Contrail compute role can be deleted after deploying.
|
||||
|
||||
Scenario:
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller';
|
||||
node-02: 'contrail-controller';
|
||||
node-03: 'contrail-controller';
|
||||
node-04: 'compute', 'cinder';
|
||||
node-05: 'compute';
|
||||
node-06: 'contrail-analytics', 'contrail-analytics-db';
|
||||
5. Run OSTF tests
|
||||
6. Delete node-05 with "compute" role
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
|
||||
"""
|
||||
conf_contrail = {
|
||||
"dpdk_on_vf": True,
|
||||
}
|
||||
self.show_step(1)
|
||||
plugin.prepare_contrail_plugin(self, slaves=9)
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
self.show_step(2)
|
||||
# activate plugin with DPDK feature
|
||||
plugin.activate_dpdk(self, **conf_contrail)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
self.show_step(3)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute', 'dpdk'])
|
||||
openstack.setup_hugepages(self)
|
||||
conf_no_compute = {
|
||||
'slave-01': ['controller'],
|
||||
'slave-02': ['contrail-controller'],
|
||||
'slave-03': ['contrail-controller'],
|
||||
'slave-04': ['compute', 'cinder'],
|
||||
# node-05
|
||||
'slave-06': ['contrail-analytics',
|
||||
'contrail-analytics-db'],
|
||||
}
|
||||
conf_compute = {'slave-05': ['compute']}
|
||||
|
||||
self.fuel_web.update_nodes(
|
||||
self.cluster_id,
|
||||
nodes_dict=dict(conf_no_compute, **conf_compute),
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Enable SRIOV on interface
|
||||
openstack.enable_sriov(self)
|
||||
# add mandatory kernel parameters for DPDK on VK
|
||||
self.add_kernel_params()
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
if vsrx_setup_result:
|
||||
self.show_step(4)
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
# Delete Compute node and check again
|
||||
self.show_step(5)
|
||||
self.fuel_web.update_nodes(
|
||||
self.cluster_id,
|
||||
nodes_dict=conf_compute,
|
||||
pending_addition=False, pending_deletion=True,
|
||||
update_interfaces=False)
|
||||
|
||||
# Deploy cluster
|
||||
self.show_step(6)
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
if vsrx_setup_result:
|
||||
self.show_step(7)
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
test_sets=['smoke', 'sanity'],
|
||||
should_fail=1,
|
||||
failed_test_name=['Check that required '
|
||||
'services are running']
|
||||
)
|
||||
self.show_step(8)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_9],
|
||||
groups=["contrail_dpdk_on_vf_add_dpdk",
|
||||
"contrail_dpdk_on_vf_tests"])
|
||||
@log_snapshot_after_test
|
||||
def contrail_dpdk_on_vf_add_dpdk(self):
|
||||
"""Verify that DPDK role can be added after deploying.
|
||||
|
||||
Scenario:
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller', 'ceph-osd';
|
||||
node-02: 'contrail-controller';
|
||||
node-03: 'compute', 'ceph-osd';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-05: 'controller', 'cinder';
|
||||
node-06: 'controller', 'cinder';
|
||||
node-07: 'contrail-analytics';
|
||||
node-08: 'contrail-analytics-db';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
7. Add one node with following configuration:
|
||||
node-dpdk: "compute", "dpdk";
|
||||
8. Deploy changes
|
||||
9. Run OSTF tests
|
||||
10. Run contrail health check tests
|
||||
|
||||
"""
|
||||
conf_contrail = {
|
||||
"dpdk_on_vf": True,
|
||||
}
|
||||
self.show_step(1)
|
||||
plugin.prepare_contrail_plugin(self, slaves=9,
|
||||
options={'images_ceph': True})
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
plugin.show_range(self, 2, 4)
|
||||
# activate plugin with DPDK feature
|
||||
plugin.activate_dpdk(self, **conf_contrail)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
self.show_step(4)
|
||||
conf_nodes = {
|
||||
'slave-01': ['controller', 'ceph-osd'],
|
||||
'slave-02': ['contrail-controller'],
|
||||
'slave-03': ['compute', 'ceph-osd'],
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
'slave-05': ['controller', 'cinder'],
|
||||
'slave-06': ['controller', 'cinder'],
|
||||
'slave-07': ['contrail-analytics'],
|
||||
'slave-08': ['contrail-analytics-db'],
|
||||
}
|
||||
self.fuel_web.update_nodes(
|
||||
self.cluster_id,
|
||||
nodes_dict=conf_nodes,
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Enable SRIOV on interface
|
||||
openstack.enable_sriov(self)
|
||||
# add mandatory kernel parameters for DPDK on VK
|
||||
self.add_kernel_params()
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
self.show_step(5)
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
test_sets=['smoke', 'sanity', 'ha'])
|
||||
self.show_step(6)
|
||||
TestContrailCheck(self).cloud_check(['contrail'])
|
||||
|
||||
self.show_step(7)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute', 'dpdk'])
|
||||
openstack.setup_hugepages(self)
|
||||
self.show_step(8)
|
||||
openstack.deploy_cluster(self)
|
||||
|
||||
self.show_step(9)
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id)
|
||||
self.show_step(10)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_9],
|
||||
groups=["contrail_dpdk_on_vf_delete_dpdk",
|
||||
"contrail_dpdk_on_vf_tests"])
|
||||
@log_snapshot_after_test
|
||||
def contrail_dpdk_on_vf_delete_dpdk(self):
|
||||
"""Verify that DPDK role can be deleted after deploying.
|
||||
|
||||
Scenario:
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller', 'ceph-osd', 'cinder';
|
||||
node-02: 'contrail-controller';
|
||||
node-03: 'compute', 'ceph-osd';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-05: 'contrail-analytics', 'contrail-analytics-db';
|
||||
node-dpdk: 'compute', 'dpdk';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
7. Delete node "node-dpdk" with "dpdk" and "compute" roles
|
||||
8. Deploy changes
|
||||
9. Run OSTF tests
|
||||
10. Run contrail health check tests
|
||||
|
||||
"""
|
||||
self.show_step(1)
|
||||
plugin.prepare_contrail_plugin(self, slaves=9,
|
||||
options={'images_ceph': True})
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
self.show_step(2)
|
||||
# activate plugin with DPDK feature
|
||||
conf_contrail = {"dpdk_on_vf": True}
|
||||
plugin.activate_dpdk(self, **conf_contrail)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
self.show_step(3)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute', 'dpdk'])
|
||||
openstack.setup_hugepages(self)
|
||||
conf_no_dpdk = {
|
||||
'slave-01': ['controller', 'ceph-osd', 'cinder'],
|
||||
'slave-02': ['contrail-controller'],
|
||||
'slave-03': ['compute', 'ceph-osd'],
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
'slave-05': ['contrail-analytics', 'contrail-analytics-db'],
|
||||
}
|
||||
|
||||
self.fuel_web.update_nodes(
|
||||
self.cluster_id,
|
||||
nodes_dict=conf_no_dpdk,
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Enable SRIOV on interface
|
||||
openstack.enable_sriov(self)
|
||||
# add mandatory kernel parameters for DPDK on VK
|
||||
self.add_kernel_params()
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
self.show_step(4)
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id)
|
||||
self.show_step(5)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
self.show_step(6)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute', 'dpdk'],
|
||||
pending_deletion=True,
|
||||
pending_addition=False)
|
||||
self.show_step(7)
|
||||
openstack.deploy_cluster(self)
|
||||
|
||||
self.show_step(8)
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
test_sets=['smoke', 'sanity'],
|
||||
should_fail=1,
|
||||
failed_test_name=['Check that required '
|
||||
'services are running']
|
||||
)
|
||||
self.show_step(9)
|
||||
TestContrailCheck(self).cloud_check(['contrail'])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_9],
|
||||
groups=["contrail_dpdk_on_vf_add_controller",
|
||||
"contrail_dpdk_on_vf_tests"])
|
||||
@log_snapshot_after_test
|
||||
def contrail_dpdk_on_vf_add_controller(self):
|
||||
"""Verify that Contrail controller role can be added after deploying.
|
||||
|
||||
Scenario:
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-1: 'controller', 'ceph-osd';
|
||||
node-2: 'contrail-controller';
|
||||
node-3: 'compute', 'ceph-osd';
|
||||
node-4: 'compute', 'ceph-osd';
|
||||
node-5: 'contrail-analytics', 'contrail-analytics-db';
|
||||
node-6: 'contrail-analytics';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
7. Add one node with following configuration:
|
||||
node-7: 'controller', 'ceph-osd';
|
||||
8. Deploy changes
|
||||
9. Run OSTF tests
|
||||
10. Run contrail health check tests
|
||||
|
||||
"""
|
||||
conf_contrail = {
|
||||
"dpdk_on_vf": True,
|
||||
}
|
||||
self.show_step(1)
|
||||
plugin.prepare_contrail_plugin(self, slaves=9,
|
||||
options={'images_ceph': True,
|
||||
'volumes_ceph': True,
|
||||
'ephemeral_ceph': True,
|
||||
'objects_ceph': True,
|
||||
'volumes_lvm': False})
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
plugin.show_range(self, 2, 4)
|
||||
# activate plugin with DPDK feature
|
||||
plugin.activate_dpdk(self, **conf_contrail)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
self.show_step(4)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute', 'dpdk'])
|
||||
openstack.setup_hugepages(self)
|
||||
conf_nodes = {
|
||||
'slave-01': ['controller', 'ceph-osd'],
|
||||
'slave-02': ['contrail-controller'],
|
||||
'slave-03': ['compute', 'ceph-osd'],
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
'slave-05': ['contrail-analytics',
|
||||
'contrail-analytics-db'],
|
||||
'slave-06': ['contrail-analytics'],
|
||||
}
|
||||
conf_controller = {'slave-07': ['controller', 'ceph-osd']}
|
||||
|
||||
# Cluster configuration
|
||||
self.fuel_web.update_nodes(self.cluster_id,
|
||||
nodes_dict=conf_nodes,
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Enable SRIOV on interface
|
||||
openstack.enable_sriov(self)
|
||||
# add mandatory kernel parameters for DPDK on VK
|
||||
self.add_kernel_params()
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
self.show_step(5)
|
||||
# FIXME: remove shouldfail, when livemigration+DPDK works
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
should_fail=1,
|
||||
failed_test_name=['Instance live migration']
|
||||
)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
# Add Compute node and check again
|
||||
self.show_step(6)
|
||||
# Cluster configuration
|
||||
self.fuel_web.update_nodes(self.cluster_id,
|
||||
nodes_dict=conf_controller,
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Enable SRIOV on interface
|
||||
openstack.enable_sriov(self)
|
||||
# Deploy cluster
|
||||
self.show_step(7)
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
self.show_step(8)
|
||||
# FIXME: remove shouldfail, when livemigration+DPDK works
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
should_fail=1,
|
||||
failed_test_name=['Instance live migration']
|
||||
)
|
||||
self.show_step(9)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_5],
|
||||
groups=["contrail_dpdk_on_vf_delete_controller",
|
||||
"contrail_dpdk_tests"])
|
||||
@log_snapshot_after_test
|
||||
def contrail_dpdk_on_vf_delete_controller(self):
|
||||
"""Verify that Contrail controller role can be deleted after deploying.
|
||||
|
||||
Scenario:
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller';
|
||||
node-02: 'contrail-controller';
|
||||
node-03: 'controller';
|
||||
node-04: 'compute', 'cinder';
|
||||
node-05: 'controller';
|
||||
node-06: 'contrail-analytics', 'contrail-analytics-db';
|
||||
node-07: 'contrail-analytics-db';
|
||||
node-08: 'contrail-analytics-db';
|
||||
5. Run OSTF tests
|
||||
6. Delete node-01 with "controller" role
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
|
||||
"""
|
||||
self.show_step(1)
|
||||
plugin.prepare_contrail_plugin(self, slaves=5)
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
self.show_step(2)
|
||||
# activate plugin with DPDK on VF feature
|
||||
conf_contrail = {"dpdk_on_vf": True}
|
||||
plugin.activate_dpdk(self, **conf_contrail)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
plugin.show_range(self, 3, 4)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute', 'dpdk'])
|
||||
openstack.setup_hugepages(self)
|
||||
|
||||
conf_controller = {'slave-01': ['controller']}
|
||||
conf_no_controller = {
|
||||
# slave-01 here
|
||||
'slave-02': ['contrail-controller'],
|
||||
'slave-03': ['controller'],
|
||||
'slave-04': ['compute', 'cinder'],
|
||||
'slave-05': ['controller'],
|
||||
'slave-06': ['contrail-analytics',
|
||||
'contrail-analytics-db'],
|
||||
'slave-07': ['contrail-analytics-db'],
|
||||
'slave-08': ['contrail-analytics-db'],
|
||||
}
|
||||
|
||||
self.fuel_web.update_nodes(
|
||||
self.cluster_id,
|
||||
nodes_dict=dict(conf_no_controller, **conf_controller),
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Enable SRIOV on interface
|
||||
openstack.enable_sriov(self)
|
||||
# add mandatory kernel parameters for DPDK on VK
|
||||
self.add_kernel_params()
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
# Delete Compute node and check again
|
||||
plugin.show_range(self, 5, 7)
|
||||
self.fuel_web.update_nodes(
|
||||
self.cluster_id,
|
||||
nodes_dict=conf_controller,
|
||||
pending_addition=False, pending_deletion=True,
|
||||
update_interfaces=False)
|
||||
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
test_sets=['smoke', 'sanity'],
|
||||
should_fail=1,
|
||||
failed_test_name=['Check that required '
|
||||
'services are running']
|
||||
)
|
||||
self.show_step(8)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_9],
|
||||
groups=["contrail_dpdk_on_vf_disable",
|
||||
"contrail_dpdk_on_vf_tests"])
|
||||
@log_snapshot_after_test
|
||||
def contrail_dpdk_on_vf_disable(self):
|
||||
"""Verify that DPDK on VF feature could be disabled.
|
||||
|
||||
Scenario:
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable DPDK on VF feature
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-01: 'controller', 'ceph-osd', 'cinder';
|
||||
node-02: 'contrail-controller';
|
||||
node-03: 'compute', 'ceph-osd';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-dpdk: 'compute', 'dpdk';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
7. Disable DPDK on VF feature
|
||||
8. Deploy changes
|
||||
9. Run OSTF tests
|
||||
10. Run contrail health check tests
|
||||
|
||||
"""
|
||||
self.show_step(1)
|
||||
plugin.prepare_contrail_plugin(self, slaves=9,
|
||||
options={'images_ceph': True})
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
plugin.show_range(self, 2, 4)
|
||||
# activate plugin with DPDK feature
|
||||
conf_contrail = {"dpdk_on_vf": True}
|
||||
plugin.activate_dpdk(self, **conf_contrail)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
self.show_step(4)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute', 'dpdk'])
|
||||
openstack.setup_hugepages(self)
|
||||
|
||||
conf_nodes = {
|
||||
'slave-01': ['controller', 'ceph-osd', 'cinder'],
|
||||
'slave-02': ['contrail-controller'],
|
||||
'slave-03': ['compute', 'ceph-osd'],
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
}
|
||||
# Cluster configuration
|
||||
self.fuel_web.update_nodes(self.cluster_id,
|
||||
nodes_dict=conf_nodes,
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Enable SRIOV on interface
|
||||
openstack.enable_sriov(self)
|
||||
# add mandatory kernel parameters for DPDK on VK
|
||||
self.add_kernel_params()
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
# FIXME: remove shouldfail, when livemigration+DPDK works
|
||||
if vsrx_setup_result:
|
||||
self.show_step(5)
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
test_sets=['smoke', 'sanity', 'ha'],
|
||||
should_fail=1,
|
||||
failed_test_name=['Instance live migration']
|
||||
)
|
||||
self.show_step(6)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
self.show_step(7)
|
||||
# activate plugin with DPDK feature
|
||||
conf_contrail = {"dpdk_on_vf": False}
|
||||
plugin.activate_dpdk(self, **conf_contrail)
|
||||
self.show_step(8)
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
# FIXME: remove shouldfail, when livemigration+DPDK works
|
||||
if vsrx_setup_result:
|
||||
self.show_step(9)
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
test_sets=['smoke', 'sanity', 'ha'],
|
||||
should_fail=1,
|
||||
failed_test_name=['Instance live migration']
|
||||
)
|
||||
self.show_step(10)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_9],
|
||||
groups=["contrail_dpdk_on_vf_enable",
|
||||
"contrail_dpdk_on_vf_tests"])
|
||||
@log_snapshot_after_test
|
||||
def contrail_dpdk_on_vf_enable(self):
|
||||
"""Verify that DPDK on VF feature could be enabled.
|
||||
|
||||
Scenario:
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Deploy cluster with following node configuration:
|
||||
node-01: 'controller', 'ceph-osd', 'cinder';
|
||||
node-02: 'contrail-controller',
|
||||
'contrail-analytics',
|
||||
'contrail-analytics-db';
|
||||
node-03: 'compute', 'ceph-osd';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-dpdk: 'compute', 'dpdk';
|
||||
4. Run OSTF tests
|
||||
5. Run contrail health check tests
|
||||
6. Enable DPDK on VF feature
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
|
||||
"""
|
||||
self.show_step(1)
|
||||
plugin.prepare_contrail_plugin(self, slaves=9,
|
||||
options={'images_ceph': True})
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
plugin.show_range(self, 2, 4)
|
||||
# activate plugin with DPDK feature
|
||||
plugin.activate_dpdk(self)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
self.show_step(4)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute', 'dpdk'])
|
||||
openstack.setup_hugepages(self)
|
||||
|
||||
conf_nodes = {
|
||||
'slave-01': ['controller', 'ceph-osd', 'cinder'],
|
||||
'slave-02': ['contrail-controller',
|
||||
'contrail-analytics',
|
||||
'contrail-analytics-db'],
|
||||
'slave-03': ['compute', 'ceph-osd'],
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
}
|
||||
# Cluster configuration
|
||||
self.fuel_web.update_nodes(self.cluster_id,
|
||||
nodes_dict=conf_nodes,
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Enable SRIOV on interface
|
||||
openstack.enable_sriov(self)
|
||||
# add mandatory kernel parameters for DPDK on VK
|
||||
self.add_kernel_params()
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
# FIXME: remove shouldfail, when livemigration+DPDK works
|
||||
if vsrx_setup_result:
|
||||
self.show_step(5)
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
test_sets=['smoke', 'sanity', 'ha'],
|
||||
should_fail=1,
|
||||
failed_test_name=['Instance live migration']
|
||||
)
|
||||
self.show_step(6)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
||||
|
||||
self.show_step(7)
|
||||
# activate plugin with DPDK feature
|
||||
conf_contrail = {"dpdk_on_vf": True}
|
||||
plugin.activate_dpdk(self, **conf_contrail)
|
||||
self.show_step(8)
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
# FIXME: remove shouldfail, when livemigration+DPDK works
|
||||
if vsrx_setup_result:
|
||||
self.show_step(9)
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id,
|
||||
test_sets=['smoke', 'sanity', 'ha'],
|
||||
should_fail=1,
|
||||
failed_test_name=['Instance live migration']
|
||||
)
|
||||
self.show_step(10)
|
||||
TestContrailCheck(self).cloud_check(
|
||||
['dpdk', 'contrail'],
|
||||
should_fail=["test_dpdk_boot_snapshot_vm"])
|
@ -153,19 +153,16 @@ class FailoverTests(TestBasic):
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
'slave-05': ['compute', 'ceph-osd'],
|
||||
'slave-06': ['compute', 'ceph-osd'],
|
||||
'slave-07': ['contrail-config',
|
||||
'contrail-control',
|
||||
'contrail-db',
|
||||
'contrail-analytics'],
|
||||
'slave-08': ['contrail-config',
|
||||
'contrail-control',
|
||||
'contrail-db',
|
||||
'contrail-analytics',],
|
||||
'slave-09': ['contrail-config',
|
||||
'contrail-control',
|
||||
'contrail-db',
|
||||
'contrail-analytics'],
|
||||
}
|
||||
'slave-07': ['contrail-controller',
|
||||
'contrail-analytics',
|
||||
'contrail-analytics-db'],
|
||||
'slave-08': ['contrail-controller',
|
||||
'contrail-analytics',
|
||||
'contrail-analytics-db'],
|
||||
'slave-09': ['contrail-controller',
|
||||
'contrail-analytics',
|
||||
'contrail-analytics-db'],
|
||||
}
|
||||
|
||||
self.show_step(2)
|
||||
openstack.update_deploy_check(self, conf_env,
|
||||
|
@ -700,7 +700,7 @@ class FunctionalTests(TestBasic):
|
||||
plugin.prepare_contrail_plugin(self, slaves=9)
|
||||
|
||||
self.show_step(2)
|
||||
plugin.activate_plugin(selfl)
|
||||
plugin.activate_plugin(self)
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
plugin.show_range(self, 3, 10)
|
||||
|
@ -60,10 +60,9 @@ class SRIOVTests(TestBasic):
|
||||
node-03: 'controller', 'ceph-osd';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-05: 'compute', 'ceph-osd';
|
||||
node-06: 'contrail-db';
|
||||
node-07: 'contrail-config';
|
||||
node-08: 'contrail-control';
|
||||
node-09: 'contrail-analytics';
|
||||
node-06: 'contrail-controller';
|
||||
node-07: 'contrail-analytics';
|
||||
node-08: 'contrail-analytics-db';
|
||||
node-sriov: 'compute';
|
||||
4. Run OSTF tests
|
||||
5. Run contrail health check tests
|
||||
@ -97,10 +96,9 @@ class SRIOVTests(TestBasic):
|
||||
'slave-03': ['controller', 'ceph-osd'],
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
'slave-05': ['compute', 'ceph-osd'],
|
||||
'slave-06': ['contrail-db'],
|
||||
'slave-07': ['contrail-config'],
|
||||
'slave-08': ['contrail-control'],
|
||||
'slave-09': ['contrail-analytics']
|
||||
'slave-06': ['contrail-controller'],
|
||||
'slave-07': ['contrail-analytics'],
|
||||
'slave-08': ['contrail-analytics-db'],
|
||||
}
|
||||
# Cluster configuration
|
||||
self.fuel_web.update_nodes(self.cluster_id,
|
||||
@ -134,21 +132,19 @@ class SRIOVTests(TestBasic):
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable dedicated analytics DB
|
||||
4. Deploy cluster with following node configuration:
|
||||
node-1: 'controller', 'ceph-osd';
|
||||
node-2: 'contrail-config', 'contrail-control',
|
||||
'contrail-db', 'contrail-analytics';
|
||||
node-3: 'compute', 'ceph-osd';
|
||||
node-4: 'compute', 'ceph-osd';
|
||||
node-bm: 'compute'(sriov);
|
||||
node-6: 'compute', 'ceph-osd';
|
||||
5. Run OSTF tests
|
||||
6. Add one node with following configuration:
|
||||
node-5: 'contrail-analytics-db';
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
3. Deploy cluster with following node configuration:
|
||||
node-1: 'controller', 'ceph-osd';
|
||||
node-2: 'contrail-analytics', 'contrail-controller';
|
||||
node-3: 'compute', 'ceph-osd';
|
||||
node-4: 'compute', 'ceph-osd';
|
||||
node-6: 'contrail-analytics-db';
|
||||
node-bm: 'compute'(sriov);
|
||||
4. Run OSTF tests
|
||||
5. Add one node with following configuration:
|
||||
node-5: 'compute', 'ceph-osd';
|
||||
6. Deploy changes
|
||||
7. Run OSTF tests
|
||||
8. Run contrail health check tests
|
||||
|
||||
"""
|
||||
self.show_step(1)
|
||||
@ -160,22 +156,19 @@ class SRIOVTests(TestBasic):
|
||||
'volumes_lvm': False})
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
plugin.show_range(self, 2, 4)
|
||||
self.show_step(2)
|
||||
# enable plugin
|
||||
plugin.activate_plugin(self, dedicated_analytics_db=True)
|
||||
plugin.activate_plugin(self)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
self.show_step(4)
|
||||
self.show_step(3)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute'])
|
||||
conf_nodes = {
|
||||
'slave-01': ['controller', 'ceph-osd'],
|
||||
'slave-02': ['contrail-config',
|
||||
'contrail-control',
|
||||
'contrail-db',
|
||||
'contrail-analytics'],
|
||||
'slave-02': ['contrail-controller', 'contrail-analytics'],
|
||||
'slave-03': ['compute', 'ceph-osd'],
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
'slave-06': ['contrail-analytics-db'],
|
||||
@ -192,7 +185,7 @@ class SRIOVTests(TestBasic):
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
self.show_step(5)
|
||||
self.show_step(4)
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(
|
||||
cluster_id=self.cluster_id, should_fail=2,
|
||||
@ -203,7 +196,7 @@ class SRIOVTests(TestBasic):
|
||||
TestContrailCheck(self).cloud_check(['sriov', 'contrail'])
|
||||
|
||||
# Add Compute node and check again
|
||||
self.show_step(6)
|
||||
self.show_step(5)
|
||||
# Cluster configuration
|
||||
self.fuel_web.update_nodes(self.cluster_id,
|
||||
nodes_dict=conf_compute,
|
||||
@ -211,10 +204,10 @@ class SRIOVTests(TestBasic):
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
openstack.enable_sriov(self)
|
||||
# Deploy cluster
|
||||
self.show_step(7)
|
||||
self.show_step(6)
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
self.show_step(8)
|
||||
self.show_step(7)
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(
|
||||
cluster_id=self.cluster_id, should_fail=2,
|
||||
@ -222,7 +215,7 @@ class SRIOVTests(TestBasic):
|
||||
'Instance live migration',
|
||||
'Check network connectivity from SRIOV instance via' +
|
||||
' floating IP'])
|
||||
self.show_step(9)
|
||||
self.show_step(8)
|
||||
TestContrailCheck(self).cloud_check(['sriov', 'contrail'])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_5],
|
||||
@ -237,10 +230,9 @@ class SRIOVTests(TestBasic):
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Deploy cluster with following node configuration:
|
||||
node-01: 'controller';
|
||||
node-02: 'contrail-control', 'contrail-config',
|
||||
'contrail-db', 'contrail-analytics';
|
||||
node-02: 'contrail-controller'
|
||||
node-03: 'compute', 'cinder';
|
||||
node-04: 'compute';
|
||||
node-05: 'contrail-analytics', 'contrail-analytics-db';
|
||||
node-bm: 'compute'(sriov);
|
||||
4. Run OSTF tests
|
||||
5. Delete node-04 with "compute" role
|
||||
@ -265,11 +257,10 @@ class SRIOVTests(TestBasic):
|
||||
roles=['compute'])
|
||||
conf_no_compute = {
|
||||
'slave-01': ['controller'],
|
||||
'slave-02': ['contrail-control',
|
||||
'contrail-config',
|
||||
'contrail-db',
|
||||
'contrail-analytics'],
|
||||
'slave-02': ['contrail-controller'],
|
||||
'slave-03': ['compute', 'cinder'],
|
||||
# slave-04 compute here
|
||||
'slave-05': ['contrail-analytics', 'contrail-analytics-db'],
|
||||
}
|
||||
conf_compute = {'slave-04': ['compute']}
|
||||
|
||||
@ -326,21 +317,19 @@ class SRIOVTests(TestBasic):
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable dedicated analytics DB
|
||||
4. Deploy cluster with following node configuration:
|
||||
3. Deploy cluster with following node configuration:
|
||||
node-1: 'controller', 'ceph-osd';
|
||||
node-2: 'contrail-config', 'contrail-control',
|
||||
'contrail-db';
|
||||
node-2: 'contrail-controller';
|
||||
node-3: 'compute', 'ceph-osd';
|
||||
node-4: 'compute', 'ceph-osd';
|
||||
node-6: 'contrail-analytics', 'contrail-analytics-db';
|
||||
node-bm: 'compute'(sriov);
|
||||
node-6: 'contrail-analytics', 'contrail-analytics';
|
||||
5. Run OSTF tests
|
||||
6. Add one node with following configuration:
|
||||
4. Run OSTF tests
|
||||
5. Add one node with following configuration:
|
||||
node-5: "controller", "ceph-osd";
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
6. Deploy changes
|
||||
7. Run OSTF tests
|
||||
8. Run contrail health check tests
|
||||
|
||||
"""
|
||||
self.show_step(1)
|
||||
@ -354,21 +343,19 @@ class SRIOVTests(TestBasic):
|
||||
|
||||
plugin.show_range(self, 2, 4)
|
||||
# enable plugin
|
||||
plugin.activate_plugin(self, dedicated_analytics_db=True)
|
||||
plugin.activate_plugin(self)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
self.show_step(4)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute'])
|
||||
conf_nodes = {
|
||||
'slave-01': ['controller', 'ceph-osd'],
|
||||
'slave-02': ['contrail-config',
|
||||
'contrail-control',
|
||||
'contrail-db'],
|
||||
'slave-02': ['contrail-controller'],
|
||||
'slave-03': ['compute', 'ceph-osd'],
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
# slave-05 controlle, ceph-osd here
|
||||
'slave-06': ['contrail-analytics-db', 'contrail-analytics'],
|
||||
}
|
||||
conf_controller = {'slave-05': ['controller', 'ceph-osd']}
|
||||
@ -383,7 +370,7 @@ class SRIOVTests(TestBasic):
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
self.show_step(5)
|
||||
self.show_step(4)
|
||||
# FIXME: remove shouldfail, when livemigration+DPDK works
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(
|
||||
@ -395,17 +382,17 @@ class SRIOVTests(TestBasic):
|
||||
TestContrailCheck(self).cloud_check(['sriov', 'contrail'])
|
||||
|
||||
# Add Compute node and check again
|
||||
self.show_step(6)
|
||||
self.show_step(5)
|
||||
# Cluster configuration
|
||||
self.fuel_web.update_nodes(self.cluster_id,
|
||||
nodes_dict=conf_controller,
|
||||
update_interfaces=False)
|
||||
self.bm_drv.update_vm_node_interfaces(self, self.cluster_id)
|
||||
# Deploy cluster
|
||||
self.show_step(7)
|
||||
self.show_step(6)
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
self.show_step(8)
|
||||
self.show_step(7)
|
||||
# FIXME: remove shouldfail, when livemigration+DPDK works
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(
|
||||
@ -414,7 +401,7 @@ class SRIOVTests(TestBasic):
|
||||
'Instance live migration',
|
||||
'Check network connectivity from SRIOV instance via'
|
||||
' floating IP'])
|
||||
self.show_step(9)
|
||||
self.show_step(8)
|
||||
TestContrailCheck(self).cloud_check(['sriov', 'contrail'])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_5],
|
||||
@ -429,10 +416,10 @@ class SRIOVTests(TestBasic):
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Deploy cluster with following node configuration:
|
||||
node-01: 'controller';
|
||||
node-02: 'contrail-control', 'contrail-config',
|
||||
'contrail-db', 'contrail-analytics';
|
||||
node-02: 'contrail-analytics', 'contrail-controller';
|
||||
node-03: 'compute', 'cinder';
|
||||
node-04: 'controller';
|
||||
node-05: 'contrail-analytics-db';
|
||||
node-bm: 'compute'(sriov);
|
||||
4. Run OSTF tests
|
||||
5. Delete node-04 with "controller" role
|
||||
@ -457,11 +444,10 @@ class SRIOVTests(TestBasic):
|
||||
roles=['compute'])
|
||||
conf_no_compute = {
|
||||
'slave-01': ['controller'],
|
||||
'slave-02': ['contrail-control',
|
||||
'contrail-config',
|
||||
'contrail-db',
|
||||
'contrail-analytics'],
|
||||
'slave-02': ['contrail-controller', 'contrail-analytics'],
|
||||
'slave-03': ['compute', 'cinder'],
|
||||
'slave-04': ['controller'],
|
||||
'slave-05': ['contrail-analytics-db'],
|
||||
}
|
||||
conf_controller = {'slave-04': ['controller']}
|
||||
|
||||
@ -515,21 +501,19 @@ class SRIOVTests(TestBasic):
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable dedicated analytics DB
|
||||
4. Deploy cluster with following node configuration:
|
||||
3. Deploy cluster with following node configuration:
|
||||
node-01: 'controller', 'ceph-osd';
|
||||
node-02: 'contrail-config', 'contrail-control';
|
||||
node-03: 'contrail-db', 'contrail-analytics';
|
||||
node-02: 'contrail-controller';
|
||||
node-03: 'contrail-analytics', 'contrail-analytics-db';
|
||||
node-04: 'compute', 'ceph-osd';
|
||||
node-05: 'compute', 'ceph-osd';
|
||||
node-06: 'contrail-analytics-db', 'contrail-analytics';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
7. Add one node with following configuration:
|
||||
4. Run OSTF tests
|
||||
5. Run contrail health check tests
|
||||
6. Add one node with following configuration:
|
||||
node-bm: "compute"(sriov);
|
||||
8. Deploy changes
|
||||
9. Run OSTF tests
|
||||
10. Run contrail health check tests
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
|
||||
"""
|
||||
self.show_step(1)
|
||||
@ -537,20 +521,19 @@ class SRIOVTests(TestBasic):
|
||||
options={'images_ceph': True})
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
plugin.show_range(self, 2, 4)
|
||||
self.show_step(2)
|
||||
# enable plugin
|
||||
plugin.activate_plugin(self, dedicated_analytics_db=True)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
plugin.show_range(self, 4, 6)
|
||||
plugin.show_range(self, 3, 5)
|
||||
conf_nodes = {
|
||||
'slave-01': ['controller', 'ceph-osd'],
|
||||
'slave-02': ['contrail-config', 'contrail-control'],
|
||||
'slave-03': ['contrail-db'],
|
||||
'slave-02': ['contrail-controller'],
|
||||
'slave-03': ['contrail-analytics-db', 'contrail-analytics'],
|
||||
'slave-04': ['compute', 'ceph-osd'],
|
||||
'slave-05': ['compute', 'ceph-osd'],
|
||||
'slave-06': ['contrail-analytics-db', 'contrail-analytics'],
|
||||
}
|
||||
self.fuel_web.update_nodes(
|
||||
self.cluster_id,
|
||||
@ -565,23 +548,23 @@ class SRIOVTests(TestBasic):
|
||||
self.fuel_web.run_ostf(cluster_id=self.cluster_id)
|
||||
TestContrailCheck(self).cloud_check(['contrail'])
|
||||
|
||||
self.show_step(7)
|
||||
self.show_step(6)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute'])
|
||||
# Enable SRIOV on interface
|
||||
openstack.enable_sriov(self)
|
||||
self.show_step(8)
|
||||
self.show_step(7)
|
||||
openstack.deploy_cluster(self)
|
||||
|
||||
self.show_step(9)
|
||||
self.show_step(8)
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(
|
||||
cluster_id=self.cluster_id, should_fail=1,
|
||||
failed_test_name=[
|
||||
'Check network connectivity from SRIOV '
|
||||
'instance via floating IP'])
|
||||
self.show_step(10)
|
||||
self.show_step(9)
|
||||
TestContrailCheck(self).cloud_check(['sriov', 'contrail'])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_9],
|
||||
@ -594,40 +577,36 @@ class SRIOVTests(TestBasic):
|
||||
1. Create an environment with "Neutron with tunneling
|
||||
segmentation" as a network configuration
|
||||
2. Enable and configure Contrail plugin
|
||||
3. Enable dedicated analytics DB
|
||||
4. Deploy cluster with following node configuration:
|
||||
3. Deploy cluster with following node configuration:
|
||||
node-01: 'controller';
|
||||
node-02: 'controller';
|
||||
node-03: 'controller', 'cinder';
|
||||
node-04: 'contrail-control', 'contrail-config',
|
||||
'contrail-db', 'contrail-analytics';
|
||||
node-05: 'contrail-control', 'contrail-config',
|
||||
'contrail-db', 'contrail-analytics';
|
||||
node-06: 'contrail-control', 'contrail-config',
|
||||
'contrail-db', 'contrail-analytics';
|
||||
node-04: 'contrail-controller';
|
||||
node-05: 'contrail-analytics';
|
||||
node-06: 'contrail-analytics-db';
|
||||
node-07: 'compute';
|
||||
node-08: 'compute';
|
||||
node-bm: 'compute'(sriov);
|
||||
node-09: 'contrail-analytics-db';
|
||||
5. Run OSTF tests
|
||||
6. Run contrail health check tests
|
||||
7. Delete node-bm with 'compute'(sriov) role
|
||||
8. Deploy changes
|
||||
9. Run OSTF tests
|
||||
10. Run contrail health check tests
|
||||
node-bm: 'compute'(sriov);
|
||||
4. Run OSTF tests
|
||||
5. Run contrail health check tests
|
||||
6. Delete node-bm with 'compute'(sriov) role
|
||||
7. Deploy changes
|
||||
8. Run OSTF tests
|
||||
9. Run contrail health check tests
|
||||
|
||||
"""
|
||||
self.show_step(1)
|
||||
plugin.prepare_contrail_plugin(self, slaves=9)
|
||||
self.bm_drv.host_prepare()
|
||||
|
||||
plugin.show_range(self, 2, 4)
|
||||
self.show_step(2)
|
||||
# enable plugin
|
||||
plugin.activate_plugin(self, dedicated_analytics_db=True)
|
||||
# activate vSRX image
|
||||
vsrx_setup_result = vsrx.activate()
|
||||
|
||||
self.show_step(4)
|
||||
self.show_step(3)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute'])
|
||||
@ -635,18 +614,9 @@ class SRIOVTests(TestBasic):
|
||||
'slave-01': ['controller'],
|
||||
'slave-02': ['controller'],
|
||||
'slave-03': ['controller', 'cinder'],
|
||||
'slave-04': ['contrail-control',
|
||||
'contrail-config',
|
||||
'contrail-db',
|
||||
'contrail-analytics'],
|
||||
'slave-05': ['contrail-control',
|
||||
'contrail-config',
|
||||
'contrail-db',
|
||||
'contrail-analytics'],
|
||||
'slave-06': ['contrail-control',
|
||||
'contrail-config',
|
||||
'contrail-db',
|
||||
'contrail-analytics'],
|
||||
'slave-04': ['contrail-controller'],
|
||||
'slave-05': ['contrail-analytics'],
|
||||
'slave-06': ['contrail-analytics-db'],
|
||||
'slave-07': ['compute'],
|
||||
'slave-08': ['compute'],
|
||||
'slave-09': ['contrail-analytics-db'],
|
||||
@ -662,32 +632,32 @@ class SRIOVTests(TestBasic):
|
||||
# Deploy cluster
|
||||
openstack.deploy_cluster(self)
|
||||
# Run OSTF tests
|
||||
self.show_step(5)
|
||||
self.show_step(4)
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(
|
||||
cluster_id=self.cluster_id, should_fail=1,
|
||||
failed_test_name=[
|
||||
'Check network connectivity from SRIOV '
|
||||
'instance via floating IP'])
|
||||
self.show_step(6)
|
||||
self.show_step(5)
|
||||
TestContrailCheck(self).cloud_check(['sriov', 'contrail'])
|
||||
|
||||
self.show_step(7)
|
||||
self.show_step(6)
|
||||
self.bm_drv.setup_fuel_node(self,
|
||||
cluster_id=self.cluster_id,
|
||||
roles=['compute'],
|
||||
pending_deletion=True,
|
||||
pending_addition=False)
|
||||
self.show_step(8)
|
||||
self.show_step(7)
|
||||
openstack.deploy_cluster(self)
|
||||
|
||||
self.show_step(9)
|
||||
self.show_step(8)
|
||||
if vsrx_setup_result:
|
||||
self.fuel_web.run_ostf(
|
||||
cluster_id=self.cluster_id, should_fail=1,
|
||||
failed_test_name=['Check that required services are running']
|
||||
)
|
||||
self.show_step(10)
|
||||
self.show_step(9)
|
||||
TestContrailCheck(self).cloud_check(['contrail'])
|
||||
|
||||
@test(depends_on=[SetupEnvironment.prepare_slaves_5],
|
||||
@ -697,11 +667,12 @@ class SRIOVTests(TestBasic):
|
||||
"""Check updating core repos with Contrail plugin and SRIOV.
|
||||
|
||||
Scenario:
|
||||
1. Deploy cluster with some
|
||||
controller,
|
||||
compute+cinder,
|
||||
compute+sriov and
|
||||
contrail-specified nodes
|
||||
1. Deploy cluster with with following node configuration:
|
||||
node-01: 'controller';
|
||||
node-02: 'compute', 'cinder';
|
||||
node-03: 'contrail-controller';
|
||||
node-04: 'contrail-analytics';
|
||||
node-05: 'contrail-analytics-db';
|
||||
2. Run 'fuel-mirror create -P ubuntu -G mos ubuntu'
|
||||
on the master node
|
||||
3. Run 'fuel-mirror apply -P ubuntu -G mos ubuntu
|
||||
@ -723,8 +694,8 @@ class SRIOVTests(TestBasic):
|
||||
conf_nodes = {
|
||||
'slave-01': ['controller'],
|
||||
'slave-02': ['compute', 'cinder'],
|
||||
'slave-03': ['contrail-config', 'contrail-control'],
|
||||
'slave-04': ['contrail-db', 'contrail-analytics'],
|
||||
'slave-03': ['contrail-controller'],
|
||||
'slave-04': ['contrail-analytics'],
|
||||
'slave-05': ['contrail-analytics-db'],
|
||||
}
|
||||
self.fuel_web.update_nodes(self.cluster_id, conf_nodes)
|
||||
|
Loading…
Reference in New Issue
Block a user