問題の説明
冪等性機能を有効にした後、メッセージを送信すると、Cluster authorization failed というエラーメッセージがクライアントに返されます。
原因
クラウドストレージを使用するトピックを使用しています。このようなトピックは、冪等性機能をサポートしていません。
クラスターに対する
IDEMPOTENT_WRITE権限がメッセージ送信者に付与されていません。ローカルストレージを使用するトピックを使用し、ACL 機能を有効にしている場合、ApsaraMQ for Kafka ブローカーは、メッセージ送信者がクラスターに対する IDEMPOTENT_WRITE 権限を持っているかどうかを自動的に判断します。メッセージ送信者が権限を持っていない場合、メッセージの送信は失敗します。
解決策
クラウドストレージを使用するトピックを使用している場合は、冪等性機能を無効にしてください。この機能を無効にするには、クライアントで
enable.idempotenceパラメーターを false に設定します。説明バージョン 3.0 以降の ApsaraMQ for Kafka クライアントでは、冪等性機能が自動的に有効になります。
enable.idempotenceパラメーターは自動的に true に設定されます。ApsaraMQ for Kafka コンソールの [SASL ユーザー権限の管理] タブで、クラスターに対する IDEMPOTENT_WRITE 権限を対応するユーザーに追加します。詳細については、「ACL 機能を使用したアクセス制御」をご参照ください。