[keycloak-dev] TCP for JGroups and bind options

Sebastian Laskawiec slaskawi at redhat.com
Thu Apr 11 04:01:47 EDT 2019


Hey,

I've been working on JGroups bind settings for Keycloak Container Image
recently and we had a discussion with Stian about changing both binding
options and transport for JGroups.

As you probably know, we use standalone-ha.xml as a default configuration
for our image. This means, that Infinispan boots up in clustered mode. At
the moment, we use the default transport from the configuration, which is
UDP (with PING as discovery).

Even though UDP transport is a bit faster for larger clusters, it often
doesn't work out of the box in cloud environments (like AWS for the
instance). Of course, the JGroups stack can easily be changed by using the
`-Djboss.default.jgroups.stack=tcp` switch.

I'm planning to revise this piece and change the default transport to TCP
(probably by adding `-Djboss.default.jgroups.stack=tcp` switch to the
default options).

I also proposed, and would like to ask you to try it out, changing the bind
parameters to match IPv4 [1]. Previously, JGroups tried to bind to wrong
interfaces, including `fe80::5003:8eff:fefa:3e53%tap0` exposed by Podman.

Please have a look at the Pull Request [1], check if it works for you and
let me know what you think about using TCP as default transport for JGroups.

Thanks,
Sebastian

[1] https://github.com/jboss-dockerfiles/keycloak/pull/186


More information about the keycloak-dev mailing list