Lisez ceci en autres langues
Litmus est un ensemble d'outils pour faire de l'ingénierie du chaos native du cloud. Litmus fournit des outils pour orchestrer le chaos sur Kubernetes afin d'aider les SRE à trouver des faiblesses dans leurs déploiements. Les SRE utilisent Litmus pour exécuter des expériences de chaos initialement dans l'environnement de préparation et finalement en production pour trouver des bogues, des vulnérabilités. La correction des faiblesses conduit à une résilience accrue du système.
Litmus adopte une approche cloud native pour créer, gérer et surveiller le chaos. Le chaos est orchestré à l'aide des définitions de ressources personnalisées Kubernetes suivantes (CRDs):
- ChaosEngine: Une ressource pour lier une application Kubernetes ou un nœud Kubernetes à un ChaosExperiment. ChaosEngine est surveillé par l'opérateur du chaos de Litmus qui invoque ensuite des expériences de chaos.
- ChaosExperiment:Une ressource pour regrouper les paramètres de configuration d'une expérience de chaos. Les CR ChaosExperiment sont créés par l'opérateur lorsque les expériences sont appelées par ChaosEngine.
- ChaosResult: Une ressource pour contenir les résultats d'une expérience de chaos. L'exportateur Chaos lit les résultats et exporte les métriques dans un serveur Prometheus configuré.
Les expériences de chaos sont hébergées sur hub.litmuschaos.io. Il s'agit d'un hub central où les développeurs ou fournisseurs d'applications partagent leurs expériences de chaos afin que leurs utilisateurs puissent les utiliser pour augmenter la résilience des applications en production.
- Pour les développeurs: pour exécuter des expériences de chaos pendant le développement d'applications en tant qu'extension des tests unitaires ou des tests d'intégration.
- Pour les constructeurs de pipelines CI: Pour exécuter le chaos en tant qu'étape de pipeline pour trouver des bogues lorsque l'application est soumise à des chemins de défaillance dans un pipeline.
- Pour les SRE: pour planifier et programmer des expériences de chaos dans l'application et / ou l'infrastructure environnante. Cette pratique identifie les faiblesses du système et augmente la résilience.
Vérifiez Litmus Docs to get started.
Vérifiez Contribuer aux Guildelines pour le Chaos Hub
Envoyez un PR à la page ci-dessus si vous utilisez Litmus dans votre pratique d'ingénierie du chaos
Certaines des considérations qui doivent être prises avec Litmus (en tant que cadre de chaos) sont énumérées ici. Beaucoup d'entre eux sont déjà en cours d'élaboration comme mentionné dans la ROADMAP. Pour obtenir des détails ou des limitations concernant des tests spécifiques, reportez-vous aux documents relatifs aux tests.
- Litmus chaos operator and the chaos experiments run as kubernetes resources in the cluster. In case of airgapped environments, the chaos custom resources and images need to be hosted on premise.
- When attempting to execute platform specific chaos experiments (like those on AWS, GCP cloud) the access details are passed via kubernetes secrets. Support for other modes of secret management with Litmus is yet to be tested/implemented.
- Some chaos experiments make use of the docker api from within the experiment pods, and thereby require the docker socket to be mounted. User discretion is advised when allowing developers/devops admins/SREs access for running these experiments.
- In (rare) cases where chaos experiments make use of privileged containers, the recommended security policies will be documented.
Litmus est concédé sous licence Apache, version 2.0. Voir LICENCE pour le texte complet de la licence. Certains des projets utilisés par le projet Litmus peuvent être régis par une licence différente, veuillez vous référer à sa licence spécifique.
Litmus Chaos fait partie des projets CNCF.
La communauté Litmus se réunit le troisième mercredi de chaque mois à 22h00 IST / 9h30 PST.
Ressources communautaires:
- Community Slack
- Sync Up Meeting Link
- Sync Up Agenda & Meeting Notes
- Youtube Channel (demos, meeting recordings, virtual meetups)
- Release Tracker
Paysage CNCF