apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: api-dev-default-deny spec: podSelector: {} policyTypes: - Ingress - Egress --- apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: api-dev-allow-dns-egress spec: podSelector: {} policyTypes: - Egress egress: - to: - namespaceSelector: matchLabels: kubernetes.io/metadata.name: kube-system podSelector: matchLabels: k8s-app: kube-dns ports: - protocol: UDP port: 53 - protocol: TCP port: 53 --- apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: api-dev-allow-public-egress spec: podSelector: matchLabels: app: api-server policyTypes: - Egress egress: - to: - namespaceSelector: matchLabels: kubernetes.io/metadata.name: kube-system podSelector: matchLabels: app.kubernetes.io/name: traefik ports: - protocol: TCP port: 8000 --- apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: api-dev-allow-ingress-from-traefik spec: podSelector: matchLabels: app: api-server policyTypes: - Ingress ingress: - from: - namespaceSelector: matchLabels: kubernetes.io/metadata.name: kube-system podSelector: matchLabels: app.kubernetes.io/name: traefik ports: - protocol: TCP port: 8082