Kubernetes 网络隔离与资源管理
1. 隔离 Pod 网络
在多租户使用同一 Kubernetes 集群的场景中,每个租户可使用多个命名空间,且每个命名空间都有标签指定所属租户。例如,租户 Manning 的所有命名空间都带有 tenant: manning 标签。他们在其中一个命名空间运行了购物车微服务,该服务需对其所有命名空间中的 Pod 可用,但不希望其他租户访问。
为保障该微服务安全,可创建如下 NetworkPolicy 资源:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: shoppingcart-netpolicy
spec:
podSelector:
matchLabels:
app: shopping-cart
ingress:
- from:
- namespaceSelector:
matchLabels:
tenant: manning
ports:
- port: 80
此策略适用于标签为 app=shopping-cart 的 Pod,仅允许运行在标签为 tenant=manning 命名空间中的 Pod 访问该微服务。
若购物车服务提供商想让其他租户(如合作伙伴公司)也能访问,可创建额外的 NetworkPoli
订阅专栏 解锁全文
46



被折叠的 条评论
为什么被折叠?



