blob: 069e5aff40e7657cf37fcfcff9f0a11bc1f06671 [file] [log] [blame]
Jon Hall0e240372018-05-02 11:21:57 -07001This test is designed to verify that an ONOS cluster behaves correctly when
2ONOS nodes die due to power failures. Currently, we will kill nodes so that
3each raft partition will lose a member, but we make sure that there is always
4a majority of nodes available in each partition.
5
6As written, the test only supports an ONOS cluster of 3,5, or 7 nodes.
7This is because the test doesn't apply to a single node cluster, ONOS clusters
8should be deployed in odd numbers, and the partition generation and node
9killing scheme used doesn't give the same properties for clusters of more
10than 7 nodes. Namely, each partition won't have exactly one node killed.
11
12The gerneral structure for the test:
13- Startup
14- Assign switches
15- Verify ONOS state and functionality
16 - Device mastership
17 - Intents
18 - Leadership election
19 - Distributed Primitives
20- Kill some ONOS nodes
21- Verify ONOS state and functionality
22- Restart ONOS nodes
23- Verify ONOS state and functionality
24- Dataplane failures
25 - link down and up
26 - switch down and up