Hi @madhuakula 馃憢
I built a Ludus Ansible role that automates the deployment of Kubernetes Goat
on a Ludus cyber range VM using k3s and Helm.
What it does
- Installs k3s and Helm automatically
- Deploys all 22 Kubernetes Goat scenarios
- Applies k3s-specific fixes:
- Patches
health-check-deployment to use the k3s containerd socket
- Converts
hidden-in-layers and batch-check from Jobs to Deployments so they survive reboots
- Installs a cron job so port-forwards restart automatically after every reboot
- All scenarios accessible at
http://<VM_IP>:1230-1236 from any VM in the range
Usage
ludus:
- vm_name: "{{ range_id }}-k8s-goat"
template: debian-12-x64-server-template
ram_gb: 8
cpus: 4
linux: true
testing:
snapshot: false
block_internet: false
roles:
- bu5h-d.ludus_kubernetes_goat
Repo
https://github.com/bu5h-d/ludus_kubernetes_goat
Happy to contribute this back to the project if you'd like to add it
to the official Kubernetes Goat documentation under "How to run". 馃殌
Hi @madhuakula 馃憢
I built a Ludus Ansible role that automates the deployment of Kubernetes Goat
on a Ludus cyber range VM using k3s and Helm.
What it does
health-check-deploymentto use the k3s containerd sockethidden-in-layersandbatch-checkfrom Jobs to Deployments so they survive rebootshttp://<VM_IP>:1230-1236from any VM in the rangeUsage
Repo
https://github.com/bu5h-d/ludus_kubernetes_goat
Happy to contribute this back to the project if you'd like to add it
to the official Kubernetes Goat documentation under "How to run". 馃殌