KUBERNETES(1)(kubernetes)

πŸ’– KUBERNETES(1)(kubernetes) β€” the kubectl plugin page, but make it make sense πŸ’–

okay bestie, this is the manual page for kubectl plugin, and yes it's part of that big KUBERNETES(1)(kubernetes) manual family. Original author vibes: Eric Paris, way back in Jan 2015. We'll get to the whole credits situation at the bottom, stay with me 🫢


✨ NAME ✨

kubectl plugin β€” gives you the utilities for interacting with plugins, that's the whole job πŸ’…


🌸 SYNOPSIS 🌸

kubectl plugin [OPTIONS]

πŸ¦‹ DESCRIPTION πŸ¦‹

So like, kubectl plugin provides utilities for interacting with plugins. That's it, that's the description, no cap.

Plugins are how you get extended functionality that is not part of the major command-line distribution. So if you want to know how to write your own plugins, bestie, go read the documentation and the examples, they're literally right there for you πŸ“š

And the easiest way to discover and install plugins? It's through the kubernetes sub-project krew: [krew.sigs.k8s.io]. To install krew, visit https://krew.sigs.k8s.io/docs/user-guide/setup/install β€” go go go, it's giving essential ✨


πŸ‘‘ OPTIONS INHERITED FROM PARENT COMMANDS πŸ‘‘

these are the ones you didn't even ask for but they came free with the parent command, iconic behaviour fr fr

  • --as="" β€” the username to impersonate for the operation. And no, it doesn't have to be a whole person, it could be a regular user or a service account in a namespace πŸ‘€
  • --as-group=[] β€” the group to impersonate for the operation. You can repeat this flag to specify multiple groups, stack 'em up πŸŽ€
  • --as-uid="" β€” the UID to impersonate for the operation. yes, the UID itself, we're being specific.
  • --as-user-extra=[] β€” user extras to impersonate for the operation. Repeat this flag to specify multiple values for the same key, it's a whole key-value situation πŸ”‘
  • --cache-dir="/home/username/.kube/cache" β€” the default cache directory. that's the path, exactly as written, don't @ me.
  • --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.
  • --cluster="" β€” the name of the kubeconfig cluster to use.
  • --context="" β€” the name of the kubeconfig context to use.
  • --disable-compression=false β€” if true, you opt-out of response compression for all requests to the server. all of them. every single one.
  • --insecure-skip-tls-verify=false β€” if true, the server's certificate will not be checked for validity. > ⚠️ which means your HTTPS connections become insecure. read that again, bestie, this one is a real choice you're making 😭
  • --kubeconfig="" β€” path to the kubeconfig file to use for CLI requests.
  • --kuberc="" β€” path to the kuberc file to use for preferences. You can disable this by exporting the KUBECTL_KUBERC=false feature gate, or by turning off the feature with KUBERC=off. two whole ways to say no πŸ’€
  • --match-server-version=false β€” require the server version to match the client version. strict queen behaviour.
  • -n, --namespace="" β€” if present, the namespace scope for this CLI request.
  • --password="" β€” password for basic authentication to the API server.
  • --profile="none" β€” name of the profile to capture. One of (none|cpu|heap|goroutine|threadcreate|block|mutex|trace) β€” pick your fighter 🌈
  • --profile-output="profile.pprof" β€” name of the file to write the profile to.
  • --proxy-url="" β€” proxy URL to use for requests to the API server.
  • --request-timeout="0" β€” how long 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 β€” zero is the "we die like men, waiting forever" setting 🫑
  • -s, --server="" β€” the address and port of the Kubernetes API server.
  • --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.
  • --token="" β€” bearer token for authentication to the API server.
  • --user="" β€” the name of the kubeconfig user to use.
  • --username="" β€” username for basic authentication to the API server.
  • --version=false β€” --version, --version=raw prints version information and quits; --version=vX.Y.Z... sets the reported version. three modes, one flag, multitasking icon ⭐
  • --warnings-as-errors=false β€” treat warnings received from the server as errors and exit with a non-zero exit code. spicy but valid πŸ”₯

πŸ“ EXAMPLE πŸ“

here's the actual receipts, copy-paste ready, no edits:

# List all available plugins
kubectl plugin list

# List only binary names of available plugins without paths
kubectl plugin list --name-only

🧚 SEE ALSO 🧚

go read your friends, they're all linked up:


πŸ’œ HISTORY πŸ’œ

January 2015 β€” originally compiled by Eric Paris (eparis at redhat dot com), based on the kubernetes source material, but hopefully they have been automatically generated since! (their words, not mine, and honestly? relatable 😭)


and that's the whole page bestie, you ate it, go forth and plugin responsibly πŸ’–βœ¨

this was the Manuals / User flavour of KUBERNETES(1)(kubernetes), straight from the kubernetes source material, dated Jan 2015 with the rest of the Eric Paris-era credits β€” mwah, periodt πŸŽ€

πŸ“¦ where this page comes from