kubectl命令

常用命令:

语法:kubectl 动作 资源类型 资源名称kubectl --help,执行kubectl命令需要有.kube/config文件存在。

kubectl create -f dir/ 创建整个目录下的文件

kubectl create -f nginx_pod.yaml 创建

kubectl delete pod|rc|svc|namespace all 删除

kubectl get all | pods -o wide --namespace defat 获取

kubectl describe pod test -o wide 查阅更多信息

kubectl get pod test -oyaml 以yaml格式查看

kubectl delete pod nginx 或者kubectl delete -f xxx.yaml 删除

kubectl delete pod test --force --grace-period=0 强制删除

kubectl apply -f nginx_pod.yaml 更新

kubectl explain pod 查看资源帮助

kubectl explain pod.kind|spec. 查看资源子项帮助

kubectl edit pod nginx 编辑pod nginx资源

kubectl create -f . 创建当前所有的资源

kubectl delete -f . 删除当前所有的资源

 

kubectl get namespaces

kubectl api-resources 查看所有的资源

kubectl run test --image=192.168.0.1:5000/nginx 启动并创建一个pod

kubectl exec -it test bash 进入pod里面

如果pod有2个容器,命令如下:

kubectl exec -it test2 -c nginx bash

kubectl exec -it test2 -c mysql bash

 ## 查看pod调度节点及pod_ip
 $ kubectl -n demo get pods -o wide
 ## 查看完整的yaml
 $ kubectl -n demo get po myblog -o yaml
 ## 查看pod的明细信息及事件
 $ kubectl -n demo describe pod myblog
 #进入Pod内的容器
 $ kubectl -n <namespace> exec <pod_name> -c <container_name> -ti /bin/sh
 ?
 #查看Pod内容器日志,显示标准或者错误输出日志
 $ kubectl -n <namespace> logs -f <pod_name> -c <container_name>

 

kubectl -n demo describe node slave1 查阅slave1的信息

kubectl -n demo get node --show-lables 获取所有节点的lable信息

kubectl -n demo get pods --show-lables 获取所有pod的lable信息

kubectl -n demo label node slave1 compoent=mysql 给节点slave1打MySQL的标签,用于区分节点挂载卷

kubectl -n demo get pods -w 动态观察,实时查看

kubectl -n demo top pod 查看pod的负载

kubectl top node 查看node的负载

kubectl rollout status deploy nginx 滚动查看deploy nginx的更新

kubectl rollout history deploy nginx 查看历史记录

kubectl rollout undo deploy nginx 回滚到上一个版本

kubectl rollout undo deploy nginx --to-revision=5 回滚到指定版本号为5的

kubectl scale --replicas=3 deploy nginx deployment 扩(缩)容为三

kubectl create -f nginx-sts.yaml 创建StatefulSet

kubectl get sts web -o yaml 查看StatefulSet

kubectl scale --replicas=3 sts web StatefulSet 扩(缩)容为三

kubectl autoscale deploy demo-nginx --cpu-percent=20 --min=2 --max=5 当CPU负载大于20%自动扩容,小于20%自动缩容。

kubectl get clusterrole view -oyaml > /tmp/view.yaml

kubectl get RoleBinding -A 查看所有namesapce的

kubectl get RoleBinding nginx-ing -n nginx-ing -oyaml 查看nginx-ing的 RoleBinding

kubectl get pod,svc,ingress 查看pod,service,ingress

如果把service和ingress都写进一个yaml文件,那需要3个-分隔。

kubectl get resourcequota -oyaml 显示资源限制

kubectl get LimitRange -oyaml 显示默认限制,适用于 Container,pod,pvc

kubectl describe pod test 查阅名为test的pod

kubectl get rc,rs 获取rc,rs的状态信息

kubectl describe rc 查阅rc的信息

kubectl describe rs 查阅rs的信息

kubectl get event -n demo 查看namespace为demo的事件信息

 

kubectl命令

上一篇:Mysql的变量一览


下一篇:Linux新手扫盲