本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Kafka 配額管理輸送量
由於 MSK Replicator 可作為來源叢集的取用者,因此複寫可能會導致來源叢集上的其他取用者受到限流。限流量取決於您在來源叢集上擁有的讀取容量,以及您正在複寫的資料輸送量。
您可以在來源和目標叢集上設定複寫器的 Kafka 配額,以控制 MSK 複寫器可以使用多少容量。建議使用網路頻寬配額。網路頻寬配額會針對一個或多個共用配額的用戶端,定義的位元組率閾值 (定義為每秒位元組數)。此配額是根據每個代理程式而定義。
請依照下列步驟套用配額:
擷取來源叢集的引導伺服器字串。請參閱 取得 Amazon MSK 叢集的引導代理程式。
擷取 MSK Replicator 使用的服務執行角色 (SER)。這是您用於
CreateReplicator請求的 SER。您也可以從DescribeReplicator回應中提取 SER。使用 Kafka CLI 工具,對來源叢集執行下列命令:
./kafka-configs.sh --bootstrap-server <source-cluster-bootstrap-server> \ --alter \ --add-config 'consumer_byte_rate=<quota_in_bytes_per_second>' \ --entity-type users \ --entity-name arn:aws:sts::<customer-account-id>:assumed-role/<ser-role-name>/<customer-account-id> \ --command-config <client-properties-for-iam-auth>執行命令之後,請確認
ReplicatorThroughput指標不會超過您設定的配額。
如果您在多個 MSK Replicator 之間重複使用服務執行角色,則它們都受限於此配額。如果您想要維護每個複寫器的個別配額,請使用個別的服務執行角色。
如需有關將 MSK IAM 身分驗證與配額搭配使用的詳細資訊,請參閱 Multi-tenancy Apache Kafka clusters in Amazon MSK with IAM access control and Kafka Quotas – Part 1
警告
設定極低consumer_byte_rate可能會導致 MSK Replicator 以非預期的方式運作。