brooklin icon indicating copy to clipboard operation
brooklin copied to clipboard

Brooklin having issue connecting with zk server with java 21 runtime

Open Chandru0211 opened this issue 2 years ago • 3 comments

Subject of the issue

Describe your issue here. Brooklin unable to connect to the zk server with java 21 runtime. whereas it is able to connect to zk server with java 11 runtime.

Your environment

  • Operating System Linux
  • Brooklin version 4.1.0
  • Java version 21
  • Kafka version
  • ZooKeeper version 3.5.4

Steps to reproduce

Tell us how to reproduce this issue. Deploy the brooklin with java 21 runtime

Expected behaviour

Tell us what should happen Brooklin unable to connect to zk server and giving below error

2023-10-17 12:16:56.628 INFO 1 --- [main-SendThread(zk-cs:2181)] org.apache.zookeeper.ClientCnxn$SendThread : Opening socket connection to server zk-cs/:2181. Will not attempt to authenticate using SASL (unknown error) 2023-10-17 12:16:56.629 WARN 1 --- [main-SendThread(zk-cs:2181)] org.apache.zookeeper.ClientCnxn$SendThread : Session 0x0 for server zk-cs/:2181, unexpected error, closing socket connection and attempting reconnect java.nio.channels.UnresolvedAddressException at java.base/sun.nio.ch.Net.checkAddress(Unknown Source) at java.base/sun.nio.ch.Net.checkAddress(Unknown Source) at java.base/sun.nio.ch.SocketChannelImpl.checkRemote(Unknown Source) at java.base/sun.nio.ch.SocketChannelImpl.connect(Unknown Source) at org.apache.zookeeper.ClientCnxnSocketNIO.registerAndConnect(ClientCnxnSocketNIO.java:277) at org.apache.zookeeper.ClientCnxnSocketNIO.connect(ClientCnxnSocketNIO.java:287) at org.apache.zookeeper.ClientCnxn$SendThread.startConnect(ClientCnxn.java:1021) at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1064)

I able to hit the zk server from brooklin pod. so it must not be connection issue and with same setup i am able to connect with java 11 runtime.

Actual behaviour

Tell us what happens instead

Brooklin should able to connect zk server with java 21 runtime.

Chandru0211 avatar Oct 17 '23 12:10 Chandru0211

Hey, We have not certified java 21 with Brooklin. My recommendation is to use java 11 for production Brooklin instances at this time

Are you running this under docker or some sort of container? If yes, double check the networking is configured properly. Did you share zk-cs as the hostname for the purposes of this issue, or is that the actual hostname? Can you share the output of running the command hostname zk-cs from within the environment running Brooklin?

thomaslaw avatar Oct 17 '23 15:10 thomaslaw

deployed the zookeeper cluster in the k8s. And below is my zk service yaml

apiVersion: v1 kind: Service metadata: name: zk-cs spec: ports: - port: 2181 name: client

The same set of configuration works fine when the brooklin running in java 11 run time. whereas when we try to run the brooklin in jdk17 or jdk21 runtime. it failing to connect with zk service.

Chandru0211 avatar Oct 18 '23 08:10 Chandru0211

Can it run on Java 17?

1arrow avatar Oct 18 '23 11:10 1arrow