Execute the CVP - Shaker network tests pipeline

Execute the CVP - Shaker network tests pipeline

This section instructs you on how to perform the data plane networking test of your deployment using the CVP - Shaker network tests Jenkins pipeline.


Clone the cvp-shaker repository to your local Gerrit and use it locally to add new or adjust the existing scenarios and build a new Docker image with Shaker.

To perform the data plane networking test of your deployment:

  1. In a web browser, open http://<ip_address>:8081 to access the Jenkins web UI.


    The IP address is defined in the classes/cluster/<cluster_name>/cicd/init.yml file of the Reclass model under the cicd_control_address parameter variable.

  2. Log in to the Jenkins web UI as Administrator.


    To get the password, execute the following command on the Salt Master node:

    salt-call pillar.data _param:jenkins_admin_password
  3. In the global view, find the CVP - Shaker network tests pipeline.

  4. Select the Build with Parameters option from the drop-down menu of the pipeline.

  5. Configure the following parameters as required:

    CVP - Sanity checks parameters
    Parameter Description
    IMAGE The cvp-shaker Docker image (with all dependencies) that will be used during the test run. The default value is docker-prod-local.docker.mirantis.net/mirantis/cvp/cvp-shaker:<MCP_VERSION>. For the offline mode, use the URL from the local artifactory or offline image.
    SALT_MASTER_CREDENTIALS The credentials to Salt API stored in Jenkins, included by default. See View credentials details used in Jenkins pipelines for details.

    The reachable IP address of the Salt Master node and port on which Salt API listens. For example,

    To determine on which port Salt API listens:

    1. Log in to the Salt Master node.

    2. Search for the port in the /etc/salt/master.d/_api.conf file.

    3. Verify that the Salt Master node is listening on that port:

      netstat -tunelp | grep <PORT>
    SHAKER_PARAMS The YAML context with parameters for running Shaker. See the description of the available options below. The SHAKER_SERVER_ENDPOINT option is mandatory, while others can be left with the default values.

    The address for the Shaker server connections in the form of host:port. The address should be accessible from the OpenStack public (floating) network and usually equals to a public-routable address of the CI/CD node. This is a mandatory option.


    The Shaker server address should belong to the CI/CD node that you start the job at and is accessible from the Openstack public (floating) network. Also, to be able to run some scenarios, you should provide compute nodes with the 4*(density count) gigabytes of free disk space.


    Path to the Shaker scenarios in the cvp-shaker Docker image. Can be either a directory or a specific file. The main categories include:

    • scenarios/essential/l2
    • scenarios/essential/l3
    • scenarios/additional/cross_az
    • scenarios/additional/external
    • scenarios/additional/qos

    The default value is scenarios/essential that starts a comprehensive test of both L2 and L3 data plane networking.

    SHAKER_PARAMS:SKIP_LIST A comma-separated list of Shaker scenarios to skip directories or files inside the scenarios directory of the cvp-shaker Docker image. For example, dense_l2.yaml,full_l2.yaml,l3. Defaults to an empty string.

    The matrix of extra parameters for the scenario. The value is specified in the JSON format. Defaults to an empty string.

    For example, to override a scenario duration, specify {time: 10}, or to override the list of hosts, define {host:[ping.online.net, iperf.eenet.ee]}. If several parameters are overridden, all combinations are tested.

    It is a required field for some of external-category scenarios when the host name with external iPerf3 server must be provided as a command-line parameter, for example, {host:}.


    The list of the shaker-image-builder environment variables that includes:


    Used for building an image of Shaker which will be used for running Shaker agents across the cluster. Leave these parameters commented out as the default settings should meet all the requirements for starting a test.


    List of Shaker server environment variables including:


    You can define these parameters to alter the Shaker server environment variables.

    The SHAKER_EXTERNAL_NET variable should be set to the name of your OpenStack floating network, which defaults to public.

    The SCENARIO_AVAILABILITY_ZONE variable can be used when running the cross az scenarios category to override default availability zones set in the scenarios.

    All the other options in most cases can be left unchanged.

  6. Click Build.

  7. Verify the job status:


      Testing has beed performed successfully, no errors found.


      Testing has failed due to issues with the framework or/and pipeline configuration. Review the console output.