Chaos Mesh apporte divers types de simulations de défaillances à Kubernetes avec une capacité d'orchestration avancée. Il vous aide à reproduire des anomalies réelles dans les environnements de développement, test et production pour identifier des problèmes potentiels.
Testez avec cette commande 👇
Basé sur les principes du Chaos Engineering, Chaos Mesh abstrait les événements réels en objets applicables, masquant les détails techniques.
Conçu pour Kubernetes
Dans l'écosystème Kubernetes, CustomResourceDefinition (CRD) est une solution éprouvée pour implémenter des ressources personnalisées. Chaos Mesh exploite les CRD pour une intégration naturelle avec l'écosystème Kubernetes.
Facile à utiliser
Aucune dépendance spécifique requise, Chaos Mesh peut être déployé directement sur des clusters Kubernetes, y compris minikube et kind.
- Capacité à mener des expériences de chaos en production sans modifier la logique de déploiement des applications.
- Création rapide d'expériences via le dashboard, permettant d'observer l'état en temps réel et de restaurer rapidement les défaillances injectées.
Périmètre flexible
Chaos Mesh offre des règles de filtrage pour sélectionner les cibles d'injection via labels, annotations, etc. Ces règles sont appelées sélecteurs.
Les utilisateurs peuvent également définir une liste blanche de namespaces pour mieux contrôler le "rayon d'impact" des expériences.
Sécurité avant tout
Le contrôle d'accès basé sur les rôles (RBAC) est activé par défaut pour limiter les opérations malveillantes. L'accès au dashboard nécessite des privilèges spécifiques.
Conçu pour les systèmes distribués, Chaos Mesh propose des types de défaillances granulaires pour les réseaux, disques, systèmes de fichiers, OS, etc.
PodChaos / pod-failure
apiVersion: chaos-mesh.org/v1alpha1
kind: PodChaos
metadata:
name: pod-failure-example
namespace: chaos-mesh
spec:
selector:
labelSelectors:
'environment': 'staging'
mode: one
action: pod-failure
duration: 30s
NetworkChaos / delay
apiVersion: chaos-mesh.org/v1alpha1
kind: NetworkChaos
metadata:
name: network-delay-example
spec:
selector:
namespaces:
- default
labelSelectors:
'env': 'production'
mode: one
action: delay
delay:
latency: '10ms'
correlation: '100'
jitter: '0ms'
StressChaos
apiVersion: chaos-mesh.org/v1alpha1
kind: StressChaos
metadata:
name: mem-stress
namespace: chaos-mesh
spec:
selector:
namespaces:
- 'default'
labelSelectors:
'env': 'test'
mode: one
stressors:
memory:
workers: 2
size: '128MB'
Les défaillances réelles sont rarement isolées. Chaos Mesh intègre des workflows pour orchestrer des expériences en série ou parallèle, adaptés à votre architecture.
Suspendre
Utilisez le nœud de suspension pour simuler une récupération temporaire.
Vérification d'état
Implémentez des vérifications d'état personnalisées pour surveiller l'état du cluster.
Même sans Kubernetes, profitez de Chaos Mesh via Chaosd, notre outil expérimental pour tester le chaos sur machines physiques. Utilisez PhysicalMachineChaos dans Chaos Mesh pour invoquer Chaosd à distance.
En savoir plus →Rejoignez la communauté pour échanger avec les mainteneurs et utilisateurs. Vos suggestions améliorent Chaos Mesh.
Contribuez à façonner l'avenir de Chaos Mesh.
GitHubDes difficultés ? Contactez-nous pour assistance.
Chaos Mesh is a Cloud Native Computing Foundation incubating project.













