Connect クラスタとコネクタのトラブルシューティング

このドキュメントでは、Connect クラスタとコネクタのトラブルシューティングについて説明します。

切り離された状態

Connect クラスタは DETACHED 状態になることがあります。この状態は、基盤となる Kafka クラスタが削除されたか、削除中であることを意味します。Kafka Connect はすべての状態を Kafka に保存するため、Connect クラスタは永続的に停止します。Connect クラスタを再接続することはできません。このクラスタは削除する必要があります。

クラスタあたりの上限

管理する Connect タスクの合計数が多すぎると、単一の Connect クラスタが応答しなくなることがあります。この問題を回避するため、次の制限が適用されます。

  • Connect クラスタには最大 20 個のコネクタを含めることができます。
  • コネクタには最大 200 個のタスクを設定できます。

コネクタがさらに必要な場合は、2 つ目の Connect クラスタを同じ Kafka クラスタに接続できます。

コネクタのトラブルシューティング

コネクタの起動に失敗した場合や、実行中に失敗した場合は、運用状態Failed になります。コネクタの実行中にエラーが発生することもあります。このエラーはコネクタログに表示されます。

コネクタのトラブルシューティングを行うには、次の操作を行います。

  1. コネクタログを表示してエラーを特定します。詳細については、コネクタログを表示するをご覧ください。

  2. エラーの根本原因を特定します。次のトピックでは、コネクタのタイプごとに発生する可能性のある特定のエラーについて説明します。

  3. コネクタが正しく構成されていない場合は、コネクタの構成を更新してから、コネクタを再開します。一時的な障害では、構成の変更が必要ない場合があります。

ベスト プラクティスとして、コネクタのタスク再起動ポリシーを指数バックオフで再起動するように設定します。この設定は、一時的なエラーによるコネクタの障害を回避するのに役立ちます。

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 クラスタによって作成されたメタデータ トピックが削除されました。

このエラーを解決するには、次の操作を行います。

  1. プライマリ Kafka クラスタでメタデータ トピックを見つけます。メタデータ トピックの名前は次の形式で指定します。

    connect-status-PROJECT_ID-LOCATION-CONNECT_CLUSTER_NAME-UNIQUE_ID

    次に例を示します。

    connect-status-project1-us-central1-connect1-3c563900-a4e4-4eDe-88f7-73b16d6344d2

  2. メタデータ トピックごとに、トピックを編集し、Key-Value ペア cleanup.policy:compact を [デフォルト以外のパラメータ] フィールドに追加します。詳細については、Kafka トピックを更新するをご覧ください。

次のステップ