Skip to content
This repository has been archived by the owner on Feb 20, 2024. It is now read-only.

Helm chart deployment is failing when my cluster-domain is not cluster.local #634

Open
mikeoleary opened this issue Feb 13, 2023 · 1 comment

Comments

@mikeoleary
Copy link

I have used helm to install Confluent for Kubernetes, starting with the quickstart guide.

However, my cluster's DNS domain is not cluster.local. In my case it's a custom and compliant value that is in the format xxx.yyy.tenant.local

When I follow the steps to deploy via helm, my first Zookeeper pod in my StatefulSet constantly throws this error:

[ERROR] 2023-02-13 18:42:16,502 [ListenerHandler-zookeeper-0.zookeeper.confluent.svc.cluster.local:3888] org.apache.zookeeper.server.quorum.QuorumCnxManager acceptConnections - Exception while listening
java.net.SocketException: Unresolved address
        at java.base/java.net.ServerSocket.bind(ServerSocket.java:393)
        at java.base/java.net.ServerSocket.bind(ServerSocket.java:354)
        at org.apache.zookeeper.server.quorum.QuorumCnxManager$Listener$ListenerHandler.createNewServerSocket(QuorumCnxManager.java:1135)
        at org.apache.zookeeper.server.quorum.QuorumCnxManager$Listener$ListenerHandler.acceptConnections(QuorumCnxManager.java:1064)
        at org.apache.zookeeper.server.quorum.QuorumCnxManager$Listener$ListenerHandler.run(QuorumCnxManager.java:1033)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)

Note, there is no service with a DNS name of "zookeeper.confluent.svc.cluster.local" which you can see is attempted in the logs. There is a service with DNS name of "zookeeper.confluent.svc.xxx.yyy.tenant.local" but that is not what is being accessed by this container.

How can I deploy Confluent for Kubernetes on a cluster with a custom cluster domain?

@MYuitsu
Copy link

MYuitsu commented Aug 3, 2023

@mikeoleary You can use

spec:
  k8sClusterDomain: "xxx.yyy.tenant.local"

You can find more config in https://docs.confluent.io/operator/current/co-api.html#tag/Zookeeper

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants