Code Monkey home page Code Monkey 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 outdated Find and report outdated images running in a Kubernetes cluster Security
17 kubectl-kubesec Security risk analysis for Kubernetes resources https://kubesec.io Security
18 duplik8s Duplicate Pods with overriden commands and configurations. Exec
19 kubectl-enter Exec into node via kubectl Exec
20 kubectl-iexec Kubectl plugin to interactively exec into a pod Exec
21 kubectl-ssh A kubectl plugin to ssh into a pod's node Exec
22 kubectl-kcn A script and kubectl plugin which makes it easier to ssh into nodes within your cluster. Exec
23 duyguserbest kubectl-iexec A script and kubectl plugin which makes it easier to ssh into nodes within your cluster. Exec
24 kubectl-exec-all kubectl plugin to execute a command in all running pods of a resource. Exec
25 kubectl-nsenter Simple kubectl plugin to take pod name, SSH onto node and spawn an nsenter shell Exec
26 kvaps kubectl-ssh Tiny plugin for connecting to node in the cluster over SSH Exec
27 kubectl-warp Kubernetes CLI plugin for syncing and executing local files in Pod on Kubernetes Exec
28 kubectl-plugin-ssh-jump A kubectl plugin to SSH into Kubernetes nodes using a SSH jump host Pod Exec
29 kubectl-texec Attach to the pod matching the label with Tmux Exec
30 kubectl-dig Deep kubernetes visibility from the kubectl Visibility
31 kubectl-utility Utility tool for observing k8s resources. Visibility
32 kubectl-graph A kubectl plugin to visualize Kubernetes resources and relationships. Visibility
33 kubectl-tree A kubectl plugin to browse Kubernetes object hierarchies as a tree Visibility
34 kubectl-topology A kubectl plugin that provides insight into the topology of a Kubernetes cluster. Visibility
35 Pod-Dive A kubectl plugin to dive into your Kubernetes nodes pods, and inspect them. Visibility
36 kubectl-dashboard Instantly get a Kubernetes dashboard Visibility
37 kubelogin kubectl plugin for Kubernetes OpenID Connect authentication (kubectl oidc-login) Authn/Authz
38 k8s-pixy-auth k8s plugin to authenticate against an OIDC compatible issuer using PKCE (pixy) flow Authn/Authz
39 kubectl-login Kubectl plugin for re-authenticate into OpenID Connect Provider via CLI Authn/Authz
40 zjj2wry kubectl-login The kubectl plugin is used to login to the kubernetes cluster by oidc authentication. Authn/Authz
41 kubectl-pass kubectl plugin for integration with pass (the standard unix password manager) Authn/Authz
42 kubectl-ssm-secret A kubectl plugin to allow import/export of kubernetes secrets to/from AWS SSM Parameter Store path. Secrets
43 kubectl-decode-secret A kubectl plugin to decode Kubernetes secrets Secrets
44 kubectl-gopass Plugin for kubectl to support reading and writing secrets directly from/to gopass Secrets
45 kubectl-modify-secret kubectl-modify-secrets allows user to directly modify the secret without worrying about base64 encoding/decoding Secrets
46 weibeld kubectl-ctx A kubectl plugin for interactively changing the kubeconfig context Context/Namespace Switching
47 weibeld kubectl-ns A kubectl plugin for interactively switching between namespaces in your cluster Context/Namespace Switching
48 kubectl-select-context light kubectl plugin that prompts user to select config context Context/Namespace Switching
49 kubectl-use Plugin for simple switch kubernetes contexts and namespaces Context/Namespace Switching
50 kubectx Switch faster between clusters and namespaces in kubectl https://kubectx.dev Context/Namespace Switching
51 kubectl-ns Simple kubectl plugin to display/switch namespaces Context/Namespace Switching
52 kubectl-use Plugin for simple switch kubernetes contexts and namespaces Context/Namespace Switching
53 kubectl-switch Kubernetes multi-cluster command-line management tool Context/Namespace Switching
54 caas-one kubectl-switch Kubernetes multi-cluster command-line management tool Context/Namespace Switching
55 juanvallejo kubectl-ns Quickly view or change the current namespace via kubectl Context/Namespace Switching
56 km EKS MFA kubeconfig management tool. Thin wrapper for kubectl. Context/Namespace Switching
57 ketall Like kubectl get all, but get really all resources Resource CRUDs
58 kubectl-grep Filter Kubernetes resources by matching their names Resource CRUDs
59 kubectl-all kubectl plugin to list all resources in given namespace Resource CRUDs
60 kubectl-watch Watches Kubernetes resources Resource CRUDs
61 kubectl-custom-cols a kubectl plugin that help you customize output columns like a boss ! Resource CRUDs
62 kubepod Search pods faster in kubectl Resource CRUDs
63 kubectl-resources Plugin to access Kubernetes resource requests, limits, and usage. Resource CRUDs
64 kubectl-free Show various requested resources on Kubernetes nodes Resource CRUDs
65 kubectl-match-name regex matching for resource names Resource CRUDs
66 kubectl-eksporter A simple Ruby-script to export k8s resources Resource CRUDs
67 kube-capacity A simple CLI that provides an overview of the resource requests, limits, and utilization in a Kubernetes cluster Resource CRUDs
68 kubectl-rotate-pods kubectl plugin to easily restart all pods of a deployment Resource CRUDs
69 kubectl-terminate kubectl-terminate, a kubectl plugin to remove finalizers and finally delete k8s resources Resource CRUDs
70 kubectl-extension-versions Filter Kubernetes resources by matching their names Controller/Operator
71 kudo A kubectl plugin to use kudo via kubectl CLI Controller/Operator
72 ipick A kubectl wrapper for interactive resource selection Controller/Operator
73 kubectl-tmux-logs A kubectl plugin to display container logs within separate tmux panes Logging
74 kubectl-clogs kubectl plugin to follow logs of multiple running pods Logging
75 kubectl-mtail Kubectl helper to get logs from multiple pods Logging
76 kubectl-open-svc-plugin kubectl open-svc plugin makes services accessible via their ClusterIP from outside your cluster Uncategorized
77 kubectl-doctor k8s cluster triage plugin - scan your cluster for anomalies (brew doctor equivalent) Uncategorized
78 kubectl-view-serviceaccount-kubeconfig-plugin A kubectl plugin that show a kubeconfig to access the apiserver with a specified serviceaccount. Uncategorized
79 unfork Kubectl plugin to find forked Helm Charts and other K8s resources and unfork them https://www.unfork.io Uncategorized
80 kubectl-config-merge A kubectl plugin for merging multiple kubeconfig files. A cli-runtime example. Uncategorized
81 konfig konfig helps to merge, split or import kubeconfig files Uncategorized
82 kubectlsafe Safe operations in kubectl with plugin kubectlsafe Uncategorized
83 kubectl-rainbow Simple binary to colorize output. Uncategorized
84 kubectl-ansible An ansible dynamic inventory plugin for kubernetes cluster nodes Uncategorized
85 kubectl-server-version A kubectl plugin for rendering the Kubernetes server version. Uncategorized
86 kubectl-config-cleanup A kubectl plugin for automatically cleaning up your kubeconfig Uncategorized
87 kubectl-gitlab-bootstrap Quickly add a Kubernetes cluster to a GitLab project Uncategorized
88 kubectl-captain kubectl plugin for captain Uncategorized
89 kubectl preflight Preflight Checks and Support Bundles Framework for Kubernetes Applications https://troubleshoot.sh Uncategorized
90 kubectl support-bundle Preflight Checks and Support Bundles Framework for Kubernetes Applications https://troubleshoot.sh Uncategorized
91 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
92 kcf A CLI tool providing you with status & configuration of a Kubernetes cluster fleet Uncategorized
93 kubepug Kubernetes PreUpGrade (Checker) Uncategorized
94 kubectl view-secret Decode Kubernetes secrets Secrets
95 kubectl-cilium A kubectl plugin for interacting with Cilium. Networking
96 kubectl-carbonetes-scan Integrates container analysis directly into your cluster. Container Security
97 kubectl-cyclonus Analyze, explain, and probe network policies. Networking
98 kubectl-view-webhook Visualize your webhook configurations Visibility
99 kubectl-translate Helps migrate your app to run on Kubernetes. Generates K8s yamls, Helm chart, Operator, CI/CD pipeline, Kustomize overlays, etc. Migration
100 kubectl-datree Scan resources within your cluster for misconfigurations Misconfiguration Detection
101 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 iffybug avatar ishantanu avatar jeffrosenberg avatar kaplanelad avatar mattfenwick avatar miguelhzbz avatar steveteuber avatar telemaco019 avatar woodprogrammer 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

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

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.

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

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.