aboutsummaryrefslogtreecommitdiffstats
path: root/tests/opnfv/test_suites/opnfv_os-odl-fdio-ha_daily.yaml
blob: 7716b6ccd2590dda13e1767665b3f91cb632fca9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
##############################################################################
# Copyright (c) 2017 Huawei Technologies Co.,Ltd and others.
#
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Apache License, Version 2.0
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
# os-odl-fdio-ha daily task suite

schema: "yardstick:suite:0.1"

name: "os-odl-fdio-ha"
test_cases_dir: "tests/opnfv/test_cases/"
test_cases:
-
  file_name: opnfv_yardstick_tc002.yaml
-
  file_name: opnfv_yardstick_tc005.yaml
-
  file_name: opnfv_yardstick_tc010.yaml
-
  file_name: opnfv_yardstick_tc011.yaml
-
  file_name: opnfv_yardstick_tc012.yaml
-
  file_name: opnfv_yardstick_tc014.yaml
-
  file_name: opnfv_yardstick_tc037.yaml
-
  file_name: opnfv_yardstick_tc069.yaml
-
  file_name: opnfv_yardstick_tc070.yaml
-
  file_name: opnfv_yardstick_tc071.yaml
-
  file_name: opnfv_yardstick_tc072.yaml
ff0f0 } /* Literal.String */ .highlight .na { color: #336699 } /* Name.Attribute */ .highlight .nb { color: #003388 } /* Name.Builtin */ .highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */ .highlight .no { color: #003366; font-weight: bold } /* Name.Constant */ .highlight .nd { color: #555555 } /* Name.Decorator */ .highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ .highlight .nl { color: #336699; font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
##############################################################################
## Copyright (c) 2018 Intracom Telecom and others.
##
## All rights reserved. This program and the accompanying materials
## are made available under the terms of the Apache License, Version 2.0
## which accompanies this distribution, and is available at
## http://www.apache.org/licenses/LICENSE-2.0
###############################################################################
---

schema: "yardstick:task:0.1"
description: >
    Yardstick TC092 config file;
    SDN Controller resilience in HA configuration

{% set file = file or '/etc/yardstick/pod.yaml' %}
{% set attack_host = attack_host or 'node6' %}

scenarios:

-
      type: "GeneralHA"
      options:
          monitors:
            - monitor_type: "general-monitor"
              monitor_key: "ip-status"
              key: "snat"
              monitor_time: 50
              host: athena
              sla:
                 max_outage_time: 0
              parameter:
                destination_ip: "8.8.8.8"

            - monitor_type: "general-monitor"
              monitor_key: "ip-status"
              key: "l2"
              monitor_time: 50
              host: athena
              sla:
                 max_outage_time: 0
              parameter:
                destination_ip: "@private_ip"

          operations:
            - operation_type: "general-operation"
              key: "get-privateip"
              operation_key: "get-privateip"
              action_parameter:
                server_name: "ares"
              return_parameter:
                all: "@private_ip"


          steps:
            - actionKey: "get-privateip"
              actionType: "operation"
              index: 1

            - actionKey: "l2"
              actionType: "monitor"
              index: 2

            - actionKey: "snat"
              actionType: "monitor"
              index: 3


      nodes:
        {{attack_host}}: {{attack_host}}.LF
        athena: athena.ODLHA1
      runner:
        type: Duration
        duration: 1
      sla:
        action: assert

-
      type: "GeneralHA"
      options:
          attackers:
            -
              fault_type: "kill-process"
              process_name: "opendaylight"
              key: "kill-process"
              host: {{attack_host}}

          monitors:
            - monitor_type: "process"
              process_name: "opendaylight"
              host: {{attack_host}}
              key: "monitor-recovery"
              monitor_time: 50
              sla:
                max_recover_time: 30


            - monitor_type: "general-monitor"
              monitor_key: "ip-status"
              key: "snat"
              monitor_time: 70
              host: athena
              sla:
                 max_outage_time: 0
              parameter:
                destination_ip: "8.8.8.8"

            - monitor_type: "general-monitor"
              monitor_key: "ip-status"
              key: "l2"
              monitor_time: 70
              host: athena
              sla:
                 max_outage_time: 0
              parameter:
                destination_ip: "@private_ip"

          operations:
            - operation_type: "general-operation"
              key: "start-service"
              host: {{attack_host}}
              operation_key: "start-service"
              action_parameter:
                service: "opendaylight"
              rollback_parameter:
                service: "opendaylight"

            - operation_type: "general-operation"
              key: "get-privateip"
              operation_key: "get-privateip"
              action_parameter:
                server_name: "ares"
              return_parameter:
                all: "@private_ip"



          steps:

            - actionKey: "monitor-recovery"
              actionType: "monitor"
              index: 1

            - actionKey: "get-privateip"
              actionType: "operation"
              index: 2

            - actionKey: "l2"
              actionType: "monitor"
              index: 3

            - actionKey: "snat"
              actionType: "monitor"
              index: 4

            - actionKey: "kill-process"
              actionType: "attacker"
              index: 5

            - actionKey: "start-service"
              actionType: "operation"
              index: 6



      nodes:
        {{attack_host}}: {{attack_host}}.LF
        athena: athena.ODLHA1
      runner:
        type: Duration
        duration: 1
      sla:
        action: assert

-
      type: "GeneralHA"
      options:
          monitors:

            - monitor_type: "general-monitor"
              monitor_key: "ip-status"
              key: "l2"
              monitor_time: 80
              host: athena
              sla:
                 max_outage_time: 40
              parameter:
                destination_ip: "@private_ip"

          operations:
            - operation_type: "general-operation"
              key: "get-privateip"
              operation_key: "get-privateip"
              action_parameter:
                server_name: "hermes"
              return_parameter:
                all: "@private_ip"

            - operation_type: "general-operation"
              key: "nova-create-instance"
              operation_key: "nova-create-instance"
              action_parameter:
                serverconfig: "hermes yardstick-image yardstick-flavor test_one"
              rollback_parameter:
                serverconfig: "hermes"

            - operation_type: "general-operation"
              key: "add-server-to-secgroup"
              operation_key: "add-server-to-secgroup"
              action_parameter:
                serverconfig: "hermes ODLHA1"
              rollback_parameter:
                serverconfig: "hermes ODLHA1"


          steps:
            - actionKey: "nova-create-instance"
              actionType: "operation"
              index: 1

            - actionKey: "add-server-to-secgroup"
              actionType: "operation"
              index: 2

            - actionKey: "get-privateip"
              actionType: "operation"
              index: 3

            - actionKey: "l2"
              actionType: "monitor"
              index: 4

      nodes:
        {{attack_host}}: {{attack_host}}.LF
        athena: athena.ODLHA1
      runner:
        type: Duration
        duration: 1
      sla:
        action: assert


contexts:
    -
        type: Node
        name: LF
        file: {{file}}
    -
        name: ODLHA1
        image: yardstick-image
        flavor: yardstick-flavor
        user: ubuntu
        host: athena
        placement_groups:
            pgrp1:
                policy: "availability"
        servers:
            athena:
                floating_ip: true
                placement: "pgrp1"
                network_ports:
                    test_one:
                        - ens0

            ares:
                floating_ip: true
                placement: "pgrp1"
                network_ports:
                    test_one:
                        - ens0

        networks:
            test_one:
                cidr: '10.0.1.0/24'
                router: 'test_router'