"etc/yardstick/nodes/pod.yaml.ipmi.sample").
{% set file = file or '/etc/yardstick/pod.yaml' %}
-{% set jumphost = jumphost or 'node0' %}
+{% set jump_host = jump_host or 'node0' %}
+{% set attack_host = attack_host or 'node1' %}
+{% set monitor_time = monitor_time or 180 %}
scenarios:
-
options:
attackers:
- fault_type: "bare-metal-down"
- host: node1
- jump_host: {{jumphost}}
+ host: {{attack_host}}
+ jump_host: {{jump_host}}
monitors:
- monitor_type: "openstack-cmd"
command_name: "openstack image list"
- monitor_time: 10
+ monitor_time: {{monitor_time}}
monitor_number: 3
+ sla:
+ max_outage_time: 5
- monitor_type: "openstack-cmd"
command_name: "openstack router list"
- monitor_time: 10
+ monitor_time: {{monitor_time}}
monitor_number: 3
+ sla:
+ max_outage_time: 5
- monitor_type: "openstack-cmd"
command_name: "openstack stack list"
- monitor_time: 10
+ monitor_time: {{monitor_time}}
monitor_number: 3
+ sla:
+ max_outage_time: 5
- monitor_type: "openstack-cmd"
command_name: "openstack volume list"
- monitor_time: 10
+ monitor_time: {{monitor_time}}
monitor_number: 3
+ sla:
+ max_outage_time: 5
nodes:
- node1: node1.LF
- node0: node0.LF
+ {{attack_host}}: {{attack_host}}.LF
+ {{jump_host}}: {{jump_host}}.LF
runner:
type: Iteration
Test case for TC054 :OpenStack VIP Master Node abnormally shutdown High Availability;
This test case is written by new scenario-based HA testing framework.
+{% set attack_host = attack_host or 'node1' %}
+{% set check_host = check_host or 'node2' %}
+{% set jump_host = jump_host or 'node0' %}
{% set file = file or '/etc/yardstick/pod.yaml' %}
{% set vip_management = vip_management or '192.168.0.2' %}
{% set vip_public = vip_public or '172.16.0.3' %}
{% set vip_router_management = vip_router_management or '192.168.0.1' %}
{% set vip_router_public = vip_router_public or '172.16.0.2' %}
+{% set monitor_time = monitor_time or 180 %}
scenarios:
-
attackers:
-
fault_type: "bare-metal-down"
- host: node1
+ host: {{attack_host}}
key: "bare-metal-down"
+ jump_host: {{jump_host}}
monitors:
-
monitor_type: "openstack-cmd"
key: "list-images"
command_name: "openstack image list"
- monitor_time: 10
+ monitor_time: {{monitor_time}}
monitor_number: 3
sla:
max_outage_time: 5
monitor_type: "general-monitor"
monitor_key: "ip-status"
key: "vip-mgmt-status"
- host: node2
- monitor_time: 10
+ host: {{check_host}}
+ monitor_time: {{monitor_time}}
monitor_number: 3
sla:
max_outage_time: 5
monitor_type: "general-monitor"
monitor_key: "ip-status"
key: "vip-routerp-status"
- host: node2
- monitor_time: 10
+ host: {{check_host}}
+ monitor_time: {{monitor_time}}
monitor_number: 3
sla:
max_outage_time: 5
monitor_type: "general-monitor"
monitor_key: "ip-status"
key: "vip-router-status"
- host: node2
- monitor_time: 10
+ host: {{check_host}}
+ monitor_time: {{monitor_time}}
monitor_number: 3
sla:
max_outage_time: 5
monitor_type: "general-monitor"
monitor_key: "ip-status"
key: "vip-pub"
- host: node2
- monitor_time: 10
+ host: {{check_host}}
+ monitor_time: {{monitor_time}}
monitor_number: 3
sla:
max_outage_time: 5
index: 6
nodes:
- node1: node1.LF
- node2: node2.LF
+ {{jump_host}}: {{jump_host}}.LF
+ {{attack_host}}: {{attack_host}}.LF
+ {{check_host}}: {{check_host}}.LF
runner:
type: Duration
duration: 1
except KeyboardInterrupt:
raise
except Exception:
- LOG.exception('')
+ LOG.exception("Running test case %s failed!", case_name)
testcases[case_name] = {'criteria': 'FAIL', 'tc_data': []}
else:
testcases[case_name] = {'criteria': 'PASS', 'tc_data': data}
for node in nodes.values():
if not node:
continue
- for interface in node['interfaces'].values():
+ interfaces = node.get('interfaces', {})
+ for interface in interfaces.values():
vld_id = interface.get('vld_id')
# mgmt network doesn't have vld_id
if not vld_id:
def monitor_func(self):
exit_status = 0
exit_status, stdout = _execute_shell_command(self.cmd)
+ LOG.debug("Execute command '%s' and the stdout is:\n%s", self.cmd, stdout)
if exit_status:
return False
return True