trouble with registering deis
Closed this issue · 19 comments
ive followed every step in install instructions..
and for registering deis i have this problem
a@a-virtual-machine:~$ deis register http://10.0.0.237.nip.io Error: Get http://10.0.0.237.nip.io/v2/: dial tcp 10.0.0.237:80: getsockopt: no route to host
what can i do for register?
10.0.0.x is an internal network bridge for within the cluster. You'll need to grab the load balancer's IP address or the node's public IP address. See https://deis.com/docs/workflow/quickstart/deploy-an-app/#determine-your-host-and-hostname-values
also it should be http://deis.theipaddress.nip.io
as the router redirects requests based on the header's hostname. deis
redirects to the controller.
@bacongobbler
a@a-virtual-machine:~$ deis register http://deis.10.0.0.237.nip.io Error: Get http://deis.10.0.0.237.nip.io/v2/: dial tcp 10.0.0.237:80: getsockopt: no route to host
this is the error afterwards..
10.0.0.237 will not work outside of the cluster. My first comment should show you how to get the correct IP address you're looking for.
@bacongobbler
a@a-virtual-machine:~$ deis register http://deis.84.x.32.42.nip.io Error: Get http://deis.84.x.32.42.nip.io/v2/: dial tcp 84.x.32.42:80: getsockopt: connection refused
the public 84.x.32.42
we have killed all process on port 80 &443
Not sure how to proceed here either. Following the exact instructions.
- Minikube ip
minikube ip
192.168.64.2
Option 1.
If your router IP is 1.1.1.1, its $hostname will be 1.1.1.1.nip.io. You can find your IP address by running:
kubectl --namespace=deis describe svc deis-router
Name: deis-router
Namespace: deis
Labels: heritage=deis
Annotations: service.beta.kubernetes.io/aws-load-balancer-connection-idle-timeout=1200
Selector: app=deis-router
Type: LoadBalancer
IP: 10.0.0.54
Port: http 80/TCP
NodePort: http 30327/TCP
Endpoints: <none>
Port: https 443/TCP
NodePort: https 30582/TCP
Endpoints: <none>
Port: builder 2222/TCP
NodePort: builder 32763/TCP
Endpoints: <none>
Port: healthz 9090/TCP
NodePort: healthz 30349/TCP
Endpoints: <none>
Session Affinity: None
Events: <none>
Do I use 192.x.x or 10.x.x ? When I use 192.x.x I get (either
deis register http://192.168.64.2.nip.io OR deis register http://10.0.0.54.nip.io) I get
Error: http://192.168.64.2.nip.io does not appear to be a valid Deis controller.
Make sure that the Controller URI is correct, the server is running and
your deis version is correct.
For 10.x.x (either deis register http://10.0.0.54.nip.io || deis register http://deis.10.0.0.54.nip.io) I get
Error: Get http://deis.10.0.0.54.nip.io/v2/: dial tcp 10.0.0.54:80: getsockopt: operation timed out
Do I need to change my virtualbox settings? Is there something obvious I am missing?
@dfcarpenter there's actually a docs fix surrounding the line referenced below Option 1.
(see #835). There may be still be room for improved clarity in those docs, particularly w/r/t minikube clusters...
The full command should be:
deis register http://deis.$(minikube ip).nip.io
(where $(minikube ip)
resolved to 192.168.64.2
at the time of writing)
Let me know if the above fails to work...
@vdice So I was having issues with some pods starting correctly and I was unable to uninstall and purge everything and start over. The problem now is the deis-router just hangs and never gets out of a pending state.
kubectl --namespace=deis get pods
NAME READY STATUS RESTARTS AGE
deis-builder-1134541883-qgm0v 1/1 Running 1 14m
deis-controller-2381495828-wx1cn 1/1 Running 1 14m
deis-database-401209816-fn4hk 1/1 Running 0 14m
deis-logger-2717637750-9vsgb 1/1 Running 2 14m
deis-logger-fluentd-9dw27 1/1 Running 0 14m
deis-logger-redis-1413683677-v5hck 1/1 Running 0 14m
deis-minio-3370481340-dmr30 1/1 Running 0 14m
deis-monitor-grafana-1073006293-qvr3q 1/1 Running 0 14m
deis-monitor-influxdb-2675149720-ljnxv 1/1 Running 0 14m
deis-monitor-telegraf-hpm0f 1/1 Running 1 14m
deis-nsqd-1225249577-1kll5 1/1 Running 0 14m
deis-registry-2623437609-9tz32 1/1 Running 2 14m
deis-registry-proxy-1pm8b 1/1 Running 0 14m
deis-router-3574011047-thqw0 0/1 Pending 0 14m
deis-workflow-manager-3757950027-db43m 1/1 Running 0 14m
kubectl get svc --all-namespaces
NAMESPACE NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default details 10.0.0.224 <none> 9080/TCP 31d
default kubernetes 10.0.0.1 <none> 443/TCP 32d
default postgres 10.0.0.192 <none> 5432/TCP 13h
deis deis-builder 10.0.0.207 <none> 2222/TCP 14m
deis deis-controller 10.0.0.166 <none> 80/TCP 14m
deis deis-database 10.0.0.193 <none> 5432/TCP 14m
deis deis-logger 10.0.0.204 <none> 80/TCP 14m
deis deis-logger-redis 10.0.0.16 <none> 6379/TCP 14m
deis deis-minio 10.0.0.179 <none> 9000/TCP 14m
deis deis-monitor-grafana 10.0.0.219 <none> 80/TCP 14m
deis deis-monitor-influxapi 10.0.0.71 <none> 80/TCP 14m
deis deis-monitor-influxui 10.0.0.174 <none> 80/TCP 14m
deis deis-nsqd 10.0.0.29 <none> 4151/TCP,4150/TCP 14m
deis deis-registry 10.0.0.161 <none> 80/TCP 14m
deis deis-router 10.0.0.54 <pending> 80:30508/TCP,443:31946/TCP,2222:31143/TCP,9090:32638/TCP 14m
deis deis-workflow-manager 10.0.0.246 <none> 80/TCP 14m
fission controller 10.0.0.136 <nodes> 80:31313/TCP 11h
fission etcd 10.0.0.41 <none> 2379/TCP 11h
fission influxdb 10.0.0.125 <nodes> 8086:31315/TCP 11h
fission poolmgr 10.0.0.110 <none> 80/TCP 11h
fission router 10.0.0.141 <nodes> 80:31314/TCP 11h
kube-system default-http-backend 10.0.0.218 <nodes> 80:30001/TCP 32d
kube-system kube-dns 10.0.0.10 <none> 53/UDP,53/TCP 32d
kube-system kubernetes-dashboard 10.0.0.78 <nodes> 80:30000/TCP 32d
kube-system tiller-deploy 10.0.0.216 <none> 44134/TCP 13h
Could it be related to #533 somehow? Specifically to replace "LoadBalancer" by "NodePort" for Minikube installs?
@dfcarpenter I see. The only extra value that should need setting for Workflow on minikube is the --set router.host_port.enabled=true
as mentioned in the install-minikube guide -- even then, if it is not explicitly set, the router pod should run fine.
Wondering if you could supply what the router logs are saying when it is stuck in the pending state?
The following may turn up some clues:
kubectl -n deis logs $(kubectl -n deis get po -l app=deis-router -o name)
and/or
kubectl -n deis describe $(kubectl -n deis get po -l app=deis-router -o name)
@vdice Thanks. So the logs command doesn't show anything but the describe does.
Name: deis-router-3574011047-thqw0
Namespace: deis
Node: /
Labels: app=deis-router
pod-template-hash=3574011047
Annotations: kubernetes.io/created-by={"kind":"SerializedReference","apiVersion":"v1","reference":{"kind":"ReplicaSet","namespace":"deis","name":"deis-router-3574011047","uid":"95c3a738-6045-11e7-af40-0ab2ca7a0882...
Status: Pending
IP:
Controllers: ReplicaSet/deis-router-3574011047
Containers:
deis-router:
Image: quay.io/deis/router:v2.13.0
Ports: 8080/TCP, 6443/TCP, 2222/TCP, 9090/TCP
Liveness: http-get http://:9090/healthz delay=10s timeout=1s period=10s #success=1 #failure=3
Readiness: http-get http://:9090/healthz delay=1s timeout=1s period=10s #success=1 #failure=3
Environment:
POD_NAMESPACE: deis (v1:metadata.namespace)
Mounts:
/var/run/secrets/kubernetes.io/serviceaccount from deis-router-token-cmz9v (ro)
Conditions:
Type Status
PodScheduled False
Volumes:
deis-router-token-cmz9v:
Type: Secret (a volume populated by a Secret)
SecretName: deis-router-token-cmz9v
Optional: false
QoS Class: BestEffort
Node-Selectors: <none>
Tolerations: <none>
Events:
FirstSeen LastSeen Count From SubObjectPath Type Reason Message
--------- -------- ----- ---- ------------- -------- ------ -------
1h 1h 92 default-scheduler Warning FailedScheduling No nodes are available that match all of the following predicates:: PodFitsHostPorts (1).
I did also ensure that the router.host_port option was set to true
helm install deis/workflow --namespace deis --set router.host_port.enabled=true
NAME: eager-bumblebee
LAST DEPLOYED: Mon Jul 3 16:15:59 2017
NAMESPACE: deis
STATUS: DEPLOYED
RESOURCES:
==> v1/Service
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
deis-logger-redis 10.0.0.16 <none> 6379/TCP 4s
deis-nsqd 10.0.0.29 <none> 4151/TCP,4150/TCP 4s
deis-minio 10.0.0.179 <none> 9000/TCP 4s
deis-monitor-influxapi 10.0.0.71 <none> 80/TCP 4s
deis-router 10.0.0.54 <pending> 80:30508/TCP,443:31946/TCP,2222:31143/TCP,9090:32638/TCP 4s
deis-monitor-grafana 10.0.0.219 <none> 80/TCP 4s
deis-database 10.0.0.193 <none> 5432/TCP 4s
deis-monitor-influxui 10.0.0.174 <none> 80/TCP 4s
deis-logger 10.0.0.204 <none> 80/TCP 4s
deis-builder 10.0.0.207 <none> 2222/TCP 4s
deis-workflow-manager 10.0.0.246 <none> 80/TCP 4s
deis-controller 10.0.0.166 <none> 80/TCP 4s
deis-registry 10.0.0.161 <none> 80/TCP 4s
==> v1beta1/DaemonSet
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE-SELECTOR AGE
deis-monitor-telegraf 1 1 0 1 0 <none> 4s
deis-registry-proxy 1 1 0 1 0 <none> 4s
deis-logger-fluentd 1 1 0 1 0 <none> 4s
==> v1beta1/Deployment
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
deis-monitor-grafana 1 1 1 0 4s
deis-builder 1 1 1 0 4s
deis-logger 1 1 1 0 4s
deis-nsqd 1 1 1 0 4s
deis-monitor-influxdb 1 1 1 0 4s
deis-workflow-manager 1 1 1 0 4s
deis-registry 1 1 1 0 4s
deis-router 1 1 1 0 4s
deis-minio 1 1 1 0 4s
deis-logger-redis 1 1 1 0 4s
deis-database 1 1 1 0 3s
deis-controller 1 1 1 0 3s
==> v1/Secret
NAME TYPE DATA AGE
minio-user Opaque 2 4s
objectstorage-keyfile Opaque 2 4s
deis-router-dhparam Opaque 1 4s
==> v1/ConfigMap
NAME DATA AGE
slugrunner-config 1 4s
dockerbuilder-config 2 4s
slugbuilder-config 2 4s
==> v1/ServiceAccount
NAME SECRETS AGE
deis-logger-fluentd 1 4s
deis-logger 1 4s
deis-minio 1 4s
deis-database 1 4s
deis-controller 1 4s
deis-nsqd 1 4s
deis-router 1 4s
deis-builder 1 4s
deis-workflow-manager 1 4s
deis-monitor-telegraf 1 4s
deis-registry 1 4s
Not sure exactly how to troubleshoot but would deis/router#58 still be applicable?
@dfcarpenter ah it indeed appears to resemble deis/router#58 -- is there another service/k8s resource already using port 80 on the minikube host?
Hi Team,
Could someone please guide me. I am also trying to install Deis in minikube. While registering, obeserving below error.
[Deis]$ kubectl --namespace=deis describe svc deis-router
Name: deis-router
Namespace: deis
Labels: heritage=deis
Annotations: service.beta.kubernetes.io/aws-load-balancer-connection-idle-timeout=1200
Selector: app=deis-router
Type: LoadBalancer
IP: 10.0.0.121
Port: http 80/TCP
NodePort: http 30876/TCP
Endpoints: 172.17.0.9:8080
Port: https 443/TCP
NodePort: https 31032/TCP
Endpoints: 172.17.0.9:6443
Port: builder 2222/TCP
NodePort: builder 31934/TCP
Endpoints: 172.17.0.9:2222
Port: healthz 9090/TCP
NodePort: healthz 32103/TCP
Endpoints: 172.17.0.9:9090
Session Affinity: None
Events:
[Deis]$ minikube ip
192.168.99.100
[Deis]$
[Deis]$ deis register http://deis.10.0.0.121.nip.io
http://deis.10.0.0.121.nip.io/v1/ does not appear to be a valid Deis controller.
Make sure that the Controller URI is correct, the server is running and
your client version is correct.
Error: Get http://deis.10.0.0.121.nip.io/v1/: EOF
update:- no other service is using port 80.
That is the IP internal to the cluster. You'll want to use the value returned from minikube ip
as shown in the documentation. :)
Sorry for delay in responding. I tried with "minikube ip" also, observing below issue.
]$ minikube ip
192.168.99.100
[]$
[]$ deis register http://deis.192.168.99.100.nip.io
Error: http://deis.192.168.99.100.nip.io/v1/ does not appear to be a valid Deis controller.
Make sure that the Controller URI is correct, the server is running and
your client version is correct.
Looks like you’re using an older client as it’s hitting /v1. Can you try updating?
Current version, I am using is following:-
$ deis version
1.13.3
Will follow the document:- https://deis.com/docs/workflow/quickstart/install-cli-tools/
and update to v2.18.0. Will let you know the status.
Thanks a lot for providing the details.
After updating to v2.18.0
Able to register User in deis.
i tried to register user with deis register https://deis.app-testing.mydomain.io
but am getting the below error,
(don't bother abut double dot in domain name it's common and it's working. i already registered user for another domain like this)
Error: https://deis.app-testing.mydomain.io does not appear to be a valid Deis controller.
Make sure that the Controller URI is correct, the server is running and
your deis version is correct.
I have domain in route53. configured load balancer with ACM certificate and pointed load balancer to domain in route53.
my pods are running without any error. i don't know how to troubleshoot it?can anyone help?