• Home
  • LLMs
  • Python
  • Docker
  • Kubernetes
  • Java
  • Maven
  • All
  • About
Kubernetes | kubectl CLI (Command-Line Interface)
  1. kubectl CLI (Command-Line Interface)
  2. Usage
  3. Options
  4. Basic Commands
  5. Deploy Commands
  6. Cluster Management Commands
  7. Troubleshooting and Debugging Commands
  8. Advanced Commands
  9. Settings Commands
  10. Other Commands

  1. kubectl CLI (Command-Line Interface)
    kubectl controls the Kubernetes cluster manager.
    To list kubectl options and commands, type: kubectl --help
    To print information about a specific kubectl command, type: kubectl COMMAND --help
    To print the list of kubectl global command-line options (applies to all commands), type: kubectl options
  2. Usage
    Usage: kubectl [OPTIONS] COMMAND [ARG...]
  3. Options
    The following options can be passed to any command:
    $ kubectl options
    -n, --namespace='': If present, the namespace scope for this CLI request.
    
    -s, --server='': The address and port of the Kubernetes API server.
    
        --cluster='': The name of the kubeconfig cluster to use.
        --context='': The name of the kubeconfig context to use.
    
        --kubeconfig='': Path to the kubeconfig file to use for CLI requests.
    
        --skip-headers=false: If true, avoid header prefixes in the log messages.
        --skip-log-headers=false: If true, avoid headers when opening log files.
        --add-dir-header=false: If true, adds the file directory to the header.
    
        --log-file='': If non-empty, use this log file.
        --log-dir='': If non-empty, write log files in this directory.
        --log-file-max-size=1800: Defines the maximum size a log file can grow to. Unit is megabytes. If the value is 0, the maximum file size is unlimited.
        --log-flush-frequency=5s: Maximum number of seconds between log flushes.
        --logtostderr=true: log to standard error instead of files.
        --alsologtostderr=false: log to standard error as well as files.
        --log-backtrace-at=:0: when logging hits line file:N, emit a stack trace.
        --stderrthreshold=2: logs at or above this threshold go to stderr.
    -v, --v=0: number for the log level verbosity
    
        --request-timeout='0': The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests.
    
        --user='': The name of the kubeconfig user to use.
        --username='': Username for basic authentication to the API server.
        --password='': Password for basic authentication to the API server.
    
        --as='': Username to impersonate for the operation.
        --as-group=[]: Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
    
        --token='': Bearer token for authentication to the API server.
    
        --certificate-authority='': Path to a cert file for the certificate authority.
        --client-certificate='': Path to a client certificate file for TLS.
        --client-key='': Path to a client key file for TLS.
        --insecure-skip-tls-verify=false: If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure.
        --tls-server-name='': Server name to use for server certificate validation. If it is not provided, the hostname used to contact the server is used.
    
        --cache-dir='$HOME/.kube/http-cache': Default HTTP cache directory.
    
        --match-server-version=false: Require server version to match client version.
        --profile='none': Name of profile to capture. One of (none|cpu|heap|goroutine|threadcreate|block|mutex).
        --profile-output='profile.pprof': Name of the file to write the profile to.
        --vmodule=: comma-separated list of pattern=N settings for file-filtered logging.
  4. Basic Commands
    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.
    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.
  5. 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.
  6. Cluster Management Commands
    cluster-info  Display cluster info.
    top           Display Resource (CPU/Memory/Storage) usage.
    certificate   Modify certificate resources.
    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.
  7. 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.
  8. 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 using strategic merge patch.
    replace       Replace a resource by filename or stdin.
    wait          Experimental: Wait for a specific condition on one or many resources.
    convert       Convert config files between different API versions.
    kustomize     Build a kustomization target from a directory or a remote url.
  9. 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).
  10. Other Commands
    alpha         Commands for features in alpha.
    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.
© 2025  mtitek