Git Product home page Git Product logo

awesome-kubectl-plugins's Introduction

awesome-kubectl-plugins Awesome PRs Welcome

A curated list of awesome kubectl plugins inspired by the awesome list.

If you see a link that isn't a good fit, you can fix it by submitting a pull request to help improve the list. Likewise, if you'd like to add or fix something, click the README.md file to edit and submit a pull request. Thank you!

What are kubectl plugins?

Since version 1.12, kubectl includes a plugin mechanism that allows you to extend kubectl with custom commands. Extending kubectl with plugins greatly enhances the productivity while using the CLI.

Contents

Package Manager ๐Ÿ“ฆ

Resources

Blog Posts

Use awesome-kubectl-plugins as a Custom Index via Krew

A notable feature custom index was added in krew's v0.4.0 release. This means you can now use custom indexes of your own to install the plugins via krew.

Was you plugin not accepted in default krew-index due to some reasons? No issues, you can still use that plugin manifest in your custom index and install it via krew.

Now, awesome-kubectl-plugins is not just a list of awesome kubectl plugins (without any centralised control), you can actually use this to add your own plugins like you did for krew-index and install them locally. ๐Ÿš€

Note: This does not mean you can install plugins without a valid plugins.yaml for your plugin. You still need to have a plugin manifest.

How to add your plugin to awesome-kubectl-plugins

  • Add your plugin's name, description and category to the below kubectl Plugins list.
  • Add plugin-name.yaml manifest to ./plugins directory.
  • And, you're done.

Installing plugins via awesome-kubectl-plugins

  • Add the custom index to krew:
    $ kubectl krew index add awesome-kubectl-plugins https://github.com/ishantanu/awesome-kubectl-plugins.git
    
  • Install a plugin from the custom index by running:
    kubectl krew install awesome-kubectl-plugins/access-matrix
    

kubectl Plugins

No. Plugin Description Category
1 rakkess Review Access - kubectl plugin to show an access matrix for k8s server resources RBAC
2 kubectl-who-can Show who has RBAC permissions to perform actions on different resources in Kubernetes RBAC
3 kubectl-lint A kubectl plugin to perform linting Linting
4 kubectl-neat Clean up Kuberntes yaml and json output to make it readable Linting
5 ksort Sort manifest files in a proper order by Kind Linting
6 kubectl-debug Debug your pod by a new container with every troubleshooting tools pre-installed Debugging
7 kube-profefe continuous profiling made easy in Kubernetes with profefe Debugging
8 ksniff Kubectl plugin to ease sniffing on kubernetes pods using tcpdump and wireshark Networking
9 kubectl-swiftnp A kubectl plugin for rendering details of Network Policies. Networking
10 kubectl-trace Schedule bpftrace programs on your kubernetes cluster using the kubectl Networking
11 kubectl-capture A kubectl plugin which triggers a Sysdig capture https://sysdig.com/opensource/inspect/ Networking
12 kubectl-plugin-pvc A simple kubectl binary plugin for PVC operations Storage
13 kubectl-dfi List and show disk resources of images on Kubernetes nodes. Storage
14 kubectl-unbound-pvc List and show disk resources of images on Kubernetes nodes. Storage
15 kubectl-df-pv giving admins df (disk free) like utility for persistent volumes Storage
16 kubectl-sudo Run kubernetes commands with the security privileges of another user Security
17 outdated Find and report outdated images running in a Kubernetes cluster Security
18 kubectl-kubesec Security risk analysis for Kubernetes resources https://kubesec.io Security
19 kubectl-enter Exec into node via kubectl Exec
20 kubectl-cssh A kubectl plugin to ssh into Kubernetes nodes within separate tmux panes Exec
21 kubectl-iexec Kubectl plugin to interactively exec into a pod Exec
22 kubectl-ssh A kubectl plugin to ssh into a pod's node Exec
23 kubectl-kcn A script and kubectl plugin which makes it easier to ssh into nodes within your cluster. Exec
24 duyguserbest kubectl-iexec A script and kubectl plugin which makes it easier to ssh into nodes within your cluster. Exec
25 kubectl-exec-all kubectl plugin to execute a command in all running pods of a resource. Exec
26 kubectl-nsenter Simple kubectl plugin to take pod name, SSH onto node and spawn an nsenter shell Exec
27 kvaps kubectl-ssh Tiny plugin for connecting to node in the cluster over SSH Exec
28 kubectl-warp Kubernetes CLI plugin for syncing and executing local files in Pod on Kubernetes Exec
29 kubectl-plugin-ssh-jump A kubectl plugin to SSH into Kubernetes nodes using a SSH jump host Pod Exec
30 kubectl-texec Attach to the pod matching the label with Tmux Exec
31 kubectl-dig Deep kubernetes visibility from the kubectl Visibility
32 kubectl-utility Utility tool for observing k8s resources. Visibility
33 kubectl-graph A kubectl plugin to visualize Kubernetes resources and relationships. Visibility
34 kubectl-tree A kubectl plugin to browse Kubernetes object hierarchies as a tree Visibility
35 kubectl-topology A kubectl plugin that provides insight into the topology of a Kubernetes cluster. Visibility
36 Pod-Dive A kubectl plugin to dive into your Kubernetes nodes pods, and inspect them. Visibility
37 kubectl-dashboard Instantly get a Kubernetes dashboard Visibility
38 kubelogin kubectl plugin for Kubernetes OpenID Connect authentication (kubectl oidc-login) Authn/Authz
39 k8s-pixy-auth k8s plugin to authenticate against an OIDC compatible issuer using PKCE (pixy) flow Authn/Authz
40 kubectl-login Kubectl plugin for re-authenticate into OpenID Connect Provider via CLI Authn/Authz
41 zjj2wry kubectl-login The kubectl plugin is used to login to the kubernetes cluster by oidc authentication. Authn/Authz
42 kubectl-pass kubectl plugin for integration with pass (the standard unix password manager) Authn/Authz
43 kubectl-ssm-secret A kubectl plugin to allow import/export of kubernetes secrets to/from AWS SSM Parameter Store path. Secrets
44 kubectl-decode-secret A kubectl plugin to decode Kubernetes secrets Secrets
45 kubectl-gopass Plugin for kubectl to support reading and writing secrets directly from/to gopass Secrets
46 kubectl-modify-secret kubectl-modify-secrets allows user to directly modify the secret without worrying about base64 encoding/decoding Secrets
47 weibeld kubectl-ctx A kubectl plugin for interactively changing the kubeconfig context Context/Namespace Switching
48 weibeld kubectl-ns A kubectl plugin for interactively switching between namespaces in your cluster Context/Namespace Switching
49 postfinance kubectl-ctx Simple kubectl plugin to display/switch contexts Context/Namespace Switching
50 kubectl-select-context light kubectl plugin that prompts user to select config context Context/Namespace Switching
51 kubectl-use Plugin for simple switch kubernetes contexts and namespaces Context/Namespace Switching
52 kubectx Switch faster between clusters and namespaces in kubectl https://kubectx.dev Context/Namespace Switching
53 kubectl-ns Simple kubectl plugin to display/switch namespaces Context/Namespace Switching
54 kubectl-use Plugin for simple switch kubernetes contexts and namespaces Context/Namespace Switching
55 kubectl-switch Kubernetes multi-cluster command-line management tool Context/Namespace Switching
56 caas-one kubectl-switch Kubernetes multi-cluster command-line management tool Context/Namespace Switching
57 juanvallejo kubectl-ns Quickly view or change the current namespace via kubectl Context/Namespace Switching
58 km EKS MFA kubeconfig management tool. Thin wrapper for kubectl. Context/Namespace Switching
59 ketall Like kubectl get all, but get really all resources Resource CRUDs
60 kubectl-grep Filter Kubernetes resources by matching their names Resource CRUDs
61 kubectl-all kubectl plugin to list all resources in given namespace Resource CRUDs
62 kubectl-watch Watches Kubernetes resources Resource CRUDs
63 kubectl-custom-cols a kubectl plugin that help you customize output columns like a boss ! Resource CRUDs
64 kubepod Search pods faster in kubectl Resource CRUDs
65 kubectl-resources Plugin to access Kubernetes resource requests, limits, and usage. Resource CRUDs
66 kubectl-free Show various requested resources on Kubernetes nodes Resource CRUDs
67 kubectl-match-name regex matching for resource names Resource CRUDs
68 kubectl-eksporter A simple Ruby-script to export k8s resources Resource CRUDs
69 kube-capacity A simple CLI that provides an overview of the resource requests, limits, and utilization in a Kubernetes cluster Resource CRUDs
70 kubectl-rotate-pods kubectl plugin to easily restart all pods of a deployment Resource CRUDs
71 kubectl-terminate kubectl-terminate, a kubectl plugin to remove finalizers and finally delete k8s resources Resource CRUDs
72 kubectl-extension-versions Filter Kubernetes resources by matching their names Controller/Operator
73 kudo A kubectl plugin to use kudo via kubectl CLI Controller/Operator
74 ipick A kubectl wrapper for interactive resource selection Controller/Operator
75 kubectl-tmux-logs A kubectl plugin to display container logs within separate tmux panes Logging
76 kubectl-clogs kubectl plugin to follow logs of multiple running pods Logging
77 kubectl-mtail Kubectl helper to get logs from multiple pods Logging
78 kubectl-open-svc-plugin kubectl open-svc plugin makes services accessible via their ClusterIP from outside your cluster Uncategorized
79 kubectl-doctor k8s cluster triage plugin - scan your cluster for anomalies (brew doctor equivalent) Uncategorized
80 kubectl-view-serviceaccount-kubeconfig-plugin A kubectl plugin that show a kubeconfig to access the apiserver with a specified serviceaccount. Uncategorized
81 unfork Kubectl plugin to find forked Helm Charts and other K8s resources and unfork them https://www.unfork.io Uncategorized
82 kubectl-config-merge A kubectl plugin for merging multiple kubeconfig files. A cli-runtime example. Uncategorized
83 konfig konfig helps to merge, split or import kubeconfig files Uncategorized
84 kubectlsafe Safe operations in kubectl with plugin kubectlsafe Uncategorized
85 kubectl-rainbow Simple binary to colorize output. Uncategorized
86 kubectl-ansible An ansible dynamic inventory plugin for kubernetes cluster nodes Uncategorized
87 kubectl-server-version A kubectl plugin for rendering the Kubernetes server version. Uncategorized
88 kubectl-config-cleanup A kubectl plugin for automatically cleaning up your kubeconfig Uncategorized
89 kubectl-gitlab-bootstrap Quickly add a Kubernetes cluster to a GitLab project Uncategorized
90 kubectl-captain kubectl plugin for captain Uncategorized
91 kubectl preflight Preflight Checks and Support Bundles Framework for Kubernetes Applications https://troubleshoot.sh Uncategorized
92 kubectl support-bundle Preflight Checks and Support Bundles Framework for Kubernetes Applications https://troubleshoot.sh Uncategorized
93 kubectl-virt-plugin Holds all scripts to create packages and manifest file required for publishing the virtctl binary as a krew package for kubectl. Uncategorized
94 kcf A CLI tool providing you with status & configuration of a Kubernetes cluster fleet Uncategorized
95 kubepug Kubernetes PreUpGrade (Checker) Uncategorized
96 kubectl view-secret Decode Kubernetes secrets Secrets
97 kubectl-cilium A kubectl plugin for interacting with Cilium. Networking
98 kubectl-carbonetes-scan Integrates container analysis directly into your cluster. Container Security
99 kubectl-cyclonus Analyze, explain, and probe network policies. Networking
100 kubectl-view-webhook Visualize your webhook configurations Visibility
101 kubectl-translate Helps migrate your app to run on Kubernetes. Generates K8s yamls, Helm chart, Operator, CI/CD pipeline, Kustomize overlays, etc. Migration
102 kubectl-datree Scan resources within your cluster for misconfigurations Misconfiguration Detection
103 kubectl-irsa Check the IAM capabilities of the serviceaccounts via AWS PolicySimulator Security

Collection of kubectl plugins

awesome-kubectl-plugins's People

Contributors

bencelmontiague avatar bmcustodio avatar carbonetes avatar dentrax avatar elsesiy avatar emirozer avatar hadar-co avatar harikrishnanbalagopal avatar ishantanu avatar jeffrosenberg avatar kaplanelad avatar mattfenwick avatar miguelhzbz avatar steveteuber avatar woodprogrammer avatar yifeikong avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

awesome-kubectl-plugins's Issues

Problem installing awesome-kubectl-plugins/cssh on WSL-2

When running:

kubectl krew install awesome-kubectl-plugins/cssh

I got:

Updated the local copy of plugin index "awesome-kubectl-plugins".
Updated the local copy of plugin index.
Installing plugin: cssh
W0212 06:22:18.569690  707737 install.go:164] failed to install plugin "cssh": install failed: failed to unpack into staging dir: failed to unpack the plugin archive: checksum does not match, want: 207cf5c1cf947183851b51f6a3afdb7ed9e98e52d49e49b76c74d3f5845e452b, got 0019dfc4b32d63c1392aa264aed2253c1e0c2fb09216f8e2cc269bbfb8bb49b5
failed to install some plugins: [cssh]: install failed: failed to unpack into staging dir: failed to unpack the plugin archive: checksum does not match, want: 207cf5c1cf947183851b51f6a3afdb7ed9e98e52d49e49b76c74d3f5845e452b, got 0019dfc4b32d63c1392aa264aed2253c1e
```0c2fb09216f8e2cc269bbfb8bb49b5

FWIW I was able to install ssh-jump without problems

Keep this repo with `krew-index` in sync?

๐Ÿ‘‹ Hello, maintainer of the kubectl plugin manager krew here.

You are doing great work to collect all these kubectl plugins in this place. What would you think if all of these plugins were also available via krew? This would immediately increase the visibility for the plugins due to krew's large user basis.

However, for us it's hard to track what's going on everywhere in kubectl-land. And we could use your help to keep krew-index up-to-date. So what do you think about opening a new issue in krew-index whenever there is a new addition to the list you maintain here?

Also see kubernetes-sigs/krew-index#349
/cc @ahmetb
/cc @ferhatelmas

Error: failed to read or parse plugin manifest "view-webhook"

I just added awesome-kubectl-plugins as an index for krew, but I get the following error:

failed to read or parse plugin manifest "view-webhook": 
failed to parse yaml file "/my/home/.krew/index/awesome-kubectl-plugins/plugins/view-webhook.yaml": 
error converting YAML to JSON: yaml: line 17: could not find expected ':'

It looks like view-webhook was just recently added, so there must be a syntax error there.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.