K8S 相关命令

总结:
1、想查看kubectl命令的方法:
kubectl help
kubectl <command> --help

常用的命令类  

kubectl describe pod podname -n namespace 描述类 

kubectl get pod -n namespace -o wide(或者yaml) 获得详情信息类

kubectl get pod 

kubectl get pod -o wide 

kubectl get sts  stsname

kubectl get deployment  deployname

kubectl get service servicename

kubectl get svc

kubectl get node

kubectl get  all -o wide  

kubectl get pod -n namespacename

kubectl get rs 

kubect get configmap

kubectl get endpoints 

kubectl get ns

 

 2、日志类命令:

kubectl logs pod-name 查看容器中输出的日志;
kubectl logs -f podname -c containername 跟踪查看下具体容器的日志,相当于是tail -f
kubectl exec pod-name cmd: ---在podname中执行cmd命令,该命令用‘’扩好;
kubectl exec pod-name -c containername 命令: ---在podname中的容器containername中执行命令;
kubectl exec -it common-1-controller-786c6c76dd-lqzc8 -c common-0 /bin/sh -n ns-2 进入pod common-1-controller-786c6c76dd-lqzc8内的容器common-0中,执行一些


查看pods中的容器:
kubectl describe pod  podname   -n ns-name |grep "Container ID" 

 

3、pods与containers的细微区别,docker和kubectl的区别
默认情况下,如果进程退出,pods是不会终止,相反,它会重新启动该进程。
这与docker run 配置--restart=always 选项有一个主要区别。要查看以前在Kubernetes中运行的输出,请运行如下:

$ docker run -d --restart=always -e DOMAIN=cluster --name nginx-app -p 80:80 nginx

$ kubectl run --image=nginx nginx-app --port=80 --env="DOMAIN=cluster"

我们可以使用上面创建的Deployment来暴露一个新的服务:
$ kubectl expose deployment nginx-app --port=80 --name=nginx-http

默认情况下镜像在后台运行,类似于docker run -d ...如果要在前台运行,请使用:
kubectl run [-i] [--tty] --attach <name> --image=<image>
要删除Deployment (及其pod),使用 kubectl delete deployment <name>

4、查看资源使用情况
kubectl top node
NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
10.1.241.159 1162m 7% 29846Mi 46%
10.1.241.160 1007m 6% 27369Mi 42%
10.1.241.161 937m 5% 34013Mi 52%

5、其他命令
kubectl top pod -n ns-name
 

   

kubectl get endpoints -n ns-yancheng

NAME ENDPOINTS AGE

 

posted @ 2022-01-22 16:55  jinzi  阅读(108)  评论(0编辑  收藏  举报