Farklı kubernetes ortamlarını (aka kubernetes bağlamları) değiştirme / okuma / manipüle etmenin kanonik cevabı, Mark'ın da bahsettiği gibi kullanmaktır kubectl config
, aşağıya bakınız:
$ kubectl config
Modify kubeconfig files using subcommands like "kubectl config set current-context my-context"
Available Commands:
current-context Displays the current-context
delete-cluster Delete the specified cluster from the kubeconfig
delete-context Delete the specified context from the kubeconfig
get-clusters Display clusters defined in the kubeconfig
get-contexts Describe one or many contexts
rename-context Renames a context from the kubeconfig file.
set Sets an individual value in a kubeconfig file
set-cluster Sets a cluster entry in kubeconfig
set-context Sets a context entry in kubeconfig
set-credentials Sets a user entry in kubeconfig
unset Unsets an individual value in a kubeconfig file
use-context Sets the current-context in a kubeconfig file
view Display merged kubeconfig settings or a specified kubeconfig file
Usage:
kubectl config SUBCOMMAND [options]
Sahnenin arkasında, ~/.kube/config
mevcut tüm bağlamları her bağlam için karşılık gelen kimlik bilgileri ve uç noktalarıyla depolayan bir YAML dosyası vardır.
Raftaki Kubectl, muhtemelen zaten bildiğiniz gibi farklı kubernetes bağlamlarını yönetmeyi kolaylaştırmaz. Tüm bunları yönetmek için kendi komut dosyanızı kullanmak yerine, daha iyi bir yaklaşım, kubectx
Kubernetes / Google Cloud Platform'da bulunan "Ahmet Alp Balkan" adlı bir Google çalışanı tarafından oluşturulan olgun bir araç kullanmaktır . Şiddetle tavsiye ederim.
https://github.com/ahmetb/kubectx
$ kctx --help
USAGE:
kubectx : list the contexts
kubectx <NAME> : switch to context <NAME>
kubectx - : switch to the previous context
kubectx <NEW_NAME>=<NAME> : rename context <NAME> to <NEW_NAME>
kubectx <NEW_NAME>=. : rename current-context to <NEW_NAME>
kubectx -d <NAME> [<NAME...>] : delete context <NAME> ('.' for current-context)
(this command won't delete the user/cluster entry
that is used by the context)
kubectx -h,--help : show this message