kubectl 常用命令,欢迎大家补充其他常用的
kubectl 语法概述
$ kubectl [command] [TYPE] [NAME] [flags]
1 command 子命令,用于操作Kubernetes集群资源对象的命令,例如create、delete、describe、get、apply等
2 type 资源对象的类型,有以下这些
Pod、ReplicaSet、ReplicationController、Deployment、StatefulSet、DaemonSet、Job、CronJob、HorizontalPodAutoscaling、Node、Namespace、Service、Ingress、Label、CustomResourceDefinition
3 name 资源对象的名称,区分大小写。如果不指定名称,则系统将返回属于TYPE的全部对象的列表,例如$ kubectl get pods将返回所有Pod的列表(本博客中统一叫my-pod)
4 flags kubectl子命令的可选参数 -o yaml就是以yaml格式显示结果
kubectl get 系列命令
1 kubectl get services 列出当前命名空间下的所有 services
2 kubectl get pods 列出当前命名空间下的全部 Pods
3 kubectl get pods -o wide 列出当前命名空间下的全部 Pods,并显示更详细的信息,包括age,ip,node等
4 kubectl get pod my-pod -o yaml 获取一个 pod的配置文件,以yaml格式显示(也可以json格式)
kubectl describe 系列命令
1 kubectl describe nodes my-node 显示Node的详细信息
2 kubectl describe pods my-pod 显示Pod的详细信息
kubectl logs 系列命令
1 kubectl logs my-pod 获取 pod 日志(标准输出)
2 kubectl logs -f my-pod 流式输出 Pod 的日志 (-f 类似于tailf的作用)
kubectl exec 系列命令
1 kubectl exec -it my-pod bash 进入某个pod中
2 kubectl exec my-pod env 查看某个pod的环境变量