kubectl get常用命令
一、命令格式
kubectl get 资源名称
二、支持的资源名称如下
- all
- certificatesigningrequests (可简写为"csr")
- clusterrolebindings
- clusterrol
- componentstatuses (可简写为"cs")
- configmaps (可简写为"cm")
- controllerrevisions
- cronjobs
- customresourcedefinition (可简写为"crd")
- daemonsets (可简写为"ds")
- deployments (可简写为"deploy")
- endpoints (可简写为"ep")
- events (可简写为"ev")
- horizontalpodautoscalers (aka ‘hpa’)
- ingresses (可简写为"ing")
- jobs
- limitranges (可简写为"limits")
- namespaces (可简写为"ns")
- networkpolicies (可简写为"netpol")
- nodes (可简写为"no")
- persistentvolumeclaims (可简写为"pvc")
- persistentvolumes (可简写为"pv")
- poddisruptionbudgets (可简写为"pdb")
- podpreset
- pods (可简写为"po")
- podsecuritypolicies (可简写为"psp")
- podtemplates
- replicasets (可简写为"rs")
- replicationcontrollers (可简写为"rc")
- resourcequotas (可简写为"quota")
- rolebindings
- roles
- secrets
- serviceaccounts (可简写为"sa")
- services (可简写为"svc")
- statefulsets (可简写为"sts")
- storageclasses (可简写为"sc")
三、可选参数
点击查看代码
# 使用不同的格式查看
-o wide/yaml/json
点击查看代码
# 查看指定标签的pods,支持’=’, ‘==’, and ‘!=’操作符
-l key=value
点击查看代码
# 查看指定的命名空间
-n 命名空间
-A 所有命名空间
四、 示例
# 查看Master状态
kubectl get componentstatuses
# 查看所有命名空间
kubectl get namespace
# 列出所有的pods
kubectl get pods -A
# 显示更多的pods列表信息(例如 pod的ip和所处的node)
kubectl get pods -o wide
# 列出名字为mysql-default-0的rc
kubectl get replicationcontroller mysql-default-0
# 获取名字为mysql-default-0的pod的信息,并以json格式输出
kubectl get -o json pod mysql-default-0
# 根据pod文件查找pod,并以json格式输出
kubectl get -f pod.yaml -o json
# 获取pod容器的状态
kubectl get -o template pod/mysql-default-0 --template {{.status.phase}}
# 同时获取所有的rc和service
kubectl get rc,services
# 获取符合条件的所有rc,svc,pod
kubectl get rc/web service/frontend pods/mysql-default-0
# 获取指定命名空间的cm
kubectl get cm -n namespace
# 编辑指定的cm
kubectl edit cm -n namespace cm名称
# 获取指定命名空间的deploy
kubectl get deploy -n namespace
# 编辑指定的deploy
kubectl edit deploy -n namespace deploy名称
# 获取指定命名空间的secrets
kubectl get secrets -n namespace
# 编辑指定的secrets
kubectl edit secrets -n namespace secret名称
# 获取所有resource
kubectl get all
Email:lizhaoyong94@163.com