Introduction
Étant donné que nous sommes amenés à gérer plusieurs contexte kubectl, il est intéressant de trouver un outil pour passer d’un contexte à l’autre facilement.
Un contexte ?
Chaque installation de Kubernetes va générer une configuration KUBE_CONFIG
utilisable par la commande kubectl
. C’est ce qu’on appelle un contexte.
Cependant, à force d’installer de nombreux serveurs Kubernetes, il va falloir gérer plusieurs contextes.
Donc non seulement on cherche à pouvoir les ajouter au fur et à mesure, mais aussi pouvoir les utiliser facilement.
Gérer plusieurs contextes
Il suffit d’utiliser la commande kubectx pour commuter d’un contexte à l’autre sans effort.
Par exemple, avec 2 contextes appelés default
et zou
, on peut imaginer passer d’un contexte à l’autre ainsi :
# Liste les contextes disponibles
kubectx
# change de contexte pour 'zou'
kubectx zou
kubectl get nodes
# change ensuite de contexte pour 'default'
kubectx default
kubectx get nodes
fzf
installé, il y a un mode interactif quand on fait kubectx
, ce qui évite de faire une commande supplémentaire.
Fusionner plusieurs config. Kube
Imaginons que vous ayez plusieurs fichiers de configuration Kube, il est intéressant de pouvoir fusionner ces derniers en un seul fichier, par exemple :
cp ~/.kube/config ~/.kube/config-backup
export KUBECONFIG=~/.kube/config:/path/cluster1:/path/cluster2
kubectl config view --flatten > all-in-one-kubeconfig.yaml
mv all-in-one-kubeconfig.yaml ~/.kube/config
Et le tour est joué !
Liens utiles
-
kubectx
: un outil en ligne de commande pour commuter rapidement d’un contexte à l’autre. Si vous avez
fzf
installé sur votre machine, cela permet d’avoir un menu interactif de sélection. - Documentation officielle pour organiser ses accès aux clusters Kubernetes
- Fusionner plusieurs configurations Kubernetes