7.4. 编辑网络策略
作为集群管理员,您可以编辑命名空间的现有网络策略。
7.4.1. 编辑网络策略
您可以编辑命名空间中的网络策略。
先决条件
-
集群使用支持
NetworkPolicy
对象的默认 CNI 网络供应商,如设置了mode: NetworkPolicy
的 OpenShift SDN 网络供应商。此模式是 OpenShift SDN 的默认模式。 -
已安装 OpenShift CLI(
oc
)。 -
使用具有
cluster-admin
权限的用户登陆到集群。
流程
可选:列出当前
NetworkPolicy 对象
。如果要列出特定命名空间中的策略对象,请输入以下命令。将
<namespace>
替换为一个项目的命名空间。$ oc get networkpolicy -n <namespace>
如果要列出整个集群的策略对象,请输入以下命令:
$ oc get networkpolicy --all-namespaces
编辑
NetworkPolicy
对象。如果您在文件中保存了网络策略定义,请编辑该文件并进行必要的更改,然后输入以下命令。将
<policy-file>
替换为包含对象定义的文件名称。$ oc apply -f <policy-file>.yaml
如果需要直接更新
NetworkPolicy
对象,可以输入以下命令。将<policy-name>
替换为NetworkPolicy
对象的名称,将<namespace>
替换为对象存在的项目的名称。$ oc edit <policy-name> -n <namespace>
确认
NetworkPolicy
对象已更新。将<namespace>
替换为对象存在的项目的名称。$ oc get networkpolicy -n <namespace> -o yaml
7.4.2. 示例 NetworkPolicy 对象
下文解释了示例 NetworkPolicy 对象:
kind: NetworkPolicy apiVersion: networking.k8s.io/v1 metadata: name: allow-27107 1 spec: podSelector: 2 matchLabels: app: mongodb ingress: - from: - podSelector: 3 matchLabels: app: app ports: 4 - protocol: TCP port: 27017