This scenario blocks all outgoing DNS traffic from a specific pod, effectively preventing it from resolving any hostnames or service names.
This is the multi-page printable view of this section. Click here to print.
DNS Outage Scenarios
- 1: DNS Outage Scenarios using Krkn
- 2: DNS Outage Scenarios using Krkn-Hub
- 3: DNS Outage Scenario using Krknctl
1 - DNS Outage Scenarios using Krkn
Sample scenario config
- id: pod_network_filter
wait_duration: 0
test_duration: 60
label_selector: ''
service_account: ''
namespace: 'default'
instance_count: 1
execution: parallel
ingress: false
egress: true
target: <pod_name>
interfaces: []
ports: [53]
taints: []
protocols:
- tcp
- udp
image: quay.io/krkn-chaos/krkn-network-chaos:latest
How to Use Plugin Name
Add the plugin name to the list of chaos_scenarios section in the config/config.yaml file
kraken:
kubeconfig_path: ~/.kube/config # Path to kubeconfig
..
chaos_scenarios:
- network_chaos_ng_scenarios:
- scenarios/<scenario_name>.yaml
Run
python run_kraken.py --config config/config.yaml
2 - DNS Outage Scenarios using Krkn-Hub
podman run -v ~/.kube/config:/home/krkn/.kube/config:z -e TEST_DURATION="60" \
-e INGRESS="false" -e EGRESS="true" -e PROTOCOLS="tcp,udp" -e PORTS="53" \
-e POD_NAME="target-pod" quay.io/krkn-chaos/krkn-hub:pod-network-filter
3 - DNS Outage Scenario using Krknctl
krknctl run pod-network-filter \
--chaos-duration 60 \
--pod-name target-pod \
--ingress false \
--egress true \
--protocols tcp,udp \
--ports 53```