我对使用 Kubernetes NetworkPolicy 来控制网络策略很感兴趣。我想知道 NetworkPolicy 是否阻止流量,以便我可以修复策略或修复/停止任何违规行为。
我们使用 Calico,他们将其视为付费功能。https://github.com/projectcalico/calico/issues/1035
纤毛有cilium monitor
它喜欢它的声音,如果我们开始使用纤毛会工作。
http://docs.cilium.io/en/latest/troubleshooting/
是否有一种通用的、供应商中立的方法来监控违反 Kuberenetes NetworkPolicy 的网络流量?
当使用Kubespray、CRI-O和Cilium部署集群时,我收到一个关于有多个 CRI 套接字可供选择的错误。
完全错误
fatal: [p3kubemaster1]: FAILED! => {"changed": true, "cmd": " mkdir -p /etc/kubernetes/external_kubeconfig && /usr/local/bin/kubeadm init phase kubeconfig admin --kubeconfig-dir /etc/kubernetes/external_kubeconfig --cert-dir /etc/kubernetes/ssl --apiserver-advertise-address 10.10.3.15 --apiserver-bind-port 6443 >/dev/null && cat /etc/kubernetes/external_kubeconfig/admin.conf && rm -rf /etc/kubernetes/external_kubeconfig ", "delta": "0:00:00.028808", "end": "2019-09-02 13:01:11.472480", "msg": "non-zero return code", "rc": 1, "start": "2019-09-02 13:01:11.443672", "stderr": "Found multiple CRI sockets, please use --cri-socket to select one: /var/run/dockershim.sock, /var/run/crio/crio.sock", "stderr_lines": ["Found multiple CRI sockets, please use --cri-socket to …
Run Code Online (Sandbox Code Playgroud) 我目前正在尝试将基于 calico 的集群迁移到新的 Dataplane V2,它基本上是托管的 Cilium 产品。对于本地测试,我运行安装了开源 cilium 的 k3d,并创建了一组 NetworkPolicies(k8s 原生策略,而不是 CiliumPolicies),它锁定所需的命名空间。
我当前的问题是,在 GKE 集群(启用了 DataPlane)上移植相同的策略时,这些相同的策略不起作用。
作为示例,让我们看一下某个应用程序和数据库之间的连接:
---
kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
name: db-server.db-client
namespace: BAR
spec:
podSelector:
matchLabels:
policy.ory.sh/db: server
policyTypes:
- Ingress
ingress:
- ports: []
from:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: FOO
podSelector:
matchLabels:
policy.ory.sh/db: client
---
kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
name: db-client.db-server
namespace: FOO
spec:
podSelector:
matchLabels:
policy.ory.sh/db: client
policyTypes:
- Egress
egress:
- ports:
- port: 26257
protocol: TCP
to:
- namespaceSelector:
matchLabels: …
Run Code Online (Sandbox Code Playgroud) google-cloud-platform kubernetes google-kubernetes-engine cilium kubernetes-networkpolicy