K8S : outils kubectl

2020-06-23

=> retour

Intro

Pour information, j'ai découvert pas mal de choses sur le blog learnk8s.io.
=> https://learnk8s.io

## krew
On commence avec krew, c'est un plugin `kubectl` gestionnaire de plugins, donc c'est lui qui va télécharger les autres, je ne peux pas trop en parler car je ne l'utilise pas :)
En effet je préfère tout télécharger directement, sans aucun mécanisme d'autoupdate car je travaille avec un cluster privé, et quand on un écosystème avec des versions qui marchent ensembles, perso je préfère mettre à jour les outil finement.
=> https://krew.sigs.k8s.io/

## ns et ctx
Ensuite, kubens et kubectx vont permettre de rapidement switcher de cluster ou de namespace, en plus il s'interface avec fzf !
=> https://github.com/ahmetb/kubectx
=> https://github.com/junegunn/fzf

## k9s
k9s est une interface graphique (dans un terminal) bien pratique
=> https://raw.githubusercontent.com/derailed/k9s/master/assets/screen_po.png

## kubectl-aliases
Je finis avec mon préféré : kubectl-aliases
=> https://github.com/ahmetb/kubectl-aliases

C'est une collection d'alias bash qui raccourcissent les commandes principales de `kubectl`, quelques exemples :
* `kubectl get pods` si on prend les premières lettres devient `kgpo`
* `kubectl get svc` pareil pour les services : `kgsvc`
* `kubectl describe svc` devient `kdsvc`
* `kubectl logs -f ` devient `klo `
* `kubectl exec -ti  -- /bin/bash` devient `kex  -- /bin/bash`
* etc...

C'est plus clair sur le blog learnk8s.
=> https://learnk8s.io/blog/kubectl-productivity#5-save-typing-with-auto-generated-aliases

Il est même possible de retrouver l'auto-completion (nom de pods avec `kex` par exemple) avec [complete-alias](https://github.com/cykerway/complete-alias)
Voici donc un extrait de mon `.bashrc` :

alias kubectl from https://github.com/ahmetb/kubectl-aliases

[ -f ~/.kubectl_aliases ] && source ~/.kubectl_aliases

completion for alias

source ~/.bash_completion

for _a in $(sed '/^alias /!d;s/^alias //;s/=.*$//' ~/.kubectl_aliases); do

complete -F _complete_alias "$_a"

done

Proxy Information
Original URL
gemini://thasmanie.fr/kubectl.gmi
Status Code
Success (20)
Meta
text/gemini;lang=fr
Capsule Response Time
371.480252 milliseconds
Gemini-to-HTML Time
0.421684 milliseconds

This content has been proxied by September (3851b).