kpow-ce: lastest dont return the brokers, topics from my cluster openshift strimzi kafka 4.0
Version of Kpow 94.4
Describe the issue this message : 08:20:05.015 ERROR [FHScheduler_Worker-4] kpow.observe.kafka – ZX9A-mU4Thq-dENe77YVhA: unable to calculate telemetry plan from {:fetch {:kafka/replica 200, :kafka/broker 12, :kafka/group 24, :kafka/topic-offset 200, :kafka/broker-config 12, :kafka/topic-config 48}, :id {:id "ZX9A-mU4Thq-dENe77YVhA", :domain :cluster}, :job-id "cc2d3bf2-988f-4024-b7cc-257c1831fd43", :cluster {:command :kafka/cluster, :error ["org.apache.kafka.common.errors.TimeoutException" "Timed out waiting for a node assignment. Call: listNodes"]}, :replica {}}
when i browse : localhost:3000 , i see the portal kpow (the name of cluter is correctly), but all is 0, no broker, no topic... but if im here, it is because kpow can connected my cluster no ?
When i see on my cluster i have a pool of 3 brokers/controllers, into kafka i have one topic = "my-topic" and it is used by 2 microservices. on for write every 10 secondes, and other to read my topic to log.
Additional context i have a licence community
The Kafka Bootstrap URL for your cluster.
BOOTSTRAP=my-cluster-kafka-kafka-tls-bootstrap-kafka.apps.5.lab:9093 ENVIRONMENT_NAME=my-cluster-kafka CLUSTER_ID=ZX9A-mU4Thq-dENe77YVhA
Your license details.
LICENSE_ID=xxxxxxxxxx LICENSE_CODE=KPOW_COMMUNITY LICENSEE=xxxxxxxx LICENSE_EXPIRY=2026-08-05 LICENSE_SIGNATURE=
Config cluster Service--- ports: - name: tcp-tls protocol: TCP port: 9093 targetPort: tcp-tls internalTrafficPolicy: Cluster Route--- spec: host: my-cluster-kafka-kafka-tls-bootstrap-kafka.apps.5.lab to: kind: Service name: my-cluster-kafka-kafka-tls-bootstrap weight: 100 port: targetPort: 9093 tls: termination: passthrough wildcardPolicy: None
Thanks you.
Hi @marteloudini thanks for your report.
The error in your logs is showing that Kpow is unable to connect to your cluster. We use the standard Java client libraries to connect to Kafka, and this error comes from those libraries:
org.apache.kafka.common.errors.TimeoutException" "Timed out waiting for a node assignment. Call: listNodes"
Normally that means that either:
- There is a network issue connecting to Kafka (normally a port or firewall issue, because if it was an unknown host or DNS issue you would get an UnknownHostException rather than a timeout exception.
- This is an issue with your SASL or mTLS configuration (e.g. wrong user credentials). When the credentials are incorrect, the Kafka libraries respond with a timeout exception like you have
- In rare occasions the bootstrap can be wrong (e.g. one of the entries has the wrong port or hostname)
The more confusing fact is that Kpow seemed to start even though it can't connect to your target cluster. I'll try and reproduce that locally, but in the meantime I would check 1-3 above.
Hi @marteloudini just a quick update, confirming that I can reproduce this locally.
This is a bug in the community version of Kpow, in this case Kpow should fail to start completely (that is the behaviour of our commercial product) but the community version start the UI and logs the connection errors.
This will cause confusion, as the UI is loaded it looks like Kpow should work, but in truth Kpow cannot connect to your cluster for some reason due to either network, or bootstrap configuration problems.
To replicate I ran Kafka on my local machine with our kpow-local repository. I then started kpow-ce connecting to the correct bootstrap hostnames, but on the wrong ports. I expected Kpow to fail to start, but Kpow CE starts and logs the error like you describe.
In your case the solution will be to double check your bootstrap configuration, including SASL parameters, certificates, etc.
In the commercial version of Kpow you would see the following error (and no Kpow UI started)
-- Components ------------------------------------------------------------------
~ ERROR vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
Exception starting Kpow. Please check your configuration:
- Failing component: [:kafka/primary-cluster 1 :kafka/topic "__oprtr_metric_pt1m"]
- Inputs:
* topic: '__oprtr_metric_pt1m'
* config: '{"retention.ms" "7200000", "segment.ms" "5400000", "segment.bytes" "104857600"}'
* num-partitions: '6'
* replication-factor: '3'
* topic-compression: 'gzip'
- Message: Timed out waiting for a node assignment. Call: listTopics
- Explanation: Cannot connect to the specified cluster. Please make sure your connection details are valid, or that Kpow has network access to the Kafka cluster. Have you checked your firewall rules?
- Relevant documentation: https://docs.factorhouse.io/kpow-ee/config/kafka-cluster
~ ERROR ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-- Help ------------------------------------------------------------------------
So we will replicate that behaviour in our community product shortly.
Hey @marteloudini just checking in to see if this explanation was helpful to you?
I'll leave this ticket open until we resolve the underlying UX issue.