Add test case description for TC028-kvm
[yardstick.git] / docs / configguide / yardstick_testcases / opnfv_yardstick_tc025.rst
1 .. image:: ../../etc/opnfv-logo.png
2   :height: 40
3   :width: 200
4   :alt: OPNFV
5   :align: left
6
7 *************************************
8 Yardstick Test Case Description TC025
9 *************************************
10
11 +-----------------------------------------------------------------------------+
12 |OpenStack Controll Node abnormally shutdown High Availability                |
13 +==============+==============================================================+
14 |test case id  | OPNFV_YARDSTICK_TC025_HA: OpenStack Controll Node abnormally |
15 |              | shutdown                                                     |
16 +--------------+--------------------------------------------------------------+
17 |test purpose  | This test case will verify the high availability of control  |
18 |              | nodethe. When one of the control node abnormally shutdown,   |
19 |              | the service provided by it should be OK.                     |
20 +--------------+--------------------------------------------------------------+
21 |test method   | This test case shutdowns a specified control node with some  |
22 |              | fault injection tools, then checks whether all services      |
23 |              | provided by the control node are OK with some monitor tools. |
24 +--------------+--------------------------------------------------------------+
25 |attackers     | In this test case, an attacker called "host-shutdown" is     |
26 |              | needed. This attacker includes two parameters:               |
27 |              | 1) fault_type: which is used for finding the attacker's      |
28 |              | scripts. It should be always set to "host-shutdown" in       |
29 |              | this test case.                                              |
30 |              | 2) host: which is the name of a control node being attacked. |
31 |              |                                                              |
32 |              | e.g.                                                         |
33 |              | -fault_type: "host-shutdown"                                 |
34 |              | -host: node1                                                 |
35 +--------------+--------------------------------------------------------------+
36 |monitors      | In this test case, one kind of monitor are needed:           |
37 |              | 1. the "openstack-cmd" monitor constantly request a specific |
38 |              |    Openstack command, which needs two parameters             |
39 |              | 1) monitor_type: which is used for finding the monitor class |
40 |              | and related scritps. It should be always set to              |
41 |              | "openstack-cmd" for this monitor.                            |
42 |              | 2) command_name: which is the command name used for request  |
43 |              |                                                              |
44 |              | There are four instance of the "openstack-cmd" monitor:      |
45 |              | monitor1:                                                    |
46 |              | -monitor_type: "openstack-cmd"                               |
47 |              | -api_name: "nova image-list"                                 |
48 |              | monitor2:                                                    |
49 |              | -monitor_type: "openstack-cmd"                               |
50 |              | -api_name: "neutron router-list"                             |
51 |              | monitor3:                                                    |
52 |              | -monitor_type: "openstack-cmd"                               |
53 |              | -api_name: "heat stack-list"                                 |
54 |              | monitor4:                                                    |
55 |              | -monitor_type: "openstack-cmd"                               |
56 |              | -api_name: "cinder list"                                     |
57 +--------------+--------------------------------------------------------------+
58 |metrics       | In this test case, there is one metric:                      |
59 |              | 1)service_outage_time: which indicates the maximum outage    |
60 |              | time (seconds) of the specified Openstack command request.   |
61 +--------------+--------------------------------------------------------------+
62 |test tool     | None. Self-developed.                                        |
63 +--------------+--------------------------------------------------------------+
64 |references    | ETSI NFV REL001                                              |
65 +--------------+--------------------------------------------------------------+
66 |configuration | This test case needs two configuration files:                |
67 |              | 1) test case file: opnfv_yardstick_tc019.yaml                |
68 |              | -Attackers: see above "attackers" discription                |
69 |              | -waiting_time: which is the time (seconds) from the process  |
70 |              | being killed to stoping monitors the monitors                |
71 |              | -Monitors: see above "monitors" discription                  |
72 |              | -SLA: see above "metrics" discription                        |
73 |              |                                                              |
74 |              | 2)POD file: pod.yaml                                         |
75 |              | The POD configuration should record on pod.yaml first.       |
76 |              | the "host" item in this test case will use the node name in  |
77 |              | the pod.yaml.                                                |
78 +--------------+------+----------------------------------+--------------------+
79 |test sequence | step | description                      | result             |
80 |              +------+----------------------------------+--------------------+
81 |              |  1   | start monitors: each monitor will| The monitor info   |
82 |              |      | run with independently process   | will be collected. |
83 |              +------+----------------------------------+--------------------+
84 |              |  2   | do attacker: connect the host    | the host will be   |
85 |              |      | through SSH, and then execute    | shutdown.          |
86 |              |      | shutdown script on the host      |                    |
87 |              +------+----------------------------------+--------------------+
88 |              |  3   | stop monitors after a period of  | All monitor result |
89 |              |      | time specified by "waiting_time" | will be aggregated.|
90 |              +------+----------------------------------+--------------------+
91 |              |  4   | verify the SLA                   | The test case is   |
92 |              |      |                                  | passed or not.     |
93 +--------------+------+----------------------------------+--------------------+
94 |post-action   | It is the action when the test cases exist. It restarts the  |
95 |              | specified control node if it is not restarted.               |
96 +--------------+------+----------------------------------+--------------------+
97 |test verdict  | Fails only if SLA is not passed, or if there is a test case  |
98 |              | execution problem.                                           |
99 +--------------+--------------------------------------------------------------+