Kourier Service External-IP still pending..

597 views
Skip to first unread message

David Sargrad

unread,
Jun 16, 2022, 8:23:03 AM6/16/22
to Knative Users
Hi Guys, 
I have a K3S cluster that is using klipper LB. AS you see in the following, the klipper load balancer is able to provide external-ip's quite readily.

[root knative]# k get services
NAME               TYPE           CLUSTER-IP      EXTERNAL-IP                     PORT(S)                     AGE
kubernetes         ClusterIP      10.43.0.1       <none>                          443/TCP                     15d
test               LoadBalancer   10.43.100.59    192.168.56.128,192.168.56.129   19081:32284/TCP             4d8h
nginx              LoadBalancer   10.43.200.125   192.168.56.128,192.168.56.129   9080:32641/TCP              4d2h
the-app            LoadBalancer   10.43.51.139    192.168.56.128,192.168.56.129   19082:30596/TCP             13h
operator-webhook   ClusterIP      10.43.63.144    <none>                          9090/TCP,8008/TCP,443/TCP   3h31m


I'm new to KNative. I've installed the operator, eventing, and serving. 

Currently I am trying to get my knative services exposed via external-ip. However its currently pending.

[root master knative]# !191
k -n knative-serving get service kourier
NAME      TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)                      AGE
kourier   LoadBalancer   10.43.206.100   <pending>     80:30102/TCP,443:31882/TCP   3h9m


I'm looking for a couple of pointers to help me figure out the missing magic.

Thanks in advance for any guidance.


David Sargrad

unread,
Jun 16, 2022, 9:01:59 AM6/16/22
to Knative Users
And of course, because I am not yet exposing the service properly, though the ksvc is registered:

[root master hello]# k get ksvc
NAME                URL                                            LATESTCREATED             LATESTREADY               READY   REASON
helloworld-nodejs   http://helloworld-nodejs.default.example.com   helloworld-nodejs-00001   helloworld-nodejs-00001   True


The hello world service is not yet accessible:

[root master hello]# k get services

NAME                              TYPE           CLUSTER-IP      EXTERNAL-IP                                          PORT(S)                                              AGE
kubernetes                        ClusterIP      10.43.0.1       <none>                                               443/TCP                                              15d
test                              LoadBalancer   10.43.100.59    192.168.56.128,192.168.56.129                        19081:32284/TCP                                      4d9h
the-app                           LoadBalancer   10.43.51.139    192.168.56.128,192.168.56.129                        19082:30596/TCP                                      14h
operator-webhook                  ClusterIP      10.43.63.144    <none>                                               9090/TCP,8008/TCP,443/TCP                            4h16m
helloworld-nodejs-00001-private   ClusterIP      10.43.104.125   <none>                                               80/TCP,443/TCP,9090/TCP,9091/TCP,8022/TCP,8012/TCP   7m59s
helloworld-nodejs-00001           ClusterIP      10.43.136.35    <none>                                               80/TCP,443/TCP                                       7m59s
helloworld-nodejs                 ExternalName   <none>          kourier-internal.knative-serving.svc.cluster.local   80/TCP                                               7m57s
nginx                             LoadBalancer   10.43.239.207   192.168.56.128,192.168.56.129                        9080:30308/TCP                                       115s

David Sargrad

unread,
Jun 16, 2022, 9:08:36 AM6/16/22
to Knative Users
I see an interesting response when trying to use the "-private" address (not sure if this is a valid way to query the service within the cluster. I'll try to add the cluster-local label).
In the following I am inside an nginx pod trying to query the service.

root@nginx-65b69c4fd-n82nn:/# curl http://helloworld-nodejs-00001-private
^C
root@nginx-65b69c4fd-n82nn:/# curl http://helloworld-nodejs-00001
Error getting active endpoint: revision.serving.knative.dev "" not found
root@nginx-65b69c4fd-n82nn:/# curl http://helloworld-nodejs.default.example.com
curl: (6) Could not resolve host: helloworld-nodejs.default.example.com


Roberto Fabrizi

unread,
Mar 24, 2023, 11:51:23 AM3/24/23
to Knative Users
I have the same issue, did you solve it? Thank you!

Evan Anderson

unread,
Mar 24, 2023, 12:10:51 PM3/24/23
to Roberto Fabrizi, Knative Users
https://github.com/k3s-io/klipper-lb says:

> If there are no free host ports, the service load balancer will stay in pending.

I wonder if the host port is already in use by another ingress load balancer?

--
You received this message because you are subscribed to the Google Groups "Knative Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to knative-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/knative-users/84564386-a4ae-4cd2-8e8f-f56beeab2381n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages