Le prochain niveau d'ingénierie du chaos est là! Tuez les pods à l'intérieur de votre cluster Kubernetes en les tirant dans Doom!
Ceci est une fourche de l'excellent Gideonred / DockerDoomd à l'aide d'un destin légèrement modifié, débordé de https://github.com/gideonred/dockerDoom, qui a été fourché à partir de PSDoom.

Afin de courir localement, vous devrez
Exécutez ghcr.io/storax/kubedoom:latest avec docker localement:
$ docker run -p5901:5900
--net=host
-v ~/.kube:/root/.kube
--rm -it --name kubedoom
ghcr.io/storax/kubedoom:latest En éventuellement, si vous définissez -e NAMESPACE={your namespace} vous pouvez limiter KubeDoom à la suppression des pods dans un seul espace de noms
Exécutez ghcr.io/storax/kubedoom:latest avec podman localement:
$ podman run -it -p5901:5900/tcp
-v ~/.kube:/tmp/.kube --security-opt label=disable
--env "KUBECONFIG=/tmp/.kube/config" --name kubedoom
ghcr.io/storax/kubedoom:latest Démarrez maintenant une visionneuse VNC et connectez-vous à localhost:5901 . Le mot de passe est idbehold :
$ vncviewer viewer localhost:5901 Vous devriez maintenant voir Doom! Maintenant, si vous souhaitez faire le travail, entrez rapidement le triche idspispopd et traversez le mur à votre droite. Vous devez être accueilli par vos gousses comme de petits monstres roses. Appuyez sur CTRL pour tirer. Si le pistolet n'est pas votre truc, trichez avec idkfa et appuyez sur 5 pour une belle surprise. Pause le jeu avec ESC .
KubeDoom prend désormais également en charge la mort d'espaces de noms au cas où vous en auriez trop. Définissez simplement l'indicateur -mode sur namespaces :
$ docker run -p5901:5900
--net=host
-v ~/.kube:/root/.kube
--rm -it --name kubedoom
ghcr.io/storax/kubedoom:latest
-mode namespaces Voir l'exemple dans le répertoire /manifest . Vous pouvez le tester rapidement en utilisant Kind. Créez un cluster avec l'exemple de configuration de ce référentiel:
$ kind create cluster --config kind-config.yaml
Creating cluster "kind" ...
✓ Ensuring node image (kindest/node:v1.23.0) ?
✓ Preparing nodes ? ?
✓ Writing configuration
✓ Starting control-plane ?️
✓ Installing CNI ?
✓ Installing StorageClass ?
✓ Joining worker nodes ?
Set kubectl context to "kind-kind"
You can now use your cluster with:
kubectl cluster-info --context kind-kind
Not sure what to do next? ? Check out https://kind.sigs.k8s.io/docs/user/quick-start/Cela fera tourner un cluster de 2 nœuds à l'intérieur de Docker, avec le port 5900 exposé du nœud de travail. Ensuite, exécutez KubeDoom à l'intérieur du cluster en appliquant le manifeste fourni dans ce référentiel:
$ kubectl apply -k manifest/
namespace/kubedoom created
deployment.apps/kubedoom created
serviceaccount/kubedoom created
clusterrolebinding.rbac.authorization.k8s.io/kubedoom createdPour connecter Run:
$ vncviewer viewer localhost:5900KubeDoom nécessite un compte de service avec des autorisations pour répertorier tous les pods et les supprimer et utilise Kubectl 1.23.2.
Le référentiel contient un dockerfile pour construire l'image KubeDoom. Vous devez spécifier l'architecture de vos systèmes comme argument de construction TARGETARCH . Par exemple amd64 ou arm64 .
$ docker build --build-arg=TARGETARCH=amd64 -t kubedoom . Pour modifier le mot de passe VNC par défaut, utilisez --build-arg=VNCPASSWORD=differentpw .