Я настраиваю свое пространство имен по умолчанию в моем кластере kubernetes, чтобы разрешить входящий трафик от внешних узлов / хостов, но запретить любую возможную связь между модулями. У меня есть 2 модуля nginx, которые я хочу полностью изолировать внутри кластера. Оба модуля имеют службу типа nodePort, и они доступны извне.
Сначала я применяю следующую политику запрета сети по умолчанию:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default-deny
spec:
podSelector: {}
policyTypes:
- Ingress
Затем я пытаюсь разрешить внешний трафик. со следующей сетевой политикой:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-external
spec:
podSelector: {}
ingress:
- from:
- ipBlock:
cidr: 192.168.0.0/16
Но, к сожалению, я не могу получить доступ к сервису ни снаружи, ни внутри моего кластера.
Запуск примера в: - macOS High Sierra v10.13.6- minikube v1.5.2 -> с сетевым плагином = cilium - kubectl v1.16.2
Как я мог решить эту проблему?