Kubernetes service discovery

109 views
Skip to first unread message

elr1c...@gmail.com

unread,
Apr 17, 2018, 2:53:00 PM4/17/18
to vert.x
Looking at the doc of vertx service discovery, I understand that it is only possible to retrieve http-endpoints services with kubernetes.

So, I am not sure to have understood what is exactly possible to do or not with vertx service discovery bridge for Kubernetes. Actually, I would also like to retrieve services of type EventBusService or MessageSource registered on Openshift. All my services communicate via the event bus, not via http.

Is it possible ?

Thanks by advance.

Thomas SEGISMONT

unread,
Apr 18, 2018, 4:03:46 AM4/18/18
to ve...@googlegroups.com
Which doc did you take a look at?

There is a list of builtin service types on the website: https://vertx.io/docs/vertx-service-discovery/java/#_types_of_services

You can create your own as well: https://vertx.io/docs/vertx-service-discovery/java/#_implementing_your_own_service_type

--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/vertx.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/45fd9973-f4ef-4d3a-8dfc-42f584dfd6a4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

elr1c...@gmail.com

unread,
Apr 18, 2018, 4:20:03 AM4/18/18
to vert.x
Hi,


For this subject, it is said that : "Only http-endpoint are supported for now."

From that, I have understood that only HttpEndpoint is supported for Kubernetes from the list : https://vertx.io/docs/vertx-service-discovery/java/#_types_of_services

Am I wrong ? Can I also use EventBusService or MessageSource types ?


On Wednesday, April 18, 2018 at 10:03:46 AM UTC+2, Thomas Segismont wrote:
Which doc did you take a look at?

There is a list of builtin service types on the website: https://vertx.io/docs/vertx-service-discovery/java/#_types_of_services

You can create your own as well: https://vertx.io/docs/vertx-service-discovery/java/#_implementing_your_own_service_type
2018-04-17 20:53 GMT+02:00 <elr1c...@gmail.com>:
Looking at the doc of vertx service discovery, I understand that it is only possible to retrieve http-endpoints services with kubernetes.

So, I am not sure to have understood what is exactly possible to do or not with vertx service discovery bridge for Kubernetes. Actually, I would also like to retrieve services of type EventBusService or MessageSource registered on Openshift. All my services communicate via the event bus, not via http.

Is it possible ?

Thanks by advance.

--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+un...@googlegroups.com.

Thomas SEGISMONT

unread,
Apr 18, 2018, 4:37:53 AM4/18/18
to ve...@googlegroups.com
The Kubernetes *bridge* is a tool to _import_ Kubernetes services into Vert.x service discovery. As of Vert.x 3.5.1, it only supports importing Kubernetes HTTP services.

That doesn't mean you can't publish/retrieve EventBus or any kind of supported service when operating on Kubernetes.

To unsubscribe from this group and stop receiving emails from it, send an email to vertx+unsubscribe@googlegroups.com.

elr1c...@gmail.com

unread,
Apr 18, 2018, 4:46:11 AM4/18/18
to vert.x
Ok thanks a lot !

Clement Escoffier

unread,
Apr 18, 2018, 10:14:03 AM4/18/18
to ve...@googlegroups.com

On 18 Apr 2018, at 10:37, Thomas SEGISMONT <tsegi...@gmail.com> wrote:

The Kubernetes *bridge* is a tool to _import_ Kubernetes services into Vert.x service discovery. As of Vert.x 3.5.1, it only supports importing Kubernetes HTTP services.

As well as various databases (mongo, redis, mysql, postgres…).

Clement


Thomas SEGISMONT

unread,
Apr 18, 2018, 10:35:54 AM4/18/18
to ve...@googlegroups.com
2018-04-18 16:13 GMT+02:00 Clement Escoffier <clement....@gmail.com>:


On 18 Apr 2018, at 10:37, Thomas SEGISMONT <tsegi...@gmail.com> wrote:

The Kubernetes *bridge* is a tool to _import_ Kubernetes services into Vert.x service discovery. As of Vert.x 3.5.1, it only supports importing Kubernetes HTTP services.

As well as various databases (mongo, redis, mysql, postgres…).

 

Clement


--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/vertx.

Clement Escoffier

unread,
Apr 23, 2018, 2:21:01 AM4/23/18
to ve...@googlegroups.com

On 18 Apr 2018, at 16:35, Thomas SEGISMONT <tsegi...@gmail.com> wrote:



2018-04-18 16:13 GMT+02:00 Clement Escoffier <clement....@gmail.com>:


On 18 Apr 2018, at 10:37, Thomas SEGISMONT <tsegi...@gmail.com> wrote:

The Kubernetes *bridge* is a tool to _import_ Kubernetes services into Vert.x service discovery. As of Vert.x 3.5.1, it only supports importing Kubernetes HTTP services.

As well as various databases (mongo, redis, mysql, postgres…).


Good catch! 

Clement

Thomas SEGISMONT

unread,
Apr 23, 2018, 3:51:40 AM4/23/18
to ve...@googlegroups.com
I filed this: https://github.com/vert-x3/vertx-service-discovery/issues/88

@elr1co13013 would you like to contribute the doc fix?

--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/vertx.

elr1c...@gmail.com

unread,
Apr 30, 2018, 4:19:11 PM4/30/18
to vert.x
Hi Thomas,

sorry, I was on holidays last week. 

I saw Clement already did the fix, it is very good.

However, I have 2 other questions about service discovery (not only Kubernetes one) :
  • does service discovery supports load balancing ? according to this issue, it does not. Maybe it would be useful to add it in the doc too.
  • how do you manage tests (unit and integration) with ServiceDiscovery.create calls ?
Thanks by advance. 


Clement Escoffier

unread,
May 1, 2018, 4:41:49 AM5/1/18
to ve...@googlegroups.com

On 30 Apr 2018, at 22:19, elr1c...@gmail.com wrote:

Hi Thomas,

sorry, I was on holidays last week. 

I saw Clement already did the fix, it is very good.

However, I have 2 other questions about service discovery (not only Kubernetes one) :
  • does service discovery supports load balancing ? according to this issue, it does not. Maybe it would be useful to add it in the doc too.
It depends on what you are discovering. Typically in Kubernetes it does support the Kubernetes load balancing. However, on bare infrastructure it does not. The issue is open for a long time because it is tricky. Typically load balancing needs to be done in conjunction with health check to know what are the current set of healthy services. 
  • how do you manage tests (unit and integration) with ServiceDiscovery.create calls ?
You mean to inject services in your tests? You can register service explicitly using the `publish` method. 


Clement

Thanks by advance. 



--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+un...@googlegroups.com.
Visit this group at https://groups.google.com/group/vertx.

Julien Ponge

unread,
May 3, 2018, 3:17:56 AM5/3/18
to vert.x
  • how do you manage tests (unit and integration) with ServiceDiscovery.create calls ?
You mean to inject services in your tests? You can register service explicitly using the `publish` method.
Reply all
Reply to author
Forward
0 new messages