All Projects → chaos-mesh → Chaos Mesh

chaos-mesh / Chaos Mesh

Licence: apache-2.0
A Chaos Engineering Platform for Kubernetes.

Programming Languages

go
31211 projects - #10 most used programming language
typescript
32286 projects
shell
77523 projects
Makefile
30231 projects
groovy
2714 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to Chaos Mesh

Litmus
Litmus helps SREs and developers practice chaos engineering in a Cloud-native way. Chaos experiments are published at the ChaosHub (https://hub.litmuschaos.io). Community notes is at https://hackmd.io/a4Zu_sH4TZGeih-xCimi3Q
Stars: ✭ 2,377 (-44.27%)
Mutual labels:  cloud-native, hacktoberfest, operator, chaos-engineering, cncf, site-reliability-engineering, fault-injection, chaos-testing, crd, chaos-experiments
Pumba
Chaos testing, network emulation, and stress testing tool for containers
Stars: ✭ 2,136 (-49.92%)
Mutual labels:  chaos-engineering, chaos, microservice, site-reliability-engineering, fault-injection, chaos-testing
Chaosblade
An easy to use and powerful chaos engineering experiment toolkit.(阿里巴巴开源的一款简单易用、功能强大的混沌实验注入工具)
Stars: ✭ 4,343 (+1.83%)
Mutual labels:  microservice, chaos-engineering, site-reliability-engineering, fault-injection, chaos-testing
Awesome Chaos Engineering
A curated list of Chaos Engineering resources.
Stars: ✭ 4,740 (+11.14%)
Mutual labels:  chaos-engineering, chaos, site-reliability-engineering, chaos-testing
kaos
Kinda Chaos Monkey for Kubernetes
Stars: ✭ 18 (-99.58%)
Mutual labels:  operator, chaos-engineering, crd
Kudo
Kubernetes Universal Declarative Operator (KUDO)
Stars: ✭ 849 (-80.09%)
Mutual labels:  hacktoberfest, operator, cncf
siddhi-operator
Operator allows you to run stream processing logic directly on a Kubernetes cluster
Stars: ✭ 16 (-99.62%)
Mutual labels:  cncf, operator, cloud-native
Policy Hub Cli
CLI for searching Rego policies
Stars: ✭ 88 (-97.94%)
Mutual labels:  cloud-native, hacktoberfest, cncf
Tidb Operator
TiDB operator creates and manages TiDB clusters running in Kubernetes.
Stars: ✭ 778 (-81.76%)
Mutual labels:  cloud-native, hacktoberfest, operator
Falco
Cloud Native Runtime Security
Stars: ✭ 4,340 (+1.76%)
Mutual labels:  hacktoberfest, cncf, cloud-native
Performance-Engineers-DevOps
This repository helps performance testers and engineers who wants to dive into DevOps and SRE world.
Stars: ✭ 35 (-99.18%)
Mutual labels:  site-reliability-engineering, chaos, chaos-engineering
gryllidae
Opinionated CNCF-based, Docker Compose setup for everything needed to develop a 12factor app
Stars: ✭ 18 (-99.58%)
Mutual labels:  cncf, cloud-native
xk6-chaos
xk6 extension for running chaos experiments with k6 💣
Stars: ✭ 18 (-99.58%)
Mutual labels:  chaos, chaos-engineering
common-disaster-recovery-scenarios
A list of common Disaster Recovery (DR) scenarios for software companies
Stars: ✭ 29 (-99.32%)
Mutual labels:  site-reliability-engineering, chaos-engineering
chaos-operator
chaos engineering via kubernetes operator
Stars: ✭ 90 (-97.89%)
Mutual labels:  operator, chaos-engineering
kubereplay
Seamless integration of goReplay and Kubernetes
Stars: ✭ 30 (-99.3%)
Mutual labels:  cloud-native, crd
pixie
Instant Kubernetes-Native Application Observability
Stars: ✭ 3,238 (-24.08%)
Mutual labels:  cncf, cloud-native
radondb-mysql-kubernetes
Open Source,High Availability Cluster,based on MySQL
Stars: ✭ 146 (-96.58%)
Mutual labels:  operator, cloud-native
tipocket
A toolkit for testing TiDB
Stars: ✭ 122 (-97.14%)
Mutual labels:  chaos, chaos-mesh
chaosmonkey
Go client to the Chaos Monkey REST API
Stars: ✭ 54 (-98.73%)
Mutual labels:  chaos-testing, chaos-engineering

Chaos Mesh Logo

Build Status codecov LICENSE Language Go Report Card GoDoc FOSSA Status

Note:

This readme and related documentation are Work in Progress.

Chaos Mesh is a Cloud Native Computing Foundation (CNCF) hosted project. It is a cloud-native Chaos Engineering platform that orchestrates chaos on Kubernetes environments. At the current stage, it has the following components:

  • Chaos Operator: the core component for chaos orchestration. Fully open sourced.
  • Chaos Dashboard: a Web UI for managing, designing, monitoring Chaos Experiments.

See the following demo video for a quick view of Chaos Mesh:

Watch the video

Chaos Operator

Chaos Operator injects chaos into the applications and Kubernetes infrastructure in a manageable way, which provides easy, custom definitions for chaos experiments and automatic orchestration. There are three components at play:

Controller-manager: used to schedule and manage the lifecycle of CRD objects.

Chaos-daemon: runs as daemonset with privileged system permissions over network, Cgroup, etc. for a specific node.

Chaos Operator

Chaos Operator uses CustomResourceDefinition (CRD) to define chaos objects. The current implementation supports a few types of CRD objects for fault injection, namely DNSChaos, PodChaos, PodIOChaos, PodNetworkChaos, NetworkChaos, IOChaos, TimeChaos, StressChaos, and KernelChaos, which correspond to the following major actions (experiments):

  • pod-kill: The selected pod is killed (ReplicaSet or something similar may be needed to ensure the pod will be restarted).
  • pod-failure: The selected pod will be unavailable in a specified period of time.
  • container-kill: The selected container is killed in the selected pod.
  • netem chaos: Network chaos such as delay, duplication, etc.
  • network-partition: Simulate network partition.
  • IO chaos: Simulate file system faults such as I/O delay, read/write errors, etc.
  • time chaos: The selected pod will be injected with clock skew.
  • cpu-burn: Simulate the CPU of the selected pod stress.
  • memory-burn: Simulate the memory of the selected pod stress.
  • kernel chaos: The selected pod will be injected with (slab, bio, etc) errors.
  • dns chaos: The selected pod will be injected with dns errors, such as error, random.

Quick start

See Chaos Mesh Docs.

Adopters

See ADOPTERS.

Blogs

Blogs on Chaos Mesh design & implementation, features, chaos engineering, community updates, etc. See Chaos Mesh Blogs. Here are some recommended ones for you to start with:

Contributing

See the contributing guide and development guide.

Community

Please reach out for bugs, feature requests, and other issues via:

  • Following us on Twitter @chaos_mesh.

  • Joining the #project-chaos-mesh channel in the CNCF Slack workspace.

  • Filing an issue or opening a PR against this repository.

Community meeting

On the fourth Thursday of every month (unless otherwise specified), the Chaos Mesh community holds a monthly meeting by video conference to discuss the status of Chaos Mesh.

Quick links:

Community blogs

Community talks

Media coverage

FAQs

See FAQs.

Roadmap

See ROADMAP.

License

Chaos Mesh is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

FOSSA Status

Trademark

Chaos Mesh is a trademark of The Linux Foundation. All rights reserved.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].