kubectl用于运行Kubernetes集群命令的管理工具。本文概述涵盖了kubectl语法,对命令操作的描述,并列举了常用命令。
Kubectl命令详细列表请查看:Kubernetes kubectl 命令表
语法
$ kubectl [command] [TYPE] [NAME] [flags]
- command:子命令,指定要在一个或多个资源执行的操作。
- TYPE:资源类型,指定资源类型Resource types。
- NAME:资源名称,指定Resource的Name。
- flags:命令参数
常用Kubectl命令
kubectl get – 输出一个/多个资源。
kubectl describe – 输出指定的一个/多个资源的详细信息。
kubectl logs – 输出pod中一个容器的日志。
kubectl create – 通过文件名或控制台输入,创建资源。
kubectl delete – 通过文件名、控制台输入、资源名或者label selector删除资源。
kubectl exec – 在容器内部执行命令。
kubectl run – 在集群中使用指定镜像启动容器。
kubectl annotate – 更新资源的注解。
kubectl api-versions – 以“组/版本”的格式输出服务端支持的API版本。
kubectl apply – 通过文件名或控制台输入,对资源进行配置。
kubectl attach – 连接到一个正在运行的容器。
kubectl autoscale – 对replication controller进行自动伸缩。
kubectl cluster-info – 输出集群信息。
kubectl config – 修改kubeconfig配置文件。
kubectl edit – 编辑服务端的资源。
kubectl expose – 输入replication controller,service或者pod,并将其暴露为新的kubernetes service。
kubectl label – 更新资源的label。
kubectl patch – 通过控制台输入更新资源中的字段。
kubectl port-forward – 将本地端口转发到Pod。
kubectl proxy – 为Kubernetes API server启动代理服务器。
kubectl replace – 通过文件名或控制台输入替换资源。
kubectl rolling-update – 对指定的replication controller执行滚动升级。
kubectl scale – 为replication controller设置新的副本数。
kubectl version – 输出服务端和客户端的版本信息。
命令行中输入kubectl --help后的结果如下图所示:
root:~# kubectl --help
kubectl controls the Kubernetes cluster manager.Find more information at: https://kubernetes.io/docs/reference/kubectl/overview/Basic Commands (Beginner):create Create a resource from a file or from stdin.expose Take a replication controller, service, deployment or pod and expose it as a new
Kubernetes Servicerun Run a particular image on the clusterset Set specific features on objectsBasic Commands (Intermediate):explain Documentation of resourcesget Display one or many resourcesedit Edit a resource on the serverdelete Delete resources by filenames, stdin, resources and names, or by resources and
label selectorDeploy Commands:rollout Manage the rollout of a resourcescale Set a new size for a Deployment, ReplicaSet, Replication Controller, or Jobautoscale Auto-scale a Deployment, ReplicaSet, or ReplicationControllerCluster Management Commands:certificate Modify certificate resources.cluster-info Display cluster infotop Display Resource (CPU/Memory/Storage) usage.cordon Mark node as unschedulableuncordon Mark node as schedulabledrain Drain node in preparation for maintenancetaint Update the taints on one or more nodesTroubleshooting and Debugging Commands:describe Show details of a specific resource or group of resourceslogs Print the logs for a container in a podattach Attach to a running containerexec Execute a command in a containerport-forward Forward one or more local ports to a podproxy Run a proxy to the Kubernetes API servercp Copy files and directories to and from containers.auth Inspect authorizationAdvanced Commands:diff Diff live version against would-be applied versionapply Apply a configuration to a resource by filename or stdinpatch Update field(s) of a resource using strategic merge patchreplace Replace a resource by filename or stdinwait Experimental: Wait for a specific condition on one or many resources.convert Convert config files between different API versionskustomize Build a kustomization target from a directory or a remote url.Settings Commands:label Update the labels on a resourceannotate Update the annotations on a resourcecompletion Output shell completion code for the specified shell (bash or zsh)Other Commands:api-resources Print the supported API resources on the serverapi-versions Print the supported API versions on the server, in the form of "group/version"config Modify kubeconfig filesplugin Provides utilities for interacting with plugins.version Print the client and server version informationUsage:kubectl [flags] [options]Use "kubectl <command> --help" for more information about a given command.
Use "kubectl options" for a list of global command-line options (applies to all commands).