メインコンテンツへスキップ
Note: このコネクタでは、Apache Kafka またはAzure Event Hubs のいずれかに対して認証できます。

Apache Kafka コネクタを追加

Apache Kafka への認証

コネクタを追加したら、必要なプロパティを設定します。 Bootstrap Servers: 接続先のApache Kafka ブートストラップサーバーのアドレスを入力します。 CData Sync では、複数の方法でApache Kafka に対して認証できます。以下から認証方法を選択し、認証の詳細が記載された該当セクションに進んでください。

None

Plain

SCRAM

SCRAM(SHA-256)資格情報で接続するには、以下のプロパティを指定します:
  • Auth Scheme: SCRAM を選択します。
  • User: Apache Kafka アカウントへの認証に使用するユーザー名を入力します。
  • Password: Apache Kafka アカウントへの認証に使用するパスワードを入力します。

SCRAM-SHA-512

SCRAM(SHA-512)資格情報で接続するには、以下のプロパティを指定します:
  • Auth Scheme: SCRAM-SHA-512 を選択します。
  • User: Apache Kafka アカウントへの認証に使用するユーザー名を入力します。
  • Password: Apache Kafka アカウントへの認証に使用するパスワードを入力します。

Kerberos

Kerberos で接続するには、以下のプロパティを指定します:
  • Auth Scheme: Kerberos を選択します。
  • Kerberos SPN: Kerberos ドメインコントローラーのサービスプリンシパル名(SPN)を入力します。
  • Kerberos Service Name: 認証に使用するKerberos サービスの名前を入力します。
  • (オプション)Kerberos Keytab File: Kerberos プリンシパルと暗号化キーのペアを含むキータブファイルを入力します。
  • (オプション)Use Kerberos Ticket Cache: キータブファイルの代わりにログインユーザーのチケットキャッシュを使用するには、True を選択します。デフォルト値はFalse です。

Azure Event Hubs への認証

コネクタを追加したら、Azure Event Hubs に接続するために以下の必須プロパティを設定します: Bootstrap Servers には、接続先のApache Kafka ブートストラップサーバーのアドレスを入力します。 CData Sync では、複数の方法でApache Event Hubs に対して認証できます。以下から認証方法を選択し、認証の詳細が記載された該当セクションに進んでください。

SSL Certificate

Secure Sockets Layer(SSL)クライアント証明書で接続するには、以下のプロパティを指定します:
  • Auth Scheme: SSLCertificate を選択します。
  • SSL Client Cert: Apache Kafka ブローカーへの検証に使用するSSL クライアント証明書を入力します。
  • SSL Client Cert Type: Apache Kafka ブローカーへの接続に使用するSSL クライアント証明書の形式を選択します:
    • JKSFILE
    • PFXFILE
    • PEMKEY_FILE(デフォルト)
    • PEMKEY_BLOB
  • (オプション)SSL Client Cert Password: SSL クライアント証明書の復号化に使用するパスワードを入力します。

Azure Active Directory

Azure Active Directory(AD)資格情報で接続するには、以下のプロパティを指定します:
  • Azure Tenant: データへのアクセスに使用するMicrosoft Online テナントを入力します。テナントを指定しない場合、Sync はデフォルトのテナントを使用します。
  • OAuth Client Id: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントId を入力します。
  • OAuth Client Secret: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントシークレットを入力します。

Azure Managed Service Identity

Azure Service Principal

Azure サービスプリンシパルとクライアントシークレットで接続するには、次のプロパティを設定します:

  • Auth Scheme:AzureServicePrincipal を選択。
  • Azure Tenant:接続するMicrosoft Online テナントを入力。
  • OAuth Client Id:OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントId を入力。
  • OAuth Client Secret:OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントシークレットを入力。

アプリケーションのOAuth クライアントId およびクライアントシークレットを取得するには:

  1. Azure ポータルにログインします。
  2. 左ナビゲーションペインですべてのサービスを選択します。次にアプリの登録を検索し選択します。
  3. 新規登録をクリックします。
  4. アプリケーションの名前を入力して任意のAzure AD ディレクトリ - マルチテナントを選択します。
  5. アプリケーションを作成したら、概要セクションに表示されるアプリケーション (クライアント) ID の値をコピーします。この値をOAuth クライアントId として使用します。
  6. 証明書とシークレットセクションに移動して、アプリケーションの新しいクライアント シークレットを選択します。
  7. 有効期間を指定してクライアントシークレットを保存します。保存するとキーの値が表示されます。
  8. 値は一度しか表示されないので、コピーしておきます。この値をOAuth クライアントシークレットとして使用します。
  9. 認証タブで、必ずアクセストークン (暗黙的なフローに使用) を選択します。

Azure Service Principal Certificate

Azure サービスプリンシパルとクライアント証明書で接続するには、次のプロパティを設定します:

  • Auth Scheme:AzureServicePrincipalCert を選択。
  • Azure Tenant:接続するMicrosoft Online テナントを入力。
  • OAuth Client Id:OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントId を入力。
  • OAuth JWT Cert:Java web token(JWT)証明書ストアを入力。
  • OAuth JWT Cert Type:JWT 証明書を格納するキーストアの種類を入力。デフォルトの種類はPEMKEY_BLOB です。
  • (オプション)OAuth JWT Cert Password:OAuth JWT 証明書のパスワードを入力。
  • (オプション)OAuth JWT Cert Subject:OAuth JWT 証明書のサブジェクトを入力。

アプリケーションのOAuth 証明書を取得するには:

  1. Azure ポータルにログインします。
  2. 左ナビゲーションペインですべてのサービスを選択します。次にアプリの登録を検索し選択します。
  3. 新規登録をクリックします。
  4. アプリケーションの名前を入力して任意のAzure AD ディレクトリ - マルチテナントを選択します。
  5. アプリケーションを作成したら、概要セクションに表示されるアプリケーション (クライアント) ID の値をコピーします。この値をOAuth クライアントId として使用します。
  6. 証明書とシークレットセクションに移動して、証明書のアップロードを選択します。次に、ローカルマシンからアップロードする証明書を選択します。
  7. 有効期間を指定してクライアントシークレットを保存します。保存するとキーの値が表示されます。
  8. 値は一度しか表示されないので、コピーしておきます。この値をOAuth クライアントシークレットとして使用します。
  9. 認証タブで、必ずアクセストークン (暗黙的なフローに使用) を選択します。

GCP Kafka への認証

コネクタを追加したら、GCP Kafka に接続するために以下の必須プロパティを設定します: Bootstrap Servers には、接続先のApache Kafka ブートストラップサーバーのアドレスを入力します。 CData Sync では、複数の方法でGCP Kafka に対して認証できます。以下から認証方法を選択し、認証の詳細が記載された該当セクションに進んでください。

OAuth JWT

OAuth JWT を使用してApache Kafka アカウントに接続するには、以下のプロパティを指定します:
  • Auth Scheme: OAuthJWT を選択します。
  • OAuth Client Id: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントId を入力します。
  • OAuth Client Secret: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントシークレットを入力します。
  • OAuth JWT Cert: JSON Web Token(JWT)証明書ストアを入力します。
  • OAuth JWT Cert Type: JWT 証明書を格納するキーストアの種類を入力します。デフォルトの種類はPEMKEY_BLOB です。
  • OAuth JWT Cert Password: パスワードで保護された証明書ストアへのアクセスに使用するOAuth JWT 証明書のパスワードを入力します。証明書ストアにパスワードが不要な場合は、このプロパティを空白のままにします。
  • (オプション)OAuth JWT Cert Subject: OAuth JWT 証明書のサブジェクトを入力します。

GCP Instance Account

AWS Workload Identity

AWS Workload Identity フェデレーション資格情報で接続するには、次のプロパティを設定します:

  • Auth Scheme:AWSWorkloadIdentity を選択。
  • AWS Workload Identity Config:以下の例のように、セミコロン区切りのKey=Value プロパティのリストを入力:

    AWSWorkloadIdentityConfig="AuthScheme=AwsRootKeys;AccessKey='AKIAABCDEF123456';SecretKey=...;Region=us-east-1"

    値を引用符で囲むかどうかは任意です。

  • Workload Pool Id:Workload Identity Federation プールの識別子(Id)を入力。
  • Workload Project Id:Workload Identity Federation プールをホストするGoogle Cloud プロジェクトのId を入力。
  • Workload Provider Id:Workload Identity Federation プールプロバイダーのId を入力。

Extracting Metadata from Topics

Sync は、Apache Kafka のトピックをテーブル、メッセージを行としてモデル化します。 Type Detection Scheme プロパティは、Sync が各トピックからスキーマ情報を読み取る方法を制御します。Type Detection Scheme の詳細は、接続を完了するで説明します。

Schema Registry

スキーマレジストリには、スキーマが登録されているトピックの一覧が含まれます。テーブルとカラムの一覧は、スキーマレジストリから直接読み取られます。 スキーマレジストリを持つサービスに接続するには、以下のプロパティを指定します:
  • Bootstrap Servers: Apache Kafka ブートストラップサーバーのサーバー(ホスト名またはIPアドレス)とポート(Server:Port の形式)を入力します。
  • Type Detection Scheme: 使用する検出スキームを選択します。このスキームの詳細は、接続を完了するを参照してください。
  • (オプション)Schema Merge Mode: 複数のスキーマをマージするモードを選択します。
    • None(デフォルト)
    • Simple

Confluent Schema Registry

Confluent Cloud に接続する場合、レジストリURL は、Schemas > Schema Registry > Instructions にあるSchema Registry エンドポイントの値に対応します。 Confluent スキーマレジストリは、複数の認証オプションをサポートしています。通常、Confluent Cloud のデプロイメントでは、レジストリユーザーおよびレジストリパスワードとともに、Registry Auth Scheme プロパティをBasic に設定する必要があります。ユーザーとパスワードを確認するには、Schemas > Schema Registry > API Access に移動し、アクセスキーとシークレットキーの値を確認します。 オンプレミスのデプロイメントでは、認証が不要な場合があります。その場合は、Registry Auth Scheme をNone に設定します。これらのデプロイメントでは、SSL クライアント証明書も必要になる場合があります。その場合は、SSL Certificate レジストリ認証スキームに加えて、Registry Client Cert およびRegistry Client Cert Type オプションを設定する必要があります。

Amazon Web Services (AWS) Glue Schema Registry

AWS Glue に接続する場合、レジストリURL は、レジストリのAmazon Resource Name(ARN)の値に対応します。 AWS Glue スキーマレジストリは、Basic レジストリ認証スキームのみをサポートしています。Registry User とRegistry Password には、それぞれレジストリにアクセスできるユーザーのアクセスキーとシークレットキーを設定してください。

Topic Routing

Apache Kafka 宛先を使用するジョブの作成時に、ソーステーブルをApache Kafka のトピックにマッピングする方法を制御できます。そのためには、ジョブの作成時にジョブを追加 ダイアログで次のオプションのいずれかを選択します:
  • ソーステーブルごとに1つのトピック: 各ソーステーブルは専用のトピックに書き込まれます。Sync は、SchemaName_TableName の形式でトピック名を自動的に付けます。ソースにスキーマがない場合、トピック名は単にテーブル名になります。
  • すべてのデータを単一の指定トピックへ: テーブルのすべてのソースデータが1つのトピックに書き込まれます。このオプションを選択すると、以下に示すようにトピック フィールドが表示されます。フィールドにトピック名を入力するか、トピックの一覧が利用可能な場合はトピックを検索して選択できます。 単一の指定トピック用のトピックフィールドを表示した「ジョブを追加」ダイアログ
ジョブの実行時にターゲットトピックが存在しない場合、ブローカーの構成に応じて、Sync がトピックを自動的に作成するか、エラーを返します。

Message Partitioning

Sync では、新しいApache Kafka 宛先ジョブは、ソーステーブルの主キーによってメッセージを自動的にパーティション分割します。この動作により、メッセージがターゲットトピックのパーティション間でどのように分散されるかが制御されます。
  • 主キーが1つの場合: Sync は、主キーの値をApache Kafka のメッセージキーとして使用します。同じキー値を持つすべてのメッセージは同じパーティションに書き込まれるため、ダウンストリームのコンシューマーは、特定のキーに対する変更を書き込まれた順序で確認できます。
  • 主キーがない場合: Sync は、ラウンドロビン方式(各メッセージが順番に次のパーティションに送られる方式)でメッセージをパーティション間に分散します。Apache Kafka のメッセージキーは割り当てられません。
  • 自動的なキーベースのパーティション分割は、複合主キー(複数カラムの主キー)を持つテーブルをサポートしません。単一のキーでパーティション分割するには、クエリを変更して主キーのカラムを1つだけ含めます。
  • 既存のApache Kafka 宛先ジョブ(リリース26.3より前)は、この変更の影響を受けません。

接続を完了する

接続を完了するには:
  1. 次のプロパティを指定します:
    • Type Detection Scheme: 使用する検出スキームを選択します。
      • (デフォルト)RowScan—トピックのメッセージをスキャンして、カラム名とデータ型を推測します。追加の構成は不要です。
      • SchemaRegistry—Confluent 互換のスキーマレジストリからスキーマ定義を読み取ります。このオプションを選択すると、スキーマレジストリの追加プロパティが表示されます。このスキームでは、以下のプロパティを指定します:
        • Registry Url: スキーマレジストリのサーバーのURL を入力します。このプロパティを指定すると、Sync はサーバーからApache Kafka のスキーマを読み取ります。
        • Registry Service: トピックスキーマの操作に使用するSchema Registry サービスを選択します。
          • Confluent(デフォルト)
          • AWSGlue
        • Registry Auth Scheme: スキーマレジストリへの認証に使用するスキームを選択します。
          • (デフォルト)None: このスキームは、認証を使用しないことを指定します。
          • Basic: このスキームでは、以下のプロパティを指定します:
            • Registry User: Registry Url に以前指定したサーバーへの認証に使用するユーザー名を入力します。
            • Registry Password: Registry Url に以前指定したサーバーへの認証に使用するパスワードを入力します。
          • SSLCertificate: このスキームは、SSL クライアント証明書認証を使用することを指定します。この設定では、以下を指定する必要があります:
            • Registry Client Cert: スキーマレジストリとのSSL クライアント認証(双方向SSL)に使用するTLS/SSL クライアント証明書ストアを入力します。
            • (オプション)Registry Client Cert Password: TLS/SSL クライアント証明書のパスワードを入力します。
            • (オプション)Registry Client Cert Subject: TLS/SSL クライアント証明書のサブジェクトを入力します。
    • Use SSL: Secure Sockets Layer(SSL)を有効にするかどうかを選択します。デフォルトでは、Enable チェックボックスは選択されていません。

詳細について