############################################################################## ## 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 TC093 config file; SDN Vswitch resilience in non-HA or HA configuration {% set file = file or '/etc/yardstick/pod.yaml' %} {% set attack_host_cmp_one = attack_host_cmp_one or 'node4' %} {% set attack_host_cmp_two = attack_host_cmp_two or 'node5' %} {% set systemd_service_name = systemd_service_name or 'openvswitch-switch'%} 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: athena: athena.ODLnoHA1 runner: type: Duration duration: 1 sla: action: assert - type: "GeneralHA" options: attackers: - fault_type: "kill-process" process_name: "openvswitch" key: "kill-process-cmp-one" host: {{attack_host_cmp_one}} - fault_type: "kill-process" process_name: "openvswitch" key: "kill-process-cmp-two" host: {{attack_host_cmp_two}} monitors: - monitor_type: "process" process_name: "openvswitch" host: {{attack_host_cmp_one}} key: "monitor-recovery-cmp-one" monitor_time: 50 sla: max_recover_time: 30 - monitor_type: "process" process_name: "openvswitch" host: {{attack_host_cmp_two}} key: "monitor-recovery-cmp-two" 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: 20 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: 20 parameter: destination_ip: "@private_ip" operations: - operation_type: "general-operation" key: "restart-service-cmp-one" host: {{attack_host_cmp_one}} operation_key: "start-service" action_parameter: service: {{systemd_service_name ~ " restart"}} rollback_parameter: service: "openvswitch" - operation_type: "general-operation" key: "restart-service-cmp-two" host: {{attack_host_cmp_two}} operation_key: "start-service" action_parameter: service: {{systemd_service_name ~ " restart"}} rollback_parameter: service: "openvswitch" - 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 - actionKey: "kill-process-cmp-one" actionType: "attacker" index: 4 - actionKey: "kill-process-cmp-two" actionType: "attacker" index: 5 - actionKey: "monitor-recovery-cmp-one" actionType: "monitor" index: 6 - actionKey: "monitor-recovery-cmp-two" actionType: "monitor" index: 7 - actionKey: "restart-service-cmp-one" actionType: "operation" index: 8 - actionKey: "restart-service-cmp-two" actionType: "operation" index: 9 nodes: {{attack_host_cmp_one}}: {{attack_host_cmp_one}}.LF {{attack_host_cmp_two}}: {{attack_host_cmp_two}}.LF athena: athena.ODLnoHA1 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 ODLnoHA1" rollback_parameter: serverconfig: "hermes ODLnoHA1" 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: athena: athena.ODLnoHA1 runner: type: Duration duration: 1 sla: action: assert contexts: - type: Node name: LF file: {{file}} - name: ODLnoHA1 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'