chaos

module
v0.0.0-...-58360b6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 7, 2018 License: Apache-2.0

README

Chaos

Chaos is used to check the distributed system linearizability.

Chaos is inspired by jepsen and uses porcupine as its linearizability checker.

Architecture

Chaos runs your registered database on 5 nodes, sends the command through ssh to control the service, like starting/stoping the service, or using a nemesis to disturb the whole cluster.

           +-------------+
  +------- | controller  | -------+
  |        +-------------+        |
  |          |    |    |          |
  |     +----+    |    |          |
  v     v         |    |          v
+----+----+----+  |    |  +----+----+
| n1 | n2 | n3 | <+    +> | n4 | n5 |
+----+----+----+          +----+----+

Usage

In one shell, we start the 5 nodes and the controller.

cd docker
./up.sh

In another shell, use docker exec -it chaos-control bash to enter the controller, then:

# build the node and your own chaos test
make

# run you own chaos like
./bin/chaos-tidb

Scaffold

It is very easy to write your own chaos test. TODO...

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL