Kubernetes : dial tcp 127.0.0.1:8080: connect: connection refused

33,882

Solution 1

Kubernetes uses a $KUBECONFIG file for connecting to clusters. It may be when provisioning your kops cluster, it didn't write the file correctly. I can't be sure as you haven't provided enough info.

Assuming this is the issue, and you only have a single cluster, it can be resolved like so:

# Find your cluster name
kops get clusters
# set the clustername as a var
clustername=<clustername>
# export the KUBECONFIG variable, which kubectl uses to find the kubeconfig file
export KUBECONFIG=~/.kube/${clustername}
# download the kubeconfig file locally using kops
kops export kubecfg --name ${clustername} --config=~$KUBECONFIG

You can find more information about the KUBECONFIG file here

Solution 2

you have to start minikube before using kubectl I had the same issue but mine was because minikube was not running

Share:
33,882
prranay
Author by

prranay

Updated on July 24, 2022

Comments

  • prranay
    prranay almost 2 years

    I've launched kubernetes cluster using kops. It was working find and I started facing the following problem:

    kubectl get pods
    The connection to the server localhost:8080 was refused - did you specify the right host or port?
    

    How do i solve this? It looks like kubernetes-apiserver is not running, How do i get this working?

    kubectl run nginx --image=nginx:1.10.0
    error: failed to discover supported resources: Get http://localhost:8080/apis/apps/v1beta1?timeout=32s: dial tcp 127.0.0.1:8080: connect: connection refused
    

    Please suggest

  • Piotr Malec
    Piotr Malec over 4 years
    The question is about kubernetes cluster deployed using cops not minikube.