一、 获取列出一个或多个资源的信息。
1.可以使用的资源包括:
all
certificatesigningrequests (aka 'csr')
clusterrolebindings
clusterroles
clusters (valid only for federation apiservers)
componentstatuses (aka 'cs')
configmaps (aka 'cm')
controllerrevisions
cronjobs
daemonsets (aka 'ds')
deployments (aka 'deploy')
endpoints (aka 'ep')
events (aka 'ev')
horizontalpodautoscalers (aka 'hpa')
ingresses (aka 'ing')
jobs
limitranges (aka 'limits')
namespaces (aka 'ns')
networkpolicies (aka 'netpol')
nodes (aka 'no')
persistentvolumeclaims (aka 'pvc')
persistentvolumes (aka 'pv')
poddisruptionbudgets (aka 'pdb')
podpreset
pods (aka 'po')
podsecuritypolicies (aka 'psp')
podtemplates
replicasets (aka 'rs')
replicationcontrollers (aka 'rc')
resourcequotas (aka 'quota')
rolebindings
roles
secrets
serviceaccounts (aka 'sa')
services (aka 'svc')
statefulsets (缩写 sts)
storageclasses (缩写 sc)
thirdpartyresources
2.语法
$ get [(-o|--output=)json|yaml|wide|custom-columns=...|custom-columns-file=...|go-template=...|go-template-file=...|jsonpath=...|jsonpath-file=...] (TYPE [NAME | -l label] | TYPE/NAME ...) [flags]
3.其它可选参数
用不同的格式查看:
-o wide/yaml/json
看指定标签的pods,支持’=’, ‘==’, and ‘!=’操作符
-l key=value
4.示例
1.列出所有运行的Pod信息。
kubectl get pods
2.列出Pod以及运行Pod节点信息。(#加-o可以把node列出来,也就是pod在哪个节点上能列出来)
kubectl get pods -o wide
3.列出指定NAME的 replication controller信息。
kubectl get replicationcontroller web
4.以JSON格式输出一个pod信息。
kubectl get -o json pod web-pod-13je7
5.以“pod.yaml”配置文件中指定资源对象和名称输出JSON格式的Pod信息。
kubectl get -f pod.yaml -o json
6.返回指定pod的相位值。
kubectl get -o template pod/web-pod-13je7 --template={{.status.phase}}
7.列出所有replication controllers和service信息。
kubectl get rc,services
8.按其资源和名称列出相应信息。
kubectl get rc/web service/frontend pods/web-pod-13je7
9.列出所有不同的资源对象。
kubectl get all
10.查看ip和端口,也叫端点
kubectl get ep #获取service的endpoint信息
NAME ENDPOINTS AGE
kubernetes 192.168.100.3:6443 5h
serversvc 172.16.20.2:9999,172.16.49.2:9999 5h
5. Flags
Name | Shorthand | Default | Usage |
---|---|---|---|
all-namespaces | false | If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace. | |
allow-missing-template-keys | true | If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats. | |
experimental-use-openapi-print-columns | false | If true, use x-kubernetes-print-column metadata (if present) from openapi schema for displaying a resource. | |
export | false | If true, use ‘export’ for the resources. Exported resources are stripped of cluster-specific information. | |
filename | f | [] | Filename, directory, or URL to files identifying the resource to get from a server. |
ignore-not-found | false | Treat “resource not found” as a successful retrieval. | |
include-extended-apis | true | If true, include definitions of new APIs via calls to the API server. [default true] | |
label-columns | L | [] | Accepts a comma separated list of labels that are going to be presented as columns. Names are case-sensitive. You can also use multiple flag options like -L label1 -L label2… |
no-headers | false | When using the default or custom-column output format, don’t print headers (default print headers). | |
output | o | Output format. One of: json|yaml|wide|name|custom-columns=…|custom-columns-file=…|go-template=…|go-template-file=…|jsonpath=…|jsonpath-file=… See custom columns [http://kubernetes.io/docs/user-guide/kubectl-overview/#custom-columns], golang template [http://golang.org/pkg/text/template/#pkg-overview] and jsonpath template [http://kubernetes.io/docs/user-guide/jsonpath]. | |
output-version | DEPRECATED: To use a specific API version, fully-qualify the resource, version, and group (for example: ‘jobs.v1.batch/myjob’). | ||
raw | Raw URI to request from the server. Uses the transport specified by the kubeconfig file. | ||
recursive | R | false | Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory. |
schema-cache-dir | ~/.kube/schema | If non-empty, load/store cached API schemas in this directory, default is ‘$HOME/.kube/schema’ | |
selector | l | Selector (label query) to filter on, supports ‘=’, ‘==’, and ‘!=’. | |
show-all | a | false | When printing, show all resources (default hide terminated pods.) |
show-kind | false | If present, list the resource type for the requested object(s). | |
show-labels | false | When printing, show all labels as the last column (default hide labels column) | |
sort-by | If non-empty, sort list types using this field specification. The field specification is expressed as a JSONPath expression (e.g. ‘{.metadata.name}’). The field in the API resource specified by this JSONPath expression must be an integer or a string. | ||
template | Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview]. | ||
watch | w | false | After listing/getting the requested object, watch for changes. |
watch-only | false | Watch for changes to the requested object(s), without listing/getting first. |