Add Kafka to TDP #27
-
Apache KafkaPresentation of the project
Kafka is the de facto standard for building scalable fault-tolerant messaging systems. Why should it be included in TDP?
Targeted version of the projectKafka 3.2.x (latest version) Note: Unfortunately Kafka Raft metadata mode (that allows running Kafka without ZooKeeper) is still not production-ready in this release. See KRaft (aka KIP-500) mode Preview Release. Potential impacts on TDPZooKeeperKafka 3.x uses ZooKeeper version 3.6.3 (see dependencies.gradle) whereas the version packaged in TDP is 3.4.6. Here are a few things that I have noted:
This brings me to the following questions: Can we integrate another version of ZooKeeper into TDP? If yes, how will we modify tdp-collection's architecture? |
Beta Was this translation helpful? Give feedback.
Replies: 5 comments 5 replies
-
I think we will all agree that Kafka fits well into TDP due to its integration with the other components. As for the ZooKeeper dependency, we can try and see if our current K̶a̶f̶k̶a̶ ZooKeeper role is able to deploy a ZooKeeper in version 3.6.x. If not maybe we can do a ZooKeeper subtask inside the Kafka role like we did for Solr in the Ranger role ? What do you think @gboutry @rpignolet @nschung ? |
Beta Was this translation helpful? Give feedback.
-
Kafka should be integrated as an option. It can be deployed in dedicated architecture. Therefore, Kafka can use its compatible ZK version IMO. |
Beta Was this translation helpful? Give feedback.
-
When reviewing PR related to Kafka, I think we didn't discuss enough about adding Kafka to TDP. For me the goal, when adding a service/component to TDP, is to have a consistent ecosystem i.e. the new service/component should interact with other service/component inside TDP. Another point is about the dedicated ZooKeeper, we should talk about it because, just to add Kafka we deploy another ZooKeeper cluster and this is really the good solution ? I think that it should, at least, be moved to |
Beta Was this translation helpful? Give feedback.
-
As suggested in Issue #340 of tdp-collection, starting with a Kafka 2.8.1 may be a good idea. |
Beta Was this translation helpful? Give feedback.
-
As suggested by @rpignolet and @Edouard-R I am going to move Kafka and it's dedicated ZooKeeper to |
Beta Was this translation helpful? Give feedback.
I think we will all agree that Kafka fits well into TDP due to its integration with the other components.
As for the ZooKeeper dependency, we can try and see if our current K̶a̶f̶k̶a̶ ZooKeeper role is able to deploy a ZooKeeper in version 3.6.x. If not maybe we can do a ZooKeeper subtask inside the Kafka role like we did for Solr in the Ranger role ?
What do you think @gboutry @rpignolet @nschung ?