Skip to content
No description, website, or topics provided.
JavaScript Python Shell Other
Branch: master
Clone or download
Pull request Compare This branch is 56 commits behind russkatz:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.startup
ui
.gitignore
README.md
decom.sh
demo.ini
ini.template
khaosKatz.py
khaosKatz.sh
makeini.sh
priv.key
readDemo.py
restDemo.py
runDemo.py
startup
writeDemo.py

README.md

dse-uptime-demo

This demo is to showcase DSE's ability to be continuously available under any circumstance and it has two parts: The Demo application and khaosKatz. The Demo is a simple application that writes data into DSE, but if it misses a single write the application will crash. KhaosKatz will continously load random scenarios taking down different nodes and/or entire datacenters. The goal is to run the Demo application successfully even while khaosKatz starts taking things down ungracefully.

Setup the cluster

  • 2+ DCs, 3+ nodes each
  • Opscenter

Setup the Demo app

(Note: If you installed the AssetHub Multi-Cloud Cluster everything is already setup in /tmp/dse-uptime-demo on the opscenter node. If you don't know what AssetHub is you can safely ignore this note :) )

  demo.ini: Configuration file
  makeini.sh: Script to create demo.ini based on Opscenter
  writeDemo.py: Demo application to write data into the cluster
  readDemo.py: Read application to read back data written into the cluster from the writeDemo app
  khaosKatz.sh: Automated Chaos! Simulates different cluster failure scenarios
  • create demo.ini

    • ./makeini.sh demo.ini opscenter.hostname
  • optional: edit demo.ini

    • Setup SSL/Auth if required
    • Update SSH private keys
    • Change the consistency levels for the applications
    • Change local DCs for the read/write applications

Running the Demo

  • open new terminal and run ./writeDemo.py
  • open new terminal and run ./readDemo.py
  • Open new terminal and run ./khaosKatz.sh
    • Select failure scenarios and see how the applications respond!
You can’t perform that action at this time.