DavM
DavM

Reputation: 109

Using kubeconfig contexts simply

I need to use now multiple cluster, currently what I did is simple put all the kubeconfig under .kube folder and any time update the config file with the cluster which I need , e.g.

mv config cluserone vi config insert new kubeconfig to the config file and start working with the new cluster, Let say inside the /Users/i033346/.kube I've all the kubeconfig file one by one.

is there a way to use them as contexts without creating a new file which contain all of them.

I try to use also kubectx however when I use:

export KUBECONFIG=/Users/i033346/.kube/trial

and

export KUBECONFIG=/Users/i033346/.kube/prod

and use kubectx I always get the last one and doenst get list of the defined contexts,any idea?

Upvotes: 3

Views: 1077

Answers (2)

Max Lobur
Max Lobur

Reputation: 6040

KUBECONFIG env var supports multiple files, comma-separated:

export KUBECONFIG="/Users/i033346/.kube/trial,/Users/i033346/.kube/prod"

This should be enough to see all of them in kubectx.

You can even merge all configs to 1 file:

export KUBECONFIG="/Users/i033346/.kube/trial,/Users/i033346/.kube/prod"
kubectl config view --flatten > ~/.kube/config

Upvotes: 3

cperez08
cperez08

Reputation: 749

What I used to do in this scenario is to create multiple aliases pointing to different config files.

e.g

in your .bashrc/.zshrc

edited in your ~/.bashrc or your ~/.zshrc

alias k-cluster1="kubectl --kubeconfig /my_path/config_cluster1"
alias k-cluster2="kubectl --kubeconfig /my_path/config_cluster2"

after loading the terminal k-cluster1 get pods or k-cluster2 get pods should work

Upvotes: 0

Related Questions