kubectl 常用命令

344 阅读1分钟

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的环境变量