- Kubernetes 教程
- Kubernetes - 主页
- Kubernetes - 概览
- Kubernetes - 架构
- Kubernetes - 安装程序
- Kubernetes - 镜像
- Kubernetes - 作业
- Kubernetes - 标签和选择器
- Kubernetes - 命名空间
- Kubernetes - 节点
- Kubernetes - 服务
- Kubernetes - Pod
- Kubernetes - 复制控制器
- Kubernetes - 副本集
- Kubernetes - 部署
- Kubernetes - 卷
- Kubernetes - 密钥
- Kubernetes - 网络策略
- 高级 Kubernetes
- Kubernetes - API
- Kubernetes - Kubectl
- Kubernetes - Kubectl 命令
- Kubernetes - 创建应用程序
- Kubernetes - 应用部署
- Kubernetes - 自动扩缩
- Kubernetes - 仪表盘安装程序
- Kubernetes - 监控
- Kubernetes 实用资源
- Kubernetes - 快速指南
- Kubernetes - 实用资源
- Kubernetes - 讨论
Kubernetes - 网络策略
网络策略定义了同一命名空间中的 pod 如何相互通信以及网络端点。它要求在 API 服务器的运行时配置中启用 extensions/v1beta1/networkpolicies。其资源使用标签选择 pod,并定义除命名空间中定义的内容之外允许向特定 pod 传输流量的规则。
首先,我们需要配置命名空间隔离策略。基本上,负载平衡器需要这种网络策略。
kind: Namespace apiVersion: v1 metadata: annotations: net.beta.kubernetes.io/network-policy: | { "ingress": { "isolation": "DefaultDeny" } }
$ kubectl annotate ns <namespace> "net.beta.kubernetes.io/network-policy = {\"ingress\": {\"isolation\": \"DefaultDeny\"}}"
创建命名空间后,我们需要创建网络策略。
网络策略 Yaml
kind: NetworkPolicy apiVersion: extensions/v1beta1 metadata: name: allow-frontend namespace: myns spec: podSelector: matchLabels: role: backend ingress: - from: - podSelector: matchLabels: role: frontend ports: - protocol: TCP port: 6379
广告