Kubectl的一些命令

249 阅读1分钟

Kubectl的一些命令

Pod相关

# 创建pod资源
kubectl create -f pod.yaml
# 查看pods
kubectl get pods pod-test
# 查看pod描述
kubectl describe pod pod-test
# 替换资源
kubectl replace -f pod.yaml -force
# 删除资源
kubectl delete pod pod-test

Deployment相关

对象管理:
# 创建deployment资源
kubectl create -f nginx-deployment.yaml
# 查看deployment
kubectl get deploy
# 查看ReplicaSet
kubectl get rs
# 查看pods所有标签
kubectl get pods --show-labels
# 根据标签查看pods
kubectl get pods -l app=nginx
# 滚动更新镜像
kubectl set image deployment/nginx-deployment nginx=nginx:1.11
或者
kubectl edit deployment/nginx-deployment
或者
kubectl apply -f nginx-deployment.yaml
# 实时观察发布状态:
kubectl rollout status deployment/nginx-deployment
# 查看deployment历史修订版本
kubectl rollout history deployment/nginx-deployment
kubectl rollout history deployment/nginx-deployment --revision=3
# 回滚到以前版本
kubectl rollout undo deployment/nginx-deployment
kubectl rollout undo deployment/nginx-deployment --to-revision=3
# 扩容deployment的Pod副本数量
kubectl scale deployment nginx-deployment --replicas=10
# 设置启动扩容/缩容
kubectl autoscale deployment nginx-deployment --min=10 --max=15 --cpu-percent=80

标签相关

# 获取节点标签
kubectl get nodes --show-labels
# 给指定节点增加标签
kubectl label nodes 192.168.32.152 key=value
# 删除节点标签
kubectl label nodes 192.168.32.152 key-

常规用法总结

我想给node打标签怎么办
kubectl label nodes 192.168.32.152 key=value
我想给node删除标签怎么办
kubectl label nodes 192.168.32.152 key-
Pod不能正常调度了怎么排查
kubectl describe pod pod-test
如何查看一个node上有哪些Pod
kubectl get pod -o wide -n job-app | grep [nodeip]