kubectl
kubectl controls the Kubernetes cluster manager.
Usage: kubectl [command] [TYPE] [NAME] [flags]
where command
, TYPE
, NAME
, and flags
are:
command
: Specifies the operation that you want to perform on one or more resources, for examplecreate
,get
,describe
,delete
.TYPE
: Specifies the resource type. Resource types are case-insensitive and you can specify the singular, plural, or abbreviated forms. For example, the following commands produce the same output:
kubectl get pod pod1
kubectl get pods pod1
kubectl get po pod1
NAME
: Specifies the name of the resource. Names are case-sensitive. If the name is omitted, details for all resources are displayed, for example:
kubectl get pod example-pod1
flags
: Specifies optional flags. For example, you can use the-s
or--server
flags to specify the address and port of the Kubernetes API server.
Note
Flags that you specify from the command line override default values and any corresponding environment variables.
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 Service.
run Run a particular image on the cluster.
set Set specific features on objects.
Basic Commands (Intermediate):
explain Documentation of resources.
get Display one or many resources.
edit Edit a resource on the server.
delete Delete resources by filenames, stdin,
resources and names, or by resources and
label selector.
Deploy Commands:
rollout Manage the rollout of a resource.
scale Set a new size for a Deployment, ReplicaSet
or Replication Controller.
autoscale Auto-scale a Deployment, ReplicaSet, or
ReplicationController.
Cluster Management Commands:
certificate Modify certificate resources.
cluster-info Display cluster info.
top Display Resource (CPU/Memory/Storage) usage.
cordon Mark node as unschedulable.
uncordon Mark node as schedulable.
drain Drain node in preparation for maintenance.
taint Update the taints on one or more nodes.
Troubleshooting and Debugging Commands:
describe Show details of a specific resource or group
of resources.
logs Print the logs for a container in a pod.
attach Attach to a running container.
exec Execute a command in a container.
port-forward Forward one or more local ports to a pod.
proxy Run a proxy to the Kubernetes API server.
cp Copy files and directories to and from
containers.
auth Inspect authorization.
debug Create debugging sessions for troubleshooting
workloads and nodes.
Advanced Commands:
diff Diff live version against would-be applied
version.
apply Apply a configuration to a resource by
filename or stdin.
patch Update field(s) of a resource.
replace Replace a resource by filename or stdin.
wait Experimental: Wait for a specific condition
on one or many resources.
kustomize Build a kustomization target from a directory
or a remote url.
Settings Commands:
label Update the labels on a resource.
annotate Update the annotations on a resource.
completion Output shell completion code for the
specified shell (bash or zsh).
Other Commands:
api-resources Print the supported API resources on the
server.
api-versions Print the supported API versions on the
server, in the form of"group/version".
config Modify kubeconfig files.
plugin Provides utilities for interacting with
plugins.
version Print the client and server version
information.