T O P

  • By -

WiseCookie69

K9s


amemingfullife

K9s is great but it needs global and namespace-constrained search.


JalanJr

What do you need ? For pods it's possible! If you use 0 you'll see all pods across ns and if you go to namespace, select one then display pods you'll see pods binded to this ns. `/` will be restricted to what you chose


Speeddymon

You can also use label selectors with `/` For example `app=datadog` in the search box will filter all pods with that label.


lolocaust420

You can just append the namespace after the resource for a namespace-constrained search. For example for pods in ArgoCD namespace you would type: ‘:pods ArgoCD’. For secrets in webapp namespace you type ‘:secrets webapp’


niceman1212

What do you mean exactly? Afaik that’s possible by simply selecting a namespace first and then going to the namespace scoped resources. If you want global just press 0


amemingfullife

Sure, it’s possible, I just think it should be a top level concern. It’s pretty much the only thing I still use the web kubernetes-dashboard for these days. I jump on, type the deployment name I want to manage and then click the deployment. The reason I do it this way is often I can’t remember if I have the particular resource as a statefulset or a deployment. The way k9s wants me to do it is to make sure I’m filtering on the correct resource, the assumption being that I know the type of resource I want to filter on ahead of time. I want something faster. Something like a fuzzy finding command palette in an IDE. For instance, I have Mimir installed in a namespace. With the kubernetes dashboard I go to ‘all namespaces’ type ‘mimir’ and I can see every Mimir resource and I click the right one. Mimir is made by a 3rd party, and I can’t remember off the top of my head which resources are statefulsets or are deployments. If I filter on pods I have every pod in front of me, with 3 replicas on each service that’s 3x the noise, so just dealing with pods is out of the question. With k9s I have to know more ahead of time to find the right thing, with the web ui this is much quicker.


niceman1212

I get your point. I kinda agree with the other comment about knowing the kind ahead of time but it’s also difficult to remember what is all part of a deployment. What you’re describing sounds a lot like an application in argocd, where ALL resources part of a particular deployment are listed. So technically not a cli tool, but quite a good way to see what’s under the hood of a deployment


IsleOfOne

Knowing the kind ahead of time is a requirement of the k8s API as a whole. I am guessing that the web dashboard is building some sort of informer cache for the most common kinds, but I don't see how it would be showing _all_ kinds. It's likely similar to the `all` alias in kubectl.


amemingfullife

Sure! I know it’s more work but it doesn’t make me want it any less 😂. If I could get that I’d drop the web UI entirely.


karmajunkie

in recent versions ‘wk’ will get you all workloads and you can search from there.


amemingfullife

Amazing! I upgraded and I can see that. It definitely makes it easier but it’s not quite as simple as the web dashboard - sometimes I want to search across services or Cron too and I want that all in the same window. My proposal would be a namespaced search (global if you hit 0), and there a multiple panes you can tab through (maybe shift+tab?) that can take you between the different resource panes on the same window. Basically I’d like to invert the flow, instead of picking a resource and then filtering I’d like to filter and then pick a resource with all of them in front of me. EDIT: also, looking at wk, it also uses replica sets as a workloads, which is a lot of noise.


JalanJr

K9s


schmurfy2

I finally decided to try it and it's a really powerful tool !


okimhere_again

https://youtu.be/0o5xZ7qizEY might find this useful


schmurfy2

thanks :)


okimhere_again

Most welcome. I love k9s


JalanJr

You won't regret it ;) I really suggest you have a look to the documentation they have some really interesting features like x-ray or sanitizing. You can even add some plugins!


schmurfy2

Yeah I saw xray and 1 few other neat features like tree


pushthecharacterlimi

K9s


junior_dos_nachos

k9s


akuma-i

k9s


Dabloo0oo

K9s FTW


dankube

Fubectl [https://github.com/kubermatic/fubectl](https://github.com/kubermatic/fubectl)


IsleOfOne

Is this just a worse version of https://github.com/ahmetb/kubectl-aliases ?


dankube

No, it’s a bit more. Integration with fzf means fully menu driven, with immediate filtering based on type-ahead input from keyboard. ‘kcs’ alias does what kubectx does. ‘kcns’ alias does what kubens does. It has been around forever, and it is still my go to first install on new systems. ‘kexec’ gives you the ability to run a command in any pod, letting you select the pod name by menu, also with type ahead search. The fzf integration provides the magic.


hijinks

stern


adam_hugs

if you work with clusters that have more than one replica of literally anything, this is the right answer


Skaronator

11 GitHub Stars "stern"? https://github.com/rancher/stern


Unikore-

No, 2.8k Github stars "stern" https://github.com/stern/stern


Skaronator

ah thanks


hijinks

That's a fork of a fork. Below is the official one now https://github.com/stern/stern


Ariquitaun

kubectx


esisenore

Kubectx because I’m very lazy


rbankole

alias kx = kubectx because im lazier


esisenore

Dude your a legend


JodyBro

Kubeswitch is an excellent alternative here. Allows you to have different contexts in different terminal tabs


ImportantString

Kubie is also good here


the_coffee_maker

+1 for kubeswitch


d3adnode

Ho-le-shit! This is what I’ve been needing in my life. Ty!


WrathOfTheSwitchKing

$ switch current-context Error: multiple files in KUBECONFIG are currently not supported multiple files in KUBECONFIG are currently not supported Well, that's a complete non-starter. :/


JodyBro

If you have multiple contexts in a single kubeconfig then you'd need to set up the config file for the tool: https://github.com/danielfoehrKn/kubeswitch/blob/master/docs/kubeconfig_stores.md#configure-kubeconfig-stores Personally, I like to have a single file named after the cluster that its configured for and then have my shell just append to the `KUBECONFIG` var....although now that I'm reading the docs, I think I can just pass in a dir for it to search...


usa_commie

I'm a big fan of ohmyzsh and the kube plugins. It'll just display what context you're in right there in the terminal. Plus you get auto completion on not just the binary but your actual objects in k8, whatever they happened to be named. Edit: words


overprotected

I prefer kubie over kubectx


jonnyx129

kube-ps1 shameless plug


JodyBro

That yours?


jonnyx129

yes


JodyBro

Fucking ubiquitous in the field. Thank you for your work good sir! Have a well deserved upvote


jonnyx129

thanks, appreciate it.


Glass_Drama8101

K9s


enricomarchesin

kubie https://github.com/sbstp/kubie


BloodyIron

ArgoCD


geeky217

Kubecolor…useful for quickly spotting information by colour.


SpongederpSquarefap

ArgoCD - web UI is wonderful to look at


Slimzeb

OpenLens


Koyaanisquatsi_

I was under the impression that Lens (not openlens) is paid even for one cluster but I installed it yesterday and worked on it without paying anything. What are the differences between the 2?


Slimzeb

I think OpenLens is a fork of Lens, but "open source" as far as a fork goes. Lens went down the paid route some while ago + it began feeling a bit bloated / sluggish once it did. Anyways, great UI and good alternative to K9s =)


wicolam

K9s, Argo CD


McFistPunch

Grep


JodyBro

So true it hurts. I never remember the labels that could filter out the resources I'm looking for so its always k get $whatever | grep -i "$somethinggg"


dserodio

fzf is even better than grep for this


JodyBro

Oh 100% yes. It's weird though...outside of neovim and fzf-lua, I haven't been able to build the muscle memory to use fzf instead of a pipe to grep. But I totally agree that it outclasses grep in this scenario!


CyEriton

‘ag’ aka the silver searcher is basically grep but much faster. fzf is also good and provides menus which can be helpful to catch input.


AdventurousYam5506

Lens


BonzTM

k9s, stern


War_s

oc, helm


mohsinjavedcheema

OpenLens


macskay

Lens


MahaloDsNutz

k9s


SlaveZelda

K9s


DreamAeon

k9s


R4ff43ll0

K9s


strange_shadows

Krew


zippysausage

My answer because it encapsulates so much more that I use beyond native kubectl.


svensgaard

the carvel suite, in particular kapp. it's a godsend for managing changes with automation.


schmurfy2

I love their tools too ! Ytt and kapp are so much better than helm...


JodyBro

Here's the thing though. There are A LOT of tools out there better than helm for sure..... But if you've ever been on the hiring side of things, you'll realize that it's hard enough to even find someone who actually understands helm and doesn't ask questions like what's the difference between helm and docker in k8s. So while the technical benefits of those other tools are definitely a valid point, there's also the knowledge side of it when trying to hire that I think people fail to see (not referencing you here BTW)


schmurfy2

I was hired for the way my brain works and not only what it contained, I never touched k8s before my current position and 3 months after I had more knowledge on it than my team, after that we recruited others with a similar profile. So yes, I don't understand how the ceiling can be put so low that you need to recruit people that don't understand the difference between helm and docker, an answer to which I knew even without prior k8s knowledge just because I prepared for the interview.


jschelling

whoa this is sweet. definitely trying this out


garbagecanman1

OpenLens, with the 'old' functionality restored via the '@alebcay/openlens-node-pod-menu' extension. We use it with krew and the oidc-login plugin and it works really well for us. Seeing so many folks using k9s makes me wonder what I'm missing here!


JodyBro

I didn't even know this existed but I'm going to test it out tonight


Speeddymon

I feel like all of these responses are just different ways of saying kubectl. I'll say I like FluxCD. I'll probably take flak because "It'S a GiToPs ToOl" but I see gitops as an extension of Kubernetes, so 🤷‍♂️


JodyBro

Anyone who's giving you flak for a gitopts tool without a solid reason as to why it sucks should honestly be ignored. I have yet to find a better way to manage hundreds/thousands of apps in multiple clusters across different regions in a cloud provider other than gitopts


buckypimpin

k9s grafana + kube-state-metrics


SammyBoi-08

K9s all the way.


mike-ockhurts

k9s


denis-md

Openlens Kompose


jcpunk

I like kluctl


WiuEmPe

Kubie


nuqenet

Aptakube


loku_putha

K9s


Available_Ad_8299

kubetail for easy multi pod log tailing


JodyBro

Try stern out! https://github.com/stern/stern


Available_Ad_8299

Thanks, it sounds like a German magazine name


UncomprehendingGun

K9s


GuyF1eri

K9s


muhnagy

+1


AssistanceStriking43

K8sgpt


JodyBro

Yeah this will make onboarding new engineers so much simpler! Ty sir


kitchinsink

k9s, 100%. kubectx is a close second.


JodyBro

checkout kubeswitch as well!


fridolin-finster

Yes, kubeswitch!


radpartyhorse

k9s


bryn_irl

https://github.com/rajatjindal/kubectl-modify-secret is an awesome "secret" weapon (hehe)! Integration into k9s can be done manually: https://github.com/derailed/k9s/issues/1017 More generally, VSCode's Kubernetes extension is quite good, and a great way to visualize things at a glance.


crikid

K9s


drosmi

I just learned about the kubectl curl plugin. It made yesterday so much easier.


Lxouc

kubectx and kubens


AssistanceStriking43

Kube-ns Kube-ctx


bearda

terraform


okilydokilyTiger

K9s K3d


flatmap_fplamda

K9s


Available_Ad_8299

kubetail for easy multi pod log tailing


fuzzy812

Lens


tech-learner

Gremlin


thifirstman

K9s


raspbuino

Headlamp


boyroywax

skaffold


godsack

I've been getting a lot of use out of kubens


ArtPhysical3174

Devtron


TypicalRegister2551

Komodor


memawsh

unctl [https://pypi.org/project/unctl/](https://pypi.org/project/unctl/)


PanZilly

Well, ehm, oc


mengoreddit

Lens


gaspo53

I’ve been using Lens and it’s great


kamikazechaser

Helmsman


MuscleLazy

I tried several tools, out of all, my favorite is Lens, followed by k9s when working with terminal only. Rest in peace OpenLens, you will be missed.


mattduguid

kubernetes_manifest -> https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/resources/manifest


VertigoOne1

helm


pjf93

Lens is great for multi-cluster. [https://k8slens.dev/](https://k8slens.dev/)


Glass_Drama8101

No since you need to have account to use it. Literally everyone moved to k9s since they did the change.


sadoMasupilami

I also use k9s but wasn’t there openlens?


Glass_Drama8101

It was just a binary build process by someone. I guess folks were worried it could be a security risk - I am at least worry of connecting unknown binaries to my cluster. So as it did not traction and community recognition I guess it just died out. But tbh k9s satisfy all (most?) our needs so here we are...


sadoMasupilami

I just looked: Lens Closed its source code. So please do not expect any more updates. So lens is not a good idea anymore. Does not matter to me but I told people they can use it if they are not familiar with the console


lol_admins_are_dumb

k9s is not a CLI app it's a GUI app that runs in your terminal. You don't need console familiarity to use it.


sadoMasupilami

You are completely correct and as I said I use it myself. Still gui people don’t like k9s initially


dserodio

Sorry to nitpick, but it's actually a [TUI](https://en.wikipedia.org/wiki/Text-based_user_interface) (Text-based User Interface), not a GUI


lol_admins_are_dumb

Well to nitpick further, a TUI is just a subset of a GUI that uses text artifacts in a grid layout to build up the graphical interface :P


alzgh

I really don't see any game changing benefits to lens vs. k9s, even if it was open source and all. It just makes the work more complicated and gui dashboards for nice visualizations can be build otherwise.


denis-md

But there is open alternative, openlens


applesaucesquad

I love lens, I use it every day. You can make a free account and a gui is often much faster and easier to parse than a cli.


pjf93

Same here, use it everyday and Flux for GitOps.


s2a1r1

Same here