-
Notifications
You must be signed in to change notification settings - Fork 99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DNS discovery mode not working any more after OpenShift Update from 4.7.9 to 4.7.11 #323
Milestone
Comments
Sample program source:
Working example:
|
I think the solution with |
npomaroli
added a commit
to npomaroli/hazelcast-kubernetes
that referenced
this issue
Jun 14, 2021
PR is here: #325 |
npomaroli
added a commit
to npomaroli/hazelcast-kubernetes
that referenced
this issue
Jun 15, 2021
npomaroli
added a commit
to npomaroli/hazelcast-kubernetes
that referenced
this issue
Jun 15, 2021
Here is the other PR: #327 |
leszko
pushed a commit
that referenced
this issue
Jun 15, 2021
leszko
pushed a commit
that referenced
this issue
Jun 15, 2021
Thanks for you work on this issue! |
The fix is released in versions 1.5.6 and 2.2.3 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
We have a StatefulSet with pods running Java software that embeds OrientDB 3.1 in a cluster.
We configured hazelcast to use
com.hazelcast.kubernetes.HazelcastKubernetesDiscoveryStrategy
with DNS discovery of the hazelcast service in OpenShift.Everything worked fine in OpenShift 4.7.9 but after updating to OpenShift 4.7.11 the cluster nodes could not find each other any more. The logged error messages were all like
DNS lookup for serviceDns 'service-name' failed: name not found
.After digging into the code, we could narrow the issue down to the method used for DNS resolving in class
com.hazelcast.kubernetes.DnsEndpointResolver
. We extracted this method (which uses JNDI andcom.sun.jndi.dns.DnsContextFactory
) into a sample program and got the Exceptionwhereas resolving the service DNS simply by calling
always worked and returned the IP addresses of all pods.
Is there a reason, why DNS resolving is done with JNDI and
com.sun.jndi.dns.DnsContextFactory
and not withInetAddress.getAllByName()
? or could this be changed?The JRE we are using is
The text was updated successfully, but these errors were encountered: