Kubernetes API pod refuses connection

11/2/2015

I'm currently trying to setup a small cluster using CoreOS and Kubernetes. To get started, I'm following this tutorial. I have three CoreOS machines running on VirtualBox, using vagrant. I reached the second step of the tutorial, but got stuck.

I seem to be able to startup the kubelet using systemctl start kubelet, but I can't seem to connect to the API server. Is seems as if it didn't start the API server, but tries to connect to it first.

When I enter curl http://127.0.0.1:8080/version, I get curl: (7) Failed to connect to 127.0.0.1 port 8080: Connection refused back.

Journalctl just shows me that kubelet is trying to connect to the API server and since the API server is not reachable, I can't use kubectl to see what is going on with the Pod. How should I tackle this problem?

Edit:

I executed the docker command manually and got the following back:

I1109 09:30:18.680796       1 plugins.go:69] No cloud provider specified.
I1109 09:30:18.826523       1 master.go:273] Node port range unspecified. Defaulting to 30000-32767.
E1109 09:30:18.847815       1 reflector.go:136] Failed to list *api.ResourceQuota: Get http://127.0.0.1:8080/api/v1/resourcequotas: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:18.848277       1 reflector.go:136] Failed to list *api.Secret: Get http://127.0.0.1:8080/api/v1/secrets?fieldSelector=type%3Dkubernetes.io%2Fservice-account-token: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:18.848581       1 reflector.go:136] Failed to list *api.ServiceAccount: Get http://127.0.0.1:8080/api/v1/serviceaccounts: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:18.848766       1 reflector.go:136] Failed to list *api.LimitRange: Get http://127.0.0.1:8080/api/v1/limitranges: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:18.848943       1 reflector.go:136] Failed to list *api.Namespace: Get http://127.0.0.1:8080/api/v1/namespaces: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:18.849698       1 reflector.go:136] Failed to list *api.Namespace: Get http://127.0.0.1:8080/api/v1/namespaces: dial tcp 127.0.0.1:8080: connection refused
[restful] 2015/11/09 09:30:18 log.go:30: [restful/swagger] listing is available at https://172.17.8.101:443/swaggerapi/
[restful] 2015/11/09 09:30:18 log.go:30: [restful/swagger] https://172.17.8.101:443/swaggerui/ is mapped to folder /swagger-ui/
E1109 09:30:19.849251       1 reflector.go:136] Failed to list *api.Secret: Get http://127.0.0.1:8080/api/v1/secrets?fieldSelector=type%3Dkubernetes.io%2Fservice-account-token: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:19.850278       1 reflector.go:136] Failed to list *api.ResourceQuota: Get http://127.0.0.1:8080/api/v1/resourcequotas: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:19.852294       1 reflector.go:136] Failed to list *api.ServiceAccount: Get http://127.0.0.1:8080/api/v1/serviceaccounts: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:19.852462       1 reflector.go:136] Failed to list *api.LimitRange: Get http://127.0.0.1:8080/api/v1/limitranges: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:19.852802       1 reflector.go:136] Failed to list *api.Namespace: Get http://127.0.0.1:8080/api/v1/namespaces: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:19.854201       1 reflector.go:136] Failed to list *api.Namespace: Get http://127.0.0.1:8080/api/v1/namespaces: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:20.852158       1 reflector.go:136] Failed to list *api.Secret: Get http://127.0.0.1:8080/api/v1/secrets?fieldSelector=type%3Dkubernetes.io%2Fservice-account-token: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:20.852217       1 reflector.go:136] Failed to list *api.ResourceQuota: Get http://127.0.0.1:8080/api/v1/resourcequotas: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:20.853732       1 reflector.go:136] Failed to list *api.ServiceAccount: Get http://127.0.0.1:8080/api/v1/serviceaccounts: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:20.854456       1 reflector.go:136] Failed to list *api.LimitRange: Get http://127.0.0.1:8080/api/v1/limitranges: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:20.855127       1 reflector.go:136] Failed to list *api.Namespace: Get http://127.0.0.1:8080/api/v1/namespaces: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:20.855954       1 reflector.go:136] Failed to list *api.Namespace: Get http://127.0.0.1:8080/api/v1/namespaces: dial tcp 127.0.0.1:8080: connection refused

... Repeated many times ...

E1109 09:30:35.882091       1 reflector.go:136] Failed to list *api.Namespace: Get http://127.0.0.1:8080/api/v1/namespaces: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:36.082552       1 reflector.go:136] Failed to list *api.Secret: Get http://127.0.0.1:8080/api/v1/secrets?fieldSelector=type%3Dkubernetes.io%2Fservice-account-token: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:36.282562       1 reflector.go:136] Failed to list *api.ResourceQuota: Get http://127.0.0.1:8080/api/v1/resourcequotas: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:36.482611       1 reflector.go:136] Failed to list *api.ServiceAccount: Get http://127.0.0.1:8080/api/v1/serviceaccounts: dial tcp 127.0.0.1:8080: connection refused
F1109 09:30:36.664838       1 controller.go:80] Unable to perform initial IP allocation check: unable to refresh the service IP block: 501: All the given peers are not reachable (failed to propose on members [172.17.8.101 172.17.8.102 172.17.8.103] twice [last error: Get 172.17.8.103/v2/keys/registry/ranges/serviceips?quorum=false&recursive=false&sorted=false: unsupported protocol scheme ""]) [0]
-- palaga
coreos
kubernetes

2 Answers

11/4/2015

You are going to setup the apiserver in the next step. It is the thing that serves on 127.0.0.1:8080. The kubelet should stop complaining once the apiserver is started. The curl command you mentioned should work at that point too.

-- Eric Tune
Source: StackOverflow

11/9/2015

I gave up on this setup for now. I think it has something todo with a misconfiguration in the ssl setup. For now I just use this guide, in combination with the aformentioned tutorial, and stripped all the ssl related stuff from the configuration files. This gives me a working setup for now.

-- palaga
Source: StackOverflow