-
Notifications
You must be signed in to change notification settings - Fork 25
update: Rack awareness for Kafka connect and MM2 #1183
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -25,6 +25,9 @@ Follower fetching is supported on AWS (Amazon Web Services) and Google Cloud. | |
|
|
||
| ## Identify availability zone | ||
|
|
||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. NIce to have, a one liner suggestion on how to do so/
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Note, we use the logical name, which maps randomly to the physical AZ name per AWS account. So this is fine if same account, if using cross account this is a limitation I believe. |
||
| Before configuring client-side rack awareness, identify the AZs where your Kafka brokers | ||
| run. | ||
|
|
||
| - **AWS**: Availability zone (AZ) names can vary across different accounts. | ||
| The same physical location might have different AZ names in different accounts. To | ||
| ensure consistency when configuring `client.rack`, use the AZ ID, which remains the same | ||
|
|
@@ -39,8 +42,8 @@ Follower fetching is supported on AWS (Amazon Web Services) and Google Cloud. | |
|
|
||
| ## Enable follower fetching | ||
|
|
||
| Use either of the following methods to enable follower fetching on your | ||
| Aiven for Apache Kafka service: | ||
| Use one of the following methods to enable follower fetching on your Aiven for | ||
| Apache Kafka service. | ||
|
|
||
| <Tabs groupId="config-methods"> | ||
| <TabItem value="console" label="Console" default> | ||
|
|
@@ -164,6 +167,32 @@ client.rack=europe-west1-d | |
| | Google Cloud | `europe-west1-c` | Fetch from the nearest replica in their AZ | Reduced latency and network costs | | ||
| | Google Cloud | `europe-west1-d` | Fetch from the leader (no matching `broker.rack`) | No follower fetching possible | | ||
|
|
||
| ## Use follower fetching with Kafka Connect and MirrorMaker 2 | ||
|
|
||
| Aiven for Apache Kafka® Connect and Aiven for Apache Kafka® MirrorMaker 2 use follower | ||
| fetching when it is enabled on your Aiven for Kafka service. | ||
|
|
||
| ### Kafka Connect | ||
|
|
||
| Kafka Connect sets `consumer.client.rack` based on each node’s availability zone. | ||
| To disable rack awareness for a specific connector, set: | ||
|
|
||
| ```json | ||
| { | ||
| "consumer.override.client.rack": "noop" | ||
| } | ||
| ``` | ||
|
|
||
| ### MirrorMaker 2 | ||
|
|
||
| MirrorMaker 2 uses a rack ID based on the node’s availability zone when | ||
| `follower_fetching_enabled=true` (default). You can override this by setting a `rack_id` | ||
| in the integration configuration. | ||
|
|
||
| Rack awareness does not apply to external Kafka clusters. | ||
|
|
||
| See [Configure rack awareness in MirrorMaker 2](/docs/products/kafka/kafka-mirrormaker/howto/mm2-rack-awareness). | ||
|
|
||
| ## Verify follower fetching | ||
|
|
||
| After configuring follower fetching, monitor for a decrease in cross-availability zone | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is it enabled by default, if so can you confirm that. I was left wondering if it was.