-
Notifications
You must be signed in to change notification settings - Fork 6
Home
Tom Bentley edited this page May 24, 2022
·
4 revisions
Welcome to the design wiki!
There are a number of potential use cases which have been identified which could be solved through a proxy at the Kafka protocol level. The list below is neither ordered nor exhaustive. Each page describes the use case and the associated challenges in more detail.
- Configuration Policy Enforcement For instance enforcing limits on the total number of partitions within a cluster. There are open questions whether this is strictly enforceable and whether or not we should try to do it in upstream Kafka before resorting to a proxy
- Topic Encryption Enable certain topics to be encrypted to avoid SREs who have access to the underlying disks to be able to read the data.
- Tar Pit Slow down malicious or badly behaved users. The ability to disconnect individual connections might allow us more options wrt reauthentication.
- Multitenancy Enable topic and user isolation within a single Kafka cluster
- Authentication Performing authentication in a proxy reduces load from the Kafka brokers
- Schema validation Ensure that all messages on a given topic adhere to a particular schema
- Audit logging Keep track of who created a topic, how much did they produce, etc. Getting client IP Addresses (not currently possible)