I'm having trouble understanding helm
's use of helm --kube-context=microk8s install ...
should install into the context microk8s
thus into my local microk8s cluster rather than the remote GKE cluster which I once connected to.
This however fails due to Error: could not get Kubernetes config for context "microk8s": context "microk8s" does not exist
if I run e.g. helm --kube-context=microk8s install --name mereet-kafka
after successfully running helm init
and adding necessary repositories.
The context microk8s
is present and enabled according to kubectl config current-context
. I can even reproduce this by running helm --kube-context=$(kubectl config current-context) install --name mereet-kafka
in order to avoid any typos.
Why can't helm
use obviously present contexts?
Rather than an IT admin simply listing the files to install via kubectl, a single command can install an entire application, and Helm will pull the required dependencies and apply the manifests.
Utilize the command “kubectl config set-context my-context —cluster=my-app —namespace=production” to configure per-context parameters. This approach will build a new context named my-context with default Kubernetes cluster and namespace parameters.
You must have Kubernetes installed. For the latest release of Helm, we recommend the latest stable release of Kubernetes, which in most cases is the second-latest minor release. You should also have a local configured copy of kubectl .
Context. A context element in a kubeconfig file is used to group access parameters under a convenient name. Each context has three parameters: cluster, namespace, and user. By default, the kubectl command-line tool uses parameters from the current context to communicate with the cluster.
This looks like a kubernetes configuration problem more than an issue with helm itself.
There are few things that might help:
Check the config file in ~/.kube/config
kubectl config view
Is current-context
set to: microk8s?
Try to use:
kubectl config get-contexts
kubectl config set-context
kubectl config use-context
with proper arguments --server
--user
--cluster
Check if you are refering to the config from ~/.kube/config
and not your own private config from somewhere else.
Check if you have a KUBECONFIG
environment variable (echo $KUBECONFIG
)
I hope it helps.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With