Hacker News new | ask | show | jobs
by db3pt0 1721 days ago
A few pieces of feedback.

Positive:

  - Multi-cluster support is a great feature! That's the main thing missing from Kowl, in my opinion
  - The UI feels clean
  - Message streaming feels smooth, and the search feature is a great addition. Also love the ability to see a message for a given partition/offset, and that JSON messages are nicely rendered as JSON!
Negative/Feature Requests:

  - The CleanupPolicy logic doesn't handle "delete,compact" (I see bug number 829 addressed a slightly related issue, maybe that logic could be expanded [1])
  - When viewing Cluster -> Topic -> Consumers, it seems like far more is being loaded than just consumer groups for that particular topic. It takes much longer to load than, e.g., Kowl does for pulling the same information
  - Similar feedback for when clicking on an individual consumer group (example URL path: "/ui/clusters/dev/consumer-groups/my-group"). It takes a very long time to load
  - If any permissions issues are encountered while loading the individual consumer group, the entire request fails. That wouldn't necessarily be an issue, but it is when you're loading all consumer groups, and not just the one requested
  - I don't see any docs on how to access a topic that is secured with certificates (Kowl's relevant config [2])
  - If a schema registry uses a self-signed certificate (or one signed by a corporation's CA), there's no way to pass the certificate through a config or skip validation (Kowl's relevant config [3]). As it is, you get a 500 error in the API call, but the UI doesn't show an error
Overall, it seems like a fair bit of thought went into this! But there are a few quirks that make it very tough to use in a corporate environment with (perhaps excessively) large Kafka clusters with hundreds/thousands of topics, or secured with internal certificates

1. https://github.com/provectus/kafka-ui/blob/master/kafka-ui-a...

2. https://github.com/cloudhut/kowl/blob/10776b81e45abfa716548d...

3. https://github.com/cloudhut/kowl/blob/10776b81e45abfa716548d...

1 comments

  Hi, db3pt0
  Thanks for detailed feedback!

  - The CleanupPolicy
  fixed issue 925 (https://github.com/provectus/kafka-ui/issues/925)

  - When viewing Cluster -> Topic -> Consumers, it seems like far more is being loaded than just consumer groups for that particular topic. 
  It takes much longer to load than, e.g., Kowl does for pulling the same information
  There is only one way to filter consumer groups by topic, get all consumer groups, enrich it with current members, committed offsets, and then filter them by topic.
  If you have a lot of consumer groups, this might take time to do it. We are thinking on this issue, and will try to improve it in the next versions.
  (https://github.com/provectus/kafka-ui/issues/927)

  - Similar feedback for when clicking on an individual consumer group (example URL path: "/ui/clusters/dev/consumer-groups/my-group"). It takes a very long time to load
 This looks rather strange. For single consumer we are getting consumer group description and then enrich it with topic info (end offsets). This works fast enough.

  - If any permissions issues are encountered while loading the individual consumer group, the entire request fails. That wouldn't necessarily be an issue, but it is when you're loading all consumer groups, and not just the one requested
  Thx for describing this. We created issue for this. (https://github.com/provectus/kafka-ui/issues/928)


  - I don't see any docs on how to access a topic that is secured with certificates (Kowl's relevant config [2])
  You have to pass ssl config stores to kafka client (we'll add docs. in the next versions https://github.com/provectus/kafka-ui/issues/929)

  KAFKA_CLUSTERS_0_PROPERTIES_SSL_KEYSTORE_LOCATION = /var/private/ssl/kafka.server.keystore.jks
  KAFKA_CLUSTERS_0_PROPERTIES_SSL_KEYSTORE_PASSWORD = test1234
  KAFKA_CLUSTERS_0_PROPERTIES_SSL_KEY_PASSWORD = test1234
  KAFKA_CLUSTERS_0_PROPERTIES_SSL_TRUSTSTORE_LOCATION = /var/private/ssl/kafka.server.truststore.jks
  KAFKA_CLUSTERS_0_PROPERTIES_SSL_TRUSTSTORE_PASSWORD = test1234

  - If a schema registry uses a self-signed certificate (or one signed by a corporation's CA), there's no way to pass the certificate through a config or skip validation (Kowl's relevant config [3]). As it is, you get a 500 error in the API call, but the UI doesn't show an error

  Same as above (https://github.com/provectus/kafka-ui/issues/930)
  KAFKA_CLUSTERS_0_PROPERTIES_SSL_TRUSTSTORE_LOCATION = /var/private/ssl/kafka.server.truststore.jks
  KAFKA_CLUSTERS_0_PROPERTIES_SSL_TRUSTSTORE_PASSWORD = test1234