#!@ENV_ABSOLUTE_PATH@ bash set -eufo pipefail command -v kubectl >/dev/null 2>&1 || { echo 'Please install kubectl'; exit 1; } USAGE="Usage: $(basename "$0") [-r|--reboot]" [ $# -eq 0 ] && { echo "$USAGE"; exit 1; } NODE_REBOOT=0 NODE_NAME=${1:-}; shift if [[ $# -gt 0 ]]; then if [[ "$1" =~ ^-r|--reboot$ ]]; then NODE_REBOOT=1; shift else echo "$USAGE"; exit 1 fi fi kubectl apply -f - <<-EOF > /dev/null --- apiVersion: v1 kind: Pod metadata: name: krash-${RANDOM} spec: containers: - name: krash image: alpine:latest securityContext: privileged: true command: - /bin/sh - -c - | sysctl -w kernel.panic=${NODE_REBOOT} echo 'c' > /proc/sysrq-trigger priorityClassName: system-node-critical nodeName: ${NODE_NAME} EOF