k8s日常维护

 

1.删除Terminating状态的pod并重新添加

kubectl delete pod dashboard-metrics-scraper-5bf4c9f4b7-crmth -n kubernetes-dashboard --force ##强制删除

kubectl get deployment -n kubernetes-dashboard ##查看有那些deployment
kubectl scale deployment dashboard-metrics-scraper --replicas=2 -n kubernetes-dashboard ##添加副本数重新生成一个新的

 

2.查看具体某个pod的日志

kubectl logs my-release-milvus-datanode-7568696899-kkzr8

  

##################################k8s中pod重启方法###########################
1. 有yaml文件的重启方式

 

修改配置文件,将replicas: 1 改成 replicas: 0
重新应用
[root@node2 ~]#kubectl apply -f milvus_cluster_external_dependencies.yaml
[root@node2 ~]# kubectl get pods -n middleware
No resources found in middleware namespace.

再次将replicas: 0 改成 replicas: 1
[root@node2 ~]#kubectl apply -f milvus_cluster_external_dependencies.yaml
[root@node2 ~]# kubectl get pods -n middleware
NAME                                             READY   STATUS     RESTARTS   AGE
milvus-dev-milvus-datanode-655c67b87c-6vncq      0/1     Init:0/1   0          3s
milvus-dev-milvus-indexnode-6fd477c747-6bk2s     0/1     Init:0/1   0          3s
milvus-dev-milvus-mixcoord-7c5b6c679f-5x75x      0/1     Init:0/1   0          3s
milvus-dev-milvus-proxy-774744b4d9-zdm2k         0/1     Init:0/1   0          3s
milvus-dev-milvus-querynode-0-68c7b69d44-89j76   0/1     Init:0/1   0          3s

 

 

2. 没有yaml文件重启方式

 

2.1 使用scale命令

[root@node2 ~]# kubectl get deployment -n middleware
NAME                            READY   UP-TO-DATE   AVAILABLE   AGE
milvus-dev-milvus-datanode      1/1     1            1           2d23h
milvus-dev-milvus-indexnode     1/1     1            1           2d23h
milvus-dev-milvus-mixcoord      1/1     1            1           2d23h
milvus-dev-milvus-proxy         1/1     1            1           2d23h
milvus-dev-milvus-querynode-0   1/1     1            1           2d23h
milvus-dev-milvus-querynode-1   0/0     0            0           2d23h
milvus-dev-milvus-standalone    0/0     0            0           2d23h

 

 

kubectl scale --replicas=0 deployment milvus-dev-milvus-proxy -n middleware
kubectl scale --replicas=1 deployment milvus-dev-milvus-proxy -n middleware

 

 

 

 

2.2 直接删除重启
此方式只针对使用的deployment对象,并且重启策略为可以重启,则可以尝试删除重启
#kubectl delete replicaset {rs_name} -n {namespace}

 

kubectl delete pod milvus-dev-milvus-proxy-774744b4d9-flmkw -n middleware
删除后会自动生成一个新的

 

 

2.3 使用 "-o yaml"参数导出Pod模板并重建模板(推荐)
#kubectl get pod {podname} -n {namespace} -o yaml | kubectl replace --force -f -

 

2.4 Kubernetes 1.15开始才有
kubectl rollout restart deployment {pod} -n {namespace}

 

[root@yunwei-k8s-dev tmp]# kubectl get deployment -n middleware
NAME                            READY   UP-TO-DATE   AVAILABLE   AGE
elastic-exporter                1/1     1            1           69d
kibana                          1/1     1            1           262d
milvus-dev-milvus-datanode      1/1     1            1           239d
milvus-dev-milvus-indexnode     1/1     1            1           239d
milvus-dev-milvus-mixcoord      1/1     1            1           239d
milvus-dev-milvus-proxy         1/1     1            1           239d
milvus-dev-milvus-querynode-0   1/1     1            1           239d
milvus-dev-milvus-querynode-1   0/0     0            0           239d
milvus-dev-milvus-standalone    0/0     0            0           239d
vector                          1/1     1            1           261d



kubectl rollout restart deployment milvus-dev-milvus-querynode-1 -n middleware

 

 

 

 

 

 3.进入某个pod

kubectl exec -it milvus-dev-milvus-querynode-1-7cf497d649-wg8gn -n middleware -- /bin/sh

 

4.查看pod使用内存

[root@yunwei-k8s-master1-test ~]# kubectl top pod -n hxl|grep region
hxl-region-api-84f77b495d-s89c4                            9m           531Mi
hxl-region-core-f7b49fb54-lrmd7                            1951m        2908Mi

 

5.节点添加标签

节点添加标签
kubectl label nodes node1 k8s.kuboard.cn/role=etcd
节点删除标签(-)
kubectl label nodes node1 k8s.kuboard.cn/role-
查看标签
kubectl get node --show-labels

 

 

 

posted @ 2024-09-09 10:59  slnngk  阅读(54)  评论(0)    收藏  举报