This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

DNS Outage Scenarios

    This scenario blocks all outgoing DNS traffic from a specific pod, effectively preventing it from resolving any hostnames or service names.

    How to Run DNS Outage Scenarios

    Choose your preferred method to run DNS outage scenarios:

    Example scenario file: dns_outage.yml

    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
    
    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
    
    krknctl run pod-network-filter \
     --chaos-duration 60 \
     --pod-name target-pod \
     --ingress false \
     --egress true \
     --protocols tcp,udp \
     --ports 53