Network Policy 说明

最近更新时间:2024-01-29 15:18:51

我的收藏

简介

组件介绍

Network Policy 是 Kubernetes 提供的一种资源,用于定义基于 Pod 的网络隔离策略。它描述了一组 Pod 是否可以与其他组 Pod,以及其他 Network Entities 进行通信。本组件提供了针对该资源的 Controller 实现。如果您希望在 IP 地址或端口层面(OSI 第3层或第4层)控制特定应用的网络流量,则可考虑使用本组件。

部署在集群内的 Kubernetes 对象

Kubernetes 对象名称
类型
请求资源
所属 Namespace
networkpolicy
DaemonSet
每个实例CPU:250m,Memory:250Mi
kube-system
networkpolicy
ClusterRole
-
kube-system
networkpolicy
ClusterRoleBinding
-
kube-system
networkpolicy
ServiceAccount
-
kube-system

组件权限说明

权限说明

该组件权限是当前功能实现的最小权限依赖。
需要获取集群内的 namespaces、pods、services、nodes、endpoints 和 networkpolicies,所以需要 list/get/watch 权限。

权限定义

kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: networkpolicy
rules:
- apiGroups:
- ""
resources:
- namespaces
- pods
- services
- nodes
- endpoints
verbs:
- list
- get
- watch
- apiGroups:
- "networking.k8s.io"
resources:
- networkpolicies
verbs:
- list
- get
- watch
- apiGroups:
- extensions
resources:
- networkpolicies
verbs:
- get
- list
- watch

操作步骤

1. 登录 容器服务控制台,在左侧导航栏中选择集群
2. 在集群列表中,单击目标集群 ID,进入集群详情页。
3. 选择左侧菜单栏中的组件管理,在组件管理页面单击新建
4. 新建组件管理页面中勾选 NetworkPolicy。NetworkPolicy 详细配置可参见 Network Policy 最佳实践
5. 单击完成即可创建组件。