このドキュメントでは、Connect クラスタとコネクタのトラブルシューティングについて説明します。
切り離された状態
Connect クラスタは DETACHED 状態になることがあります。この状態は、基盤となる Kafka クラスタが削除されたか、削除中であることを意味します。Kafka Connect はすべての状態を Kafka に保存するため、Connect クラスタは永続的に停止します。Connect クラスタを再接続することはできません。このクラスタは削除する必要があります。
クラスタあたりの上限
管理する Connect タスクの合計数が多すぎると、単一の Connect クラスタが応答しなくなることがあります。この問題を回避するため、次の制限が適用されます。
- Connect クラスタには最大 20 個のコネクタを含めることができます。
- コネクタには最大 200 個のタスクを設定できます。
コネクタがさらに必要な場合は、2 つ目の Connect クラスタを同じ Kafka クラスタに接続できます。
コネクタのトラブルシューティング
コネクタの起動に失敗した場合や、実行中に失敗した場合は、運用状態が Failed になります。コネクタの実行中にエラーが発生することもあります。このエラーはコネクタログに表示されます。
コネクタのトラブルシューティングを行うには、次の操作を行います。
コネクタログを表示してエラーを特定します。詳細については、コネクタログを表示するをご覧ください。
エラーの根本原因を特定します。次のトピックでは、コネクタのタイプごとに発生する可能性のある特定のエラーについて説明します。
コネクタが正しく構成されていない場合は、コネクタの構成を更新してから、コネクタを再開します。一時的な障害では、構成の変更が必要ない場合があります。
ベスト プラクティスとして、コネクタのタスク再起動ポリシーを指数バックオフで再起動するように設定します。この設定は、一時的なエラーによるコネクタの障害を回避するのに役立ちます。
Connect クラスタのエラー
このセクションでは、Connect クラスタで発生する可能性のあるエラーについて説明します。
メタデータ トピックに 'cleanup policy=delete' がある
Connect クラスタのログに、次のようなエラーが表示されます。
org.apache.kafka.common.config.ConfigException: Topic 'connect-offsets-
PROJECT_ID-LOCATION-CONNECT_CLUSTER_NAME-UNIQUE_ID' supplied via the
'offset.storage.topic' property is required to have 'cleanup policy=compact' to
guarantee consistency and durability of source connector offsets, but found the
topic currently has 'cleanup policy=delete'.
このエラーは、次の理由で発生する可能性があります。
- Connect クラスタのプライマリ Kafka クラスタが削除され、同じ名前で再作成された。
- プライマリ Kafka クラスタの Connect クラスタによって作成されたメタデータ トピックが削除されました。
このエラーを解決するには、次の操作を行います。
プライマリ Kafka クラスタでメタデータ トピックを見つけます。メタデータ トピックの名前は次の形式で指定します。
connect-status-PROJECT_ID-LOCATION-CONNECT_CLUSTER_NAME-UNIQUE_ID次に例を示します。
connect-status-project1-us-central1-connect1-3c563900-a4e4-4eDe-88f7-73b16d6344d2メタデータ トピックごとに、トピックを編集し、Key-Value ペア
cleanup.policy:compactを [デフォルト以外のパラメータ] フィールドに追加します。詳細については、Kafka トピックを更新するをご覧ください。