随着K8s版本的变更,很多配置写法和命令发生着变化。下面收集一些常用的命令

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 在Master中检查集群的状态:
kubectl cluster-info
kubectl get cs
kubectl get pod  --all-namespaces
kubectl delete pod xxx # 删除pod
kubectl get nodes
kubectl get service
kubectl get serviceaccounts

kubectl get all -n kube-system 	 # 查看命名空间
# 输出service的配置编排文件
kubectl get service nginx -n nginx -o yaml
# 查看某个Pod详细
kubectl describe pod coredns-5dd5756b68-s2l2b -n kube-system 
# 查看Pod的标签
kubectl get pods -n web-nginx --show-labels
# 查看endpoints的IP和Port占用情况
kubectl get endpoints deploy-nginx -n web-nginx 
# 检查pod中监听的端口
kubectl exec -it <pod-name> -n web-nginx -- netstat -tuln |grep 80
# 监控某个Pod变化的日志
kubectl get pods --watch -l app=nginx
kubectl get pod -n namespace [pod_name] --watch

删除操作

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
# 删除pod
kubectl get pod
kubectl delete pod rss-site

# 删除服务,但是不会删除deployment和pod
kubectl get svc -n default
kubectl delete svc mysql -n default

# 删除replicationcontrollers,同时pod自动消亡
kubectl get replicationcontrollers 
kubectl delete replicationcontrollers mysql

# 删除deployment(删除后replicaset.apps 和 pod 自动就被删除了)
kubectl delete deployment.apps/nginx-1596365264-controller -n kube-system

# 删除 service
kubectl delete service/nginx-1596365264-controller -n kube-system

K8s中Pod的状态

1
2
3
4
5
Pending   # Pod已经被系统接收,准备下载镜像。
Running   # Pod已经分配到节点,并且所有容器已创建。至少有一个容器仍在运行、正在启动或重新启动。
Successed # Pod中的所有容器已成功终止,不会重新启动。
Failed	  # Pod中的所有容器已终止,并且至少有一个容器已经终止。即容器退出非零状态或被系统终止。
Unknown   # 无法获得Pod状态,通常是由于与Pod所在主机通信时出现错误。

(完)