def contrail_cinder_ceph_multirole(self):
        """Check deploy contrail with Controller + Cinder + Ceph multirole

        Scenario:
            1. Create an environment with "Neutron with tunneling
               segmentation" as a network configuration and CEPH storage
            2. Enable and configure Contrail plugin
            3. Add 1 node with "controller" + "storage-cinder" +
               "Ceph-OSD" multirole
            4. Add 1 node with "controller" + "storage-cinder" and 1 node
               with "controller" + "Ceph-OSD" multiroles
            5. Add 2 nodes with "compute" role
            6. Add 3 nodes with "contrail-config", "contrail-control" and
               "contrail-db" roles
            7. Deploy cluster with plugin
            8. Run OSTF tests

        """

        plugin.prepare_contrail_plugin(
            self, slaves=9, options={'images_ceph': True}
        )

        # enable plugin in contrail settings
        plugin.activate_plugin(self)

        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        self.fuel_web.update_nodes(
            self.cluster_id,
            {
                'slave-01': ['controller', 'cinder', 'ceph-osd'],
                'slave-02': ['controller', 'cinder'],
                'slave-03': ['controller', 'ceph-osd'],
                'slave-04': ['compute'],
                'slave-05': ['compute'],
                'slave-06': ['contrail-config',
                             'contrail-control',
                             'contrail-db'],
                'slave-07': ['contrail-config',
                             'contrail-control',
                             'contrail-db'],
                'slave-08': ['contrail-config',
                             'contrail-control',
                             'contrail-db']
            })

        # deploy cluster
        openstack.deploy_cluster(self)

        # run OSTF tests
        if vsrx_setup_result:
            self.fuel_web.run_ostf(cluster_id=self.cluster_id)
    def contrail_ceilometer(self):
        """Check deploy environment with Contrail and Ceilometer

        Scenario:
            1. Create an environment with "Neutron with tunneling
               segmentation" as a network configuration and CEPH storage
            2. Enable and configure Contrail plugin
            3. Add 2 nodes with "controller" role
            4. Add a node with "controller" + "MongoDB" multirole
            5. Add a node with "compute"+"ceph-OSD"+"cinder" multiroles
            6. Add node with "compute" + "ceph-OSD" + " MongoDB" multiroles
            7. Add a node with "MongoDB" role
            8. Add a node with "contrail-config", "contrail-control" and
               "contrail-db" roles
            9. Deploy cluster with plugin
            10. Run OSTF tests

        Duration 120 min

        """

        plugin.prepare_contrail_plugin(
            self,
            slaves=9,
            options={'images_ceph': True,
                     'ceilometer': True})

        # enable plugin in contrail settings
        plugin.activate_plugin(self)
        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        self.fuel_web.update_nodes(
            self.cluster_id,
            {
                'slave-01': ['controller'],
                'slave-02': ['controller'],
                'slave-03': ['controller', 'mongo'],
                'slave-04': ['compute', 'ceph-osd', 'mongo'],
                'slave-05': ['compute', 'ceph-osd', 'cinder'],
                'slave-06': ['mongo'],
                'slave-07': ['contrail-config',
                             'contrail-control',
                             'contrail-db'],
            })
        # deploy cluster
        openstack.deploy_cluster(self)

        if vsrx_setup_result:
            self.fuel_web.run_ostf(
                cluster_id=self.cluster_id,
                test_sets=['smoke', 'sanity', 'ha', 'tests_platform'],)
Пример #3
0
    def contrail_plugin_add_delete_compute_node(self):
        """Verify that Compute node can be deleted and added after deploying

        Scenario:
            1. Create an environment with
               "Neutron with tunneling segmentation"
               as a network configuration and CEPH storage
            2. Enable and configure Contrail plugin
            3. Add some controller, compute + storage (at least 4) nodes
            4. Add a node with "contrail-db", "contarail-config" and
               "contrail-control" roles
            5. Deploy cluster
            6. Run OSTF tests
            7. Delete a compute node and deploy changes
            8. Run OSTF tests
            9. Add a node with "compute" role and deploy changes
            10. Run OSTF tests

        """
        plugin.prepare_contrail_plugin(self, slaves=9)

        # enable plugin in contrail settings
        plugin.activate_plugin(self)

        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        conf_no_controller = {
            'slave-01': ['controller'],
            'slave-02': ['controller'],
            'slave-03': ['controller'],
            'slave-04': ['controller'],
            'slave-05': ['compute', 'cinder'],
            'slave-06': ['compute', 'cinder'],
            'slave-07': ['compute', 'cinder'],
            # Here slave-8
            'slave-09': ['contrail-db', 'contrail-config', 'contrail-control'],
        }
        conf_compute = {'slave-08': ['compute', 'cinder']}

        openstack.update_deploy_check(self,
                                      dict(conf_no_controller, **conf_compute),
                                      is_vsrx=vsrx_setup_result)
        openstack.update_deploy_check(self,
                                      conf_compute,
                                      delete=True,
                                      is_vsrx=vsrx_setup_result)
        openstack.update_deploy_check(self,
                                      conf_compute,
                                      is_vsrx=vsrx_setup_result)
Пример #4
0
    def contrail_plugin_add_delete_controller_node(self):
        """Verify that Controller node can be deleted
        and added after deploying

        Scenario:
            1. Create an environment with
               "Neutron with tunneling segmentation"
               as a network configuration
            2. Enable and configure Contrail plugin
            3. Add some controller (at least 3), compute and storage nodes
            4. Add 3 nodes with "contrail-db", "contarail-config" and
               "contrail-control" roles on all nodes
            5. Deploy cluster
            6. Run OSTF tests
            7. Delete a Controller node and deploy changes
            8. Run OSTF tests
            9. Add a node with "Controller" role and deploy changes
            10. Run OSTF tests. All steps must be completed successfully,
                without any errors.
        """
        plugin.prepare_contrail_plugin(self, slaves=9)

        # enable plugin in contrail settings
        plugin.activate_plugin(self)

        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        conf_no_controller = {
            'slave-01': ['controller'],
            'slave-02': ['controller'],
            # Here slave-03
            'slave-04': ['compute'],
            'slave-05': ['cinder'],
            'slave-06': ['contrail-db', 'contrail-config', 'contrail-control'],
            'slave-07': ['contrail-db', 'contrail-config', 'contrail-control'],
            'slave-08': ['contrail-db', 'contrail-config', 'contrail-control'],
        }
        conf_ctrl = {'slave-03': ['controller']}

        openstack.update_deploy_check(self,
                                      dict(conf_no_controller, **conf_ctrl),
                                      is_vsrx=vsrx_setup_result)
        openstack.update_deploy_check(self,
                                      conf_ctrl,
                                      delete=True,
                                      is_vsrx=vsrx_setup_result)
        openstack.update_deploy_check(self,
                                      conf_ctrl,
                                      is_vsrx=vsrx_setup_result)
    def contrail_vlan(self):
        """Check deploy contrail on an environment with vlan-tagging

        Scenario:
            1. Create an environment with "Neutron with tunneling
               segmentation" as a network configuration
            2. Enable and configure Contrail plugin
            3. Add 3 nodes with controller role
            4. Add 2 nodes with "compute" and "Storage-cinder" roles
            5. Add a node with "contrail-config" and "contrail-db" roles
            6. Add a node with "contrail-db", "contrail-control" roles
            7. Add a node with "contrail-db" role
            8. Configure VLAN on network interfaces
            9. Deploy cluster with plugin
            10. Run OSTF tests

        Duration 120 min

        """
        plugin.prepare_contrail_plugin(self, slaves=9)

        # enable plugin in contrail settings
        plugin.activate_plugin(self)

        # configure vlan on storage and management interfaces
        openstack.assign_vlan(self, storage=101, management=102)

        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        self.fuel_web.update_nodes(
            self.cluster_id,
            {
                'slave-01': ['controller'],
                'slave-02': ['controller'],
                'slave-03': ['controller'],
                'slave-04': ['compute', 'cinder'],
                'slave-05': ['compute', 'cinder'],
                'slave-06': ['contrail-config', 'contrail-db'],
                'slave-07': ['contrail-control', 'contrail-db'],
                'slave-08': ['contrail-db'],
            })

        # deploy cluster
        openstack.deploy_cluster(self)

        if vsrx_setup_result:
            self.fuel_web.run_ostf(
                cluster_id=self.cluster_id,
                test_sets=['smoke', 'sanity', 'ha'])
    def contrail_ha_baseos(self):
        """Check deploy HA-contrail on an environment with a base-os node

        Scenario:
            1. Create an environment with "Neutron with tunneling
               segmentation" as a network configuration
            2. Enable and configure Contrail plugin
            3. Add a node with controller role
            4. Add 2 nodes with "compute" and "Storage-cinder" roles
            5. Add a node with Base-OS role
            6. Add 3 nodes with "contrail-config", "contrail-control" and
             "contrail-db" roles
            7. Deploy cluster with plugin
            8. Run OSTF tests

        Duration 120 min

        """
        plugin.prepare_contrail_plugin(self, slaves=9)

        # enable plugin in contrail settings
        plugin.activate_plugin(self)
        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        self.fuel_web.update_nodes(
            self.cluster_id,
            {
                'slave-01': ['controller'],
                'slave-02': ['compute', 'cinder'],
                'slave-03': ['compute', 'cinder'],
                'slave-04': ['base-os'],
                'slave-05': ['contrail-config',
                             'contrail-control',
                             'contrail-db'],
                'slave-06': ['contrail-config',
                             'contrail-control',
                             'contrail-db'],
                'slave-07': ['contrail-config',
                             'contrail-control',
                             'contrail-db'],
            })

        # deploy cluster
        openstack.deploy_cluster(self)

        if vsrx_setup_result:
            self.fuel_web.run_ostf(cluster_id=self.cluster_id)
    def contrail_ha(self):
        """Check Contrail deploy on HA environment

        Scenario:
            1. Create an environment with "Neutron with tunneling
               segmentation" as a network configuration and CEPH storage
            2. Enable and configure Contrail plugin
            3. Add 3 nodes with controller role
            4. Add 2 nodes with "compute" and "Ceph-OSD" roles
            5. Add a node with contrail-config role
            6. Add a node with contrail-control role
            7. Add a node with contrail-db role
            8. Deploy cluster with plugin
            9. Run OSTF tests

        Duration 120 min

        """

        plugin.prepare_contrail_plugin(
            self, slaves=9, options={'images_ceph': True}
        )

        # enable plugin in contrail settings
        plugin.activate_plugin(self)
        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        self.fuel_web.update_nodes(
            self.cluster_id,
            {
                'slave-01': ['controller'],
                'slave-02': ['controller'],
                'slave-03': ['controller'],
                'slave-04': ['compute', 'ceph-osd'],
                'slave-05': ['compute', 'ceph-osd'],
                'slave-06': ['contrail-config'],
                'slave-07': ['contrail-control'],
                'slave-08': ['contrail-db'],
            })

        # deploy cluster
        openstack.deploy_cluster(self)

        if vsrx_setup_result:
            self.fuel_web.run_ostf(cluster_id=self.cluster_id)
Пример #8
0
    def contrail_bvt(self):
        """BVT test for contrail plugin
        Deploy cluster with 1 controller, 1 compute,
        3 contrail-config, contrail-control, contrail-db roles
        and install contrail plugin

        Scenario:
            1. Revert snapshot "ready_with_9_slaves"
            2. Create cluster
            3. Add 3 nodes with contrail-db role
            4. Add a node with contrail-config role
            5. Add a node with contrail-control role
            6. Add a node with with controller role
            7. Add a node with compute + cinder role
            8. Enable Contrail plugin
            9. Deploy cluster with plugin
            10. Create net and subnet
            11. Run OSTF tests

        Duration 110 min

        """
        plugin.prepare_contrail_plugin(self, slaves=9)

        # enable plugin in contrail settings
        plugin.activate_plugin(self)
        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        self.fuel_web.update_nodes(
            self.cluster_id,
            {
                'slave-01': ['contrail-config'],
                'slave-02': ['contrail-control'],
                'slave-03': ['contrail-db'],
                'slave-04': ['contrail-db'],
                'slave-05': ['contrail-db'],
                'slave-06': ['controller'],
                'slave-07': ['compute', 'cinder'],
            })

        # deploy cluster
        openstack.deploy_cluster(self)

        if vsrx_setup_result:
            self.fuel_web.run_ostf(cluster_id=self.cluster_id)
Пример #9
0
    def contrail_bvt(self):
        """BVT test for contrail plugin
        Deploy cluster with 1 controller, 1 compute,
        3 contrail-config, contrail-control, contrail-db roles
        and install contrail plugin

        Scenario:
            1. Revert snapshot "ready_with_9_slaves"
            2. Create cluster
            3. Add 3 nodes with contrail-db role
            4. Add a node with contrail-config role
            5. Add a node with contrail-control role
            6. Add a node with with controller role
            7. Add a node with compute + cinder role
            8. Enable Contrail plugin
            9. Deploy cluster with plugin
            10. Create net and subnet
            11. Run OSTF tests

        Duration 110 min

        """
        plugin.prepare_contrail_plugin(self, slaves=9)

        # enable plugin in contrail settings
        plugin.activate_plugin(self)
        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        self.fuel_web.update_nodes(
            self.cluster_id, {
                'slave-01': ['contrail-config'],
                'slave-02': ['contrail-control'],
                'slave-03': ['contrail-db'],
                'slave-04': ['contrail-db'],
                'slave-05': ['contrail-db'],
                'slave-06': ['controller'],
                'slave-07': ['compute', 'cinder'],
            })

        # deploy cluster
        openstack.deploy_cluster(self)

        if vsrx_setup_result:
            self.fuel_web.run_ostf(cluster_id=self.cluster_id)
Пример #10
0
    def contrail_add_config(self):
        """Verify that Contrail config 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. Add some controller, compute nodes
            4. Add 1 node with "contrail-control", "contrail-config"
               and "contrail-db" roles
            5. Deploy cluster
            6. Run OSTF tests
            7. Check Controller and Contrail nodes status
            8. Add one node with "contrail-config" role
            9. Deploy changes
            10. Run OSTF tests
            11. Check Controller and Contrail nodes status

        """
        plugin.prepare_contrail_plugin(self, slaves=5)

        # enable plugin in contrail settings
        plugin.activate_plugin(self)

        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        conf_nodes = {
            'slave-01': ['controller'],
            'slave-02': ['compute'],
            'slave-03': ['contrail-control', 'contrail-config', 'contrail-db'],
        }
        conf_config = {'slave-04': ['contrail-config']}

        openstack.update_deploy_check(self,
                                      conf_nodes,
                                      is_vsrx=vsrx_setup_result)

        openstack.update_deploy_check(self,
                                      conf_config,
                                      is_vsrx=vsrx_setup_result)
Пример #11
0
    def contrail_net_template(self):
        """Deploy cluster with Contrail plugin and network template

        Scenario:
            1. Configure interfaces
            2. Next we need to set gateway for private network with Fuel CLI:
               *   Login with ssh to Fuel master node.
               *   List existing network-groups
            fuel network-group --env 1
            3. Remove and create again network-group *private* to set a gateway
               fuel network-group --delete --network 5
               fuel network-group --create --name /
               private --cidr 10.109.3.0/24 --gateway 10.109.3.1 --nodegroup 1
            4. Set the ``render_addr_mask`` parameter to `internal`
               for this network by typing:
               fuel network-group --set --network 6 --meta
               '{"name": "private", "notation": "cidr", "render_type": null,
               "map_priority": 2, "configurable": true, "use_gateway": true,
               "render_addr_mask": "internal", "vlan_start": null,
               "cidr": "10.109.3.0/24"}'
            5. Save sample :download:
               `network template<examples/network_template_1.yaml>`
            6. Upload the network template by typing:
               fuel --env 1 network-template --upload --dir /root/
            7. Start deploy, pressing "Deploy changes" button.

        """

        plugin.prepare_contrail_plugin(self, slaves=5)

        # enable plugin in contrail settings
        plugin.activate_plugin(self)

        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        self.fuel_web.update_nodes(
            self.cluster_id,
            {
                'slave-01': ['controller'],
                'slave-02': ['compute'],
                'slave-03':
                ['contrail-config', 'contrail-control', 'contrail-db'],
                'slave-04':
                ['contrail-config', 'contrail-control', 'contrail-db'],
                'slave-05':
                ['contrail-config', 'contrail-control', 'contrail-db'],
            },
        )

        plugin.net_group_preparation(self)

        network_template = self.get_network_templ('network_template_1')
        self.fuel_web.client.upload_network_template(
            cluster_id=self.cluster_id, network_template=network_template)

        openstack.deploy_cluster(self)

        # run OSTF tests
        if vsrx_setup_result:
            self.fuel_web.run_ostf(cluster_id=self.cluster_id)
Пример #12
0
    def contrail_ha_with_shutdown_contrail_node(self):
        """Verify HA with deleting Contrail roles

        Scenario:
            1. Create an environment with
               "Neutron with tunneling segmentation"
               as a network configuration
            2. Enable and configure Contrail plugin
            3. Add some controller, compute and storage nodes
            4. Add 4 nodes with "contrail-db", "contarail-config" and
               "contrail-control" roles
            5. Deploy cluster
            6. Run OSTF tests
            7. Check Controller and Contrail nodes status
            8. Shutdown node with 'contrail-db', "contarail-config" and
               "contrail-control" roles
            9. Deploy changes
            10. Run OSTF tests
            11. Check Controller and Contrail nodes status

        """
        plugin.prepare_contrail_plugin(self, slaves=9)
        plugin.activate_plugin(self)  # enable plugin in contrail settings
        vsrx_setup_result = plugin.activate_vsrx()  # activate vSRX image

        conf_no_contrail = {
            'slave-01': ['controller'],
            'slave-02': ['controller'],
            'slave-03': ['controller'],
            'slave-04': ['compute'],
            'slave-05': ['cinder'],
            # Here slave-06 with contrail
            'slave-07': ['contrail-db', 'contrail-config', 'contrail-control'],
            'slave-08': ['contrail-db', 'contrail-config', 'contrail-control'],
            'slave-09': ['contrail-db', 'contrail-config', 'contrail-control'],
        }
        conf_contrail = {
            'slave-06': ['contrail-db', 'contrail-config', 'contrail-control']
        }

        def check_node_state(cluster_id, node_name, node_state):
            """Checks node state by it's name"""
            for node in self.fuel_web.client.list_cluster_nodes(cluster_id):
                if node_name in node['name']:
                    assert_equal(
                        node['status'], node_state,
                        'Nailgun node status is not %s but %s' %
                        (node_state, node['status']))

        # Deploy cluster and run OSTF
        openstack.update_deploy_check(self,
                                      dict(conf_no_contrail, **conf_contrail),
                                      is_vsrx=vsrx_setup_result)

        # Check all nodes are 'ready'
        for node_name in dict(conf_no_contrail, **conf_contrail):
            check_node_state(self.cluster_id, node_name, 'ready')

        # Shutdown contrail node
        for node in self.fuel_web.client.list_cluster_nodes(self.cluster_id):
            if 'slave-06' in node['name']:
                logger.info('Shutdown node "%s"' % node['name'])
                self.fuel_web.warm_shutdown_nodes(
                    self.fuel_web.get_devops_nodes_by_nailgun_nodes([node]))
                break

        # Run OSTF tests again
        if vsrx_setup_result:
            self.fuel_web.run_ostf(cluster_id=self.cluster_id)

        # Check controller and contrail nodes states
        node_roles = {'controller', 'contrail-config'}
        for node_name, roles in conf_no_contrail.items():
            if node_roles & set(roles):
                check_node_state(self.cluster_id, node_name, 'ready')
    def contrail_net_template(self):
        """Deploy cluster with Contrail plugin and network template

        Scenario:
            1. Configure interfaces
            2. Next we need to set gateway for private network with Fuel CLI:
               *   Login with ssh to Fuel master node.
               *   List existing network-groups
            fuel network-group --env 1
            3. Remove and create again network-group *private* to set a gateway
               fuel network-group --delete --network 5
               fuel network-group --create --name /
               private --cidr 10.109.3.0/24 --gateway 10.109.3.1 --nodegroup 1
            4. Set the ``render_addr_mask`` parameter to `internal`
               for this network by typing:
               fuel network-group --set --network 6 --meta
               '{"name": "private", "notation": "cidr", "render_type": null,
               "map_priority": 2, "configurable": true, "use_gateway": true,
               "render_addr_mask": "internal", "vlan_start": null,
               "cidr": "10.109.3.0/24"}'
            5. Save sample :download:
               `network template<examples/network_template_1.yaml>`
            6. Upload the network template by typing:
               fuel --env 1 network-template --upload --dir /root/
            7. Start deploy, pressing "Deploy changes" button.

        """

        plugin.prepare_contrail_plugin(self, slaves=5)

        # enable plugin in contrail settings
        plugin.activate_plugin(self)

        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        self.fuel_web.update_nodes(
            self.cluster_id,
            {
                'slave-01': ['controller'],
                'slave-02': ['compute'],
                'slave-03': ['contrail-config',
                             'contrail-control',
                             'contrail-db'],
                'slave-04': ['contrail-config',
                             'contrail-control',
                             'contrail-db'],
                'slave-05': ['contrail-config',
                             'contrail-control',
                             'contrail-db'],
            },
        )

        plugin.net_group_preparation(self)

        network_template = self.get_network_templ('network_template_1')
        self.fuel_web.client.upload_network_template(
            cluster_id=self.cluster_id, network_template=network_template)

        openstack.deploy_cluster(self)

        # run OSTF tests
        if vsrx_setup_result:
            self.fuel_web.run_ostf(cluster_id=self.cluster_id)
    def contrail_jumbo(self):
        """Check deploy contrail on an environment with jumbo-frames support

        Scenario:
            1. Create an environment with "Neutron with tunneling
               segmentation" as a network configuration
            2. Enable and configure Contrail plugin
            3. Add a node with controller role
            4. Add 2 nodes with "compute" and "Storage-Ceph OSD" roles
            5. Add a node with "contrail-config", "contrail-control" and
               "contrail-db" roles
            6. Add 2 nodes with "contrail-config", "contrail-control" roles
            7. Configure MTU on network interfaces (Jumbo-frames)
            8. Deploy cluster with plugin
            9. Run OSTF tests

        Duration 120 min

        """

        plugin.prepare_contrail_plugin(
            self, slaves=9, options={'images_ceph': True}
        )

        jumbo = TestJumboFrames()

        devops_env = self.env.d_env
        private_bridge = devops_env.get_network(name='private').bridge_name()
        logger.info("Search for {0} interfaces for update".
                    format(private_bridge))

        # find private bridge interface
        bridge_interfaces = jumbo.get_host_bridge_ifaces(private_bridge)
        logger.info("Found {0} interfaces for update: {1}"
                    .format(len(bridge_interfaces), bridge_interfaces))

        # set MTU 9000 to private bridge interface
        for iface in bridge_interfaces:
            jumbo.set_host_iface_mtu(iface, 9000)
            logger.info("MTU of {0} was changed to 9000".format(iface))
            logger.debug("New {0} interface properties:\n{1}"
                         .format(iface, jumbo.get_host_iface(iface)))

        # enable plugin in contrail settings
        plugin.activate_plugin(self)

        interfaces = {
            'eth0': ['fuelweb_admin'],
            'eth1': ['public'],
            'eth2': ['management'],
            'eth3': ['private'],
            'eth4': ['storage'],
            }

        interfaces_update = [{
            'name': 'eth3',
            'interface_properties': {
                'mtu': 9000,
                'disable_offloading': False
            },
            }]

        # activate vSRX image
        vsrx_setup_result = plugin.activate_vsrx()

        self.fuel_web.update_nodes(
            self.cluster_id,
            {
                'slave-01': ['controller'],
                'slave-02': ['compute', 'ceph-osd'],
                'slave-03': ['compute', 'ceph-osd'],
                'slave-04': ['contrail-config',
                             'contrail-control',
                             'contrail-db'],
                'slave-05': ['contrail-config',
                             'contrail-control'],
                'slave-06': ['contrail-config',
                             'contrail-control'],
                })

        slave_nodes = \
            self.fuel_web.client.list_cluster_nodes(self.cluster_id)
        for node in slave_nodes:
            self.fuel_web.update_node_networks(
                node['id'], interfaces,
                override_ifaces_params=interfaces_update)

        # deploy cluster
        openstack.deploy_cluster(self)

        if vsrx_setup_result:
            self.fuel_web.run_ostf(cluster_id=self.cluster_id)

        for node_name in ['slave-01', 'slave-02',
                          'slave-03', 'slave-04', 'slave-05', 'slave-06']:
            node = self.fuel_web.get_nailgun_node_by_name(node_name)
            with self.env.d_env.get_ssh_to_remote(node['ip']) as remote:
                asserts.assert_true(
                    jumbo.check_node_iface_mtu(remote, "eth3", 9000),
                    "MTU on {0} is not 9000. Actual value: {1}"
                    .format(remote.host,
                            jumbo.get_node_iface(remote, "eth3")))