Exercise 6.5: Testing the Policy
cat <<EOF | kubectl apply -f - apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: default spec: podSelector: {} policyTypes: - Ingress - Egress EOFcurl --connect-timeout 3 $(kubectl get pod -l app=nginx -o=jsonpath='{.items[0].status.podIP}')curl --connect-timeout 3 $(kubectl get svc nginx -o=jsonpath='{.spec.clusterIP}')echo "$(curl -s ifconfig.io):$(kubectl get service nginx -o=jsonpath='{.spec.ports[0].nodePort}')"kubectl exec -it deploy/nginx -- nc -vz www.google.com 80cat <<EOF | kubectl apply -f - apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: default spec: podSelector: {} policyTypes: - Ingress EOFkubectl exec -it deploy/nginx -- nc -vz www.google.com 80cat <<EOF | kubectl apply -f - apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: default spec: podSelector: {} policyTypes: - Ingress ingress: - from: - ipBlock: cidr: 192.168.0.0/16 EOFcurl --connect-timeout 3 $(kubectl get pod -l app=nginx -o=jsonpath='{.items[0].status.podIP}')curl --connect-timeout 3 $(kubectl get svc nginx -o=jsonpath='{.spec.clusterIP}')echo "$(curl -s ifconfig.io):$(kubectl get service nginx -o=jsonpath='{.spec.ports[0].nodePort}')"ping -c5 $(kubectl get pod -l app=nginx -o=jsonpath='{.items[0].status.podIP}')cat <<EOF | kubectl apply -f - apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: default spec: podSelector: {} policyTypes: - Ingress ingress: - from: - ipBlock: cidr: 192.168.0.0/16 ports: - port: 80 protocol: TCP EOFping -c5 $(kubectl get pod -l app=nginx -o=jsonpath='{.items[0].status.podIP}'){ kubectl delete networkpolicy default kubectl delete svc nginx kubectl delete deploy nginx }
Last updated