Chr*_*ski 16 google-cloud-platform kubernetes
我已经创建了一个Kubernetes部署.但是,似乎还有其他pod正在运行 - 我希望能够删除不必要的pod.
我认为没有必要运行仪表板容器.我想删除它以释放CPU资源.
如何禁用此容器启动?最好来自部署配置.
基本上是以下pod:
kubectl get pods --all-namespaces | grep "dashboard"
kube-system kubernetes-dashboard-490794276-sb6qs 1/1 Running 1 3d
Run Code Online (Sandbox Code Playgroud)
附加信息:
产量kubectl --namespace kube-system get deployment:
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
heapster-v1.3.0 1 1 1 1 3d
kube-dns 2 2 2 2 3d
kube-dns-autoscaler 1 1 1 1 3d
kubernetes-dashboard 1 1 1 1 11m
l7-default-backend 1 1 1 1 3d
Run Code Online (Sandbox Code Playgroud)
产量kubectl --namespace kube-system get rs:
NAME DESIRED CURRENT READY AGE
heapster-v1.3.0-191291410 1 1 1 3d
heapster-v1.3.0-3272732411 0 0 0 3d
heapster-v1.3.0-3742215525 0 0 0 3d
kube-dns-1829567597 2 2 2 3d
kube-dns-autoscaler-2501648610 1 1 1 3d
kubernetes-dashboard-490794276 1 1 1 12m
l7-default-backend-3574702981 1 1 1 3d
Run Code Online (Sandbox Code Playgroud)
fre*_*dev 29
要清除删除,您必须删除大量对象,只需尝试执行此操作即可查看它们的数量:
kubectl get secret,sa,role,rolebinding,services,deployments --namespace=kube-system | grep dashboard
Run Code Online (Sandbox Code Playgroud)
在撰写删除所有内容时,我这样做了:
kubectl delete deployment kubernetes-dashboard --namespace=kube-system
kubectl delete service kubernetes-dashboard --namespace=kube-system
kubectl delete role kubernetes-dashboard-minimal --namespace=kube-system
kubectl delete rolebinding kubernetes-dashboard-minimal --namespace=kube-system
kubectl delete sa kubernetes-dashboard --namespace=kube-system
kubectl delete secret kubernetes-dashboard-certs --namespace=kube-system
kubectl delete secret kubernetes-dashboard-key-holder --namespace=kube-system
Run Code Online (Sandbox Code Playgroud)
Zst*_*ack 24
这些答案都不适合我,因为每个答案都假设命名空间是kube-system,这并不总是正确的。因此,您需要首先查看名称空间:
$ kubectl get deployments -A
NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE
default nginx-deployment 3/3 3 3 39m
kube-system coredns 2/2 2 2 93m
kubernetes-dashboard dashboard-metrics-scraper 1/1 1 1 12m
kubernetes-dashboard kubernetes-dashboard 1/1 1 1 12m
Run Code Online (Sandbox Code Playgroud)
您可以从第一列 (NAMESPACE) 中看到:
$ kubectl delete deployment kubernetes-dashboard --namespace=kubernetes-dashboard
$ kubectl delete deployment dashboard-metrics-scraper --namespace=kubernetes-dashboard
Run Code Online (Sandbox Code Playgroud)
对服务(如果有)执行相同的操作:
$kubectl get service -A
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 102m
default nginx-service NodePort 10.96.31.151 <none> 80:31634/TCP 49m
kube-system kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 102m
kubernetes-dashboard dashboard-metrics-scraper ClusterIP 10.102.22.35 <none> 8000/TCP 22m
Run Code Online (Sandbox Code Playgroud)
然后删除任何仪表板服务:
$ kubectl delete service kubernetes-dashboard --namespace=kubernetes-dashboard
$ kubectl delete service dashboard-metrics-scraper --namespace=kubernetes-dashboard
Run Code Online (Sandbox Code Playgroud)
最后是服务帐户和机密:
$ kubectl delete sa kubernetes-dashboard --namespace=kubernetes-dashboard
$ kubectl delete secret kubernetes-dashboard-certs --namespace=kubernetes-dashboard
$ kubectl delete secret kubernetes-dashboard-key-holder --namespace=kubernetes-dashboard
Run Code Online (Sandbox Code Playgroud)
Rad*_*nka 11
简单地说,kubectl --namespace kube-system delete deployment kubernetes-dashboard您的群集中不再有仪表板
使用标签选择器:
kubectl --namespace=kube-system delete deployment,service,role,rolebinding,sa,secret -l k8s-app=kubernetes-dashboard
Run Code Online (Sandbox Code Playgroud)
如前所述,您可以删除部署以删除也运行此命令的Pod:
kubectl delete deployment kubernetes-dashboard --namespace=kube-system
Run Code Online (Sandbox Code Playgroud)
但是,如果您想清理所有与仪表板相关的内容,则只需执行基于Kubernetes官方手册中的delete命令K8s集群文件:
kubectl delete -f https://raw.githubusercontent.com/kubernetes/dashboard/master/aio/deploy/recommended/kubernetes-dashboard.yaml
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22606 次 |
| 最近记录: |