Introduction
Laymen explanation
Technical explanation
Kubernetes stores multiple contexts in kubeconfig file (~/.kube/config).
It also stores current context
Switching the cluster is nothing but changing the context
Text Box
~ deepak$ cat ~/.kube/config
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURDekNDQWZPZ0F3SUJBZ0lRT0ttd3N2QWRIcHUrUVhRTTZTd0FxREFOQmdrcWhraUc5dzBCQVFzRkFEQXYKTVMwd0t3WURWUVFERXlSalkyTmtNV015TVMwMVpHUXdMVFEyT0RndFltUmxOUzFrT0dKa1pHVTNNMlkwTnpndwpIaGNOTVRrd01qQXlNRFExT0RJNVdoY05NalF3TWpBeE1EVTFPREk1V2pBdk1TMHdLd1lEVlFRREV5UmpZMk5rCk1XTXlNUzAxWkdRd0xUUTJPRGd0WW1SbE5TMWtPR0prWkdVM00yWTBOemd3Z2dFaU1BMEdDU3FHU0liM0RRRUIKQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURwVGRjZXVRYzRKZEhob0ZCbHppWXpWeWdlTTdVdDcyQUJTVnlxblRPMAppd1BDRTN6Z1l3VnVGK0R2VEdLRkN3andscDAvNEVHc3lydXNxck5MZGxQY21xWnFJQitQQ2lQSHlyc1NGMFBwClRyMmhBenA2b0ptYWJCREUxb3BHQ2tuRm9sRjdMbjJEOXUvWWtTbFB2aUZ4QXZ3cUVwUkFFVnhYWTNqb0x1RHcKMTQ4MnVUSkxZYnM3dzFLUXNrZTZ0V3ZoL0ZyeWxiSFZYZURQYWRiSTQ1UFJxcXgvVVBZYmx4aGpPaFpOQWFjYQpLNjR0a2VQMXU3ZUsrNnU1M0NYRGxRL2I2bjdtK0g5OGhuV3pqS1FBcEZzcnowNk0rVXZEemdvMUZKWGQzamgwClE0U1JBbmV4aTNGbDFaekEraWNXS0VYUk1PSmRTK3pKN3JjQ3ZzKy9kNFJyQWdNQkFBR2pJekFoTUE0R0ExVWQKRHdFQi93UUVBd0lDQkRBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBRAovL1ZEVzRRTU9QcVZkWGZxVkdSVTRNbldaNkhjMVVsRDNMc2ZPR0g0anZVTFZscWxTT1greFJ0d2ZjZE45azRvCmZLVGVERC9pcngyT3o2TFg5ektGOTJUS1plUDRNYW85bk1lSTNGY1NGdGQxanViZTRhOElvNG5CWVNXcnprQ1YKZ21kK0tCV0hQUlI1U3RKZDVGR3RBMHBHREo1bUNwc0RPaTcvNDRib3Vkd21pbDFqVDNEcnQrMVVUblRjbENWSQpKdThFOXVRelJxajFKUUVBbXoxQllwM2taczRMVnRLbFo2Z0JoZlBOUDZqV0djYTc2cWtSUUlOaU9IbUF3VHdoCmNVakszZEZpSGJ2b1BiaWdCOGxweWRRTWgwRTRIR1BXMnQvMWdXYjhJdVJGRGY5aGpOdDJzeEZhd3VwV3ZaUkIKTHhFSS8rVXhRSnl0cHc2T21sOVgKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
server: https://35.232.219.87
name: gke_vmbased_us-central1-a_istio-test
- cluster:
certificate-authority: /Users/deepak/.minikube/ca.crt
server: https://192.168.99.100:8443
name: minikube
contexts:
- context:
cluster: gke_vmbased_us-central1-a_istio-test
user: gke_vmbased_us-central1-a_istio-test
name: gke_vmbased_us-central1-a_istio-test
- context:
cluster: minikube
user: minikube
name: minikube
current-context: minikube
kind: Config
preferences: {}
users:
- name: gke_vmbased_us-central1-a_istio-test
user:
auth-provider:
config:
access-token: ya29.GlukBnroSFNNcwyeDwoQ8CkrQmxxCXbJRpp8mnXE0qhGkUhms6_LOWDAkWlQhLffNadlOQbeW1cRLmt_N6AfXvea3PPXelNM16HYLJVRgr5GPyQNnAsHZeus-n05
cmd-args: config config-helper --format=json
cmd-path: /usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/bin/gcloud
expiry: 2019-02-02T07:15:20Z
expiry-key: '{.credential.token_expiry}'
token-key: '{.credential.access_token}'
name: gcp
- name: minikube
user:
client-certificate: /Users/deepak/.minikube/client.crt
client-key: /Users/deepak/.minikube/client.key
Command
kubectl config view
kubectl config set current-context minikube
Description
List of context
Set contexts as Minikube