如何使用kubectl删除networkpolicies?

时间:2017-08-17 00:44:00

标签: nginx kubernetes kubectl

我已经按照类似于以下内容的Kubernetes教程进行了操作: https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/创建了一些基本的网络政策,如下所示:

root@server:~# kubectl get netpol -n policy-demo
NAME           POD-SELECTOR   AGE
access-nginx   run=nginx      49m
default-deny   <none>         50m

我看到我可以使用&#34; kubectl delete ns policy-demo&#34;这样的命令删除整个命名空间(包括pod),但是我无法看到我需要使用的命令只想删除一个策略(或甚至编辑它)。

我如何使用kubectl只删除&#34; access-nginx&#34;上面的政策?

2 个答案:

答案 0 :(得分:1)

这应该有效。类似的命令在我的最后工作。

kubectl -n policy-demo delete networkpolicy access-nginx

答案 1 :(得分:0)

  • 策略名称:access-nginx
  • 命名空间:默认
kubectl get netpol -n default
NAME           POD-SELECTOR   AGE
access-nginx   run=nginx      60m

  • 删除网络策略
kubectl delete networkpolicy access-nginx -n default

kubectl delete netpol access-nginx -n default

或-使用资源的文件名

kubectl delete -f access-nginx.yaml

  • 编辑网络政策

默认情况下,它将以yaml格式打开以进行编辑

kubectl edit netpol access-nginx -n default

或-如果您喜欢json格式

kubectl edit netpol access-nginx -n default -o json

或-使用资源的文件名

kubectl edit -f access-nginx.yaml

编辑器首选项:

KUBE_EDITOR='nano' kubectl edit netpol access-nginx -n default

或-vim

KUBE_EDITOR='vim' kubectl edit netpol access-nginx -n default

如果使用default命名空间,则不需要传递-n default,因为kubectldefault命名为默认命名空间。