kubernetes命令大全

状态查询 # 查看集群信息 kubectl cluster-infosystemctl status kube-apiserver systemctl status kubelet systemctl status kube-proxy systemctl status kube-scheduler systemctl status kube-controller-manager systemctl status docker node相关 # 查看namespaces kubectl get namespaces# 为节点增加lable kubectl label nodes 10.126.72.31 points=test# 查看节点和lable kubectl get nodes --show-labels# 查看状态 kubectl get componentstatuses# Node的隔离与恢复 ## 隔离 kubectl cordon k8s-node1## 恢复 kubectl uncordon k8s-node1 查询 # 查看nodes节点 kubectl get nodes# 通过yaml文件查询 kubectl get -f xxx-yaml/# 查询资源 kubectl get resourcequota# endpoints端 kubectl get endpoints# 查看pods# 查看指定空间`kube-system`的pods kubectl get po -n kube-system# 查看所有空间的 kubectl get pods -o wide --all-namespaces# 其他的写法 kubectl get pod -o wide --namespace=kube-system# 获取svc kubectl get svc --all-namespaces# 其他写法 kubectl get services --all-namespaces# 通过lable查询 kubectl get pods -l app=nginx -o yaml|grep podIP# 当我们发现一个pod迟迟无法创建时,描述一个pods kubectl describe pod xxx# 查询事件 kubectl get events --all-namespaces 删除所有pod # 删除所有pods kubectl delete pods --all# 删除所有包含某个lable的pod和serivce kubectl delete pods,services -l name=# 删除ui server,然后重建 kubectl delete deployments kubernetes-dashboard --namespace=kube-system kubectl delete services kubernetes-dashboard --namespace=kube-system# 强制删除部署 kubectl delete deployment kafka-1# 删除rc kubectl delete rs --all && kubectl delete rc --all## 强制删除Terminating状态的pod kubectl delete deployment kafka-1 --grace-period=0 --force 滚动 # 升级 kubectl apply -f xxx.yaml --record# 回滚 kubectl rollout undo deployment javademo# 查看滚动升级记录 kubectl rollout history deployment {名称} 查看日志 # 查看指定镜像的日志 kubectl logs -f kube-dns-699984412-vz1q6 -n kube-systemkubectl logs --tail=10 nginx#指定其中一个查看日志 kubectl logs kube-dns-699984412-n5zkz -c kubedns --namespace=kube-system kubectl logs kube-dns-699984412-vz1q6 -c dnsmasq --namespace=kube-system kubectl logs kube-dns-699984412-mqb14 -c sidecar --namespace=kube-system# 看日志 journalctl -f# 查看服务启动运行日志 sudo journalctl -f -u kube-scheduler.service service kube-scheduler status -l -f# 以yaml格式查看报错 kubectl -n kube-system get pod kube-apiserver-ha-proxy-k8s-node-1 -o yaml 扩展 # 扩展副本 kubectl scale rc xxxx --replicas=3 kubectl scale rc mysql --replicas=1 kubectl scale --replicas=3 -f foo.yaml 执行 # 启动 nohup kubectl proxy --address='10.1.70.247' --port=8001 --accept-hosts='^*$' >/dev/null 2>&1 &# 进入镜像 kubectl exec kube-dns-699984412-vz1q6 -n kube-system -c kubedns ifconfig kubectl exec kube-dns-699984412-vz1q6 -n kube-system -c kubedns ifconfig /bin/bash# 执行镜像内命令 kubectl exec kube-dns-4140740281-pfjhr -c etcd --namespace=kube-system etcdctl get /skydns/local/cluster/default/redis-master 无限循环命令 while true; do sleep 1; done 资源管理 # 暂停资源更新(资源变更不会生效) kubectl rollout pause deployment xxx# 恢复资源更新 kubectl rollout resume deployment xxx# 设置内存、cpu限制 kubectl set resources deployment xxx -c=xxx --limits=cpu=200m,memory=512Mi --requests=cpu=1m,memory=1Mi# 设置storageclass为默认 kubectl patch storageclass -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}' 其他 # 创建和删除 kubectl create -f dashboard-controller.yaml kubectl delete -f dashboard-dashboard.yaml# 查看指定pods的环境变量 kubectl exec xxx env# 判断dns是否通 kubectl exec busybox -- nslookup kube-dns.kube-system# kube-proxy状态 systemctl status kube-proxy -l# token的 kubectl get serviceaccount/kube-dns --namespace=kube-system -o yaml|grep token# status 总结:CrashLoopBackOff: 容器退出,kubelet正在将它重启 InvalidImageName: 无法解析镜像名称 ImageInspectError: 无法校验镜像 ErrImageNeverPull: 策略禁止拉取镜像 ImagePullBackOff: 正在重试拉取 RegistryUnavailable: 连接不到镜像中心 ErrImagePull: 通用的拉取镜像出错 CreateContainerConfigError: 不能创建kubelet使用的容器配置 CreateContainerError: 创建容器失败 m.internalLifecycle.PreStartContainer 执行hook报错 RunContainerError: 启动容器失败 PostStartHookError: 执行hook报错 ContainersNotInitialized: 容器没有初始化完毕 ContainersNotReady: 容器没有准备完毕 ContainerCreating:容器创建中 PodInitializing:pod 初始化中 pending : 待定 (检查一下资源是否超额 比如:cpu,memory)Terminating:终止 (检查那个节点挂掉了)DockerDaemonNotReady:docker还没有完全启动 NetworkPluginNotReady: 网络插件还没有完全启动 Evicted:即驱赶的意思,意思是当节点出现异常时,kubernetes将有相应的机制驱赶该节点上的Pod。 多见于资源不足时导致的驱赶。

    推荐阅读