重要

このページの日本語コンテンツは古くなっている可能性があります。最新の英語版コンテンツをご覧になるには、こちらをクリックしてください。

Confluent Cloud のスキーマ管理のクイックスタート

Confluent Cloud では、Confluent Cloud Schema Registry を使用してスキーマを管理できます。各 Confluent Cloud 環境 では、スキーマレジストリ を 1 つだけ有効にできます。スキーマレジストリ にはポート 443 を使用してアクセスします。

スキーマエディターでスキーマを作成して編集し、Kafka トピックにスキーマを関連付けることができます。

このクイックスタートは、スキーマレジストリ の機能の網羅ではなく概要の紹介です。詳細ガイドについては、「Confluent Cloud でのスキーマの管理」を参照してください。

重要

Cloud Console にログインします。

  1. https://confluent.cloud で Confluent Cloud にログインします。
  2. 環境を選択するか、新しい環境を作成します。

Confluent Cloud で スキーマレジストリ を有効化する

  1. 環境を選択します。

  2. Schemas タブをクリックします。

  3. Set up on my own をクリックします(またはガイド付きパスを選択します)。

  4. クラウドプロバイダーと地域(内部的にリージョンにマップされています)を選択します。

    • Amazon Web Services(AWS)、Google Cloud Platform(GCP)、Azure のいずれかを選択します。
    • リージョンを選択します。US、Europe、および APAC から選択できます。
    • Enable Schema Registry をクリックします。
    クラウドのプロバイダーおよびリージョン設定のスクリーンショット

    ちなみに

    クラウドプロバイダーごとに、各地域が内部的に以下のリージョンにマップされています。

    • GCP US: us-central1
    • GCP EU: europe-west3
    • GCP APAC: australia-southeast1
    • AWS US: us-east-2
    • AWS EU: eu-central-1
    • AWS APAC: ap-southeast-2
    • Azure US: westus2
    • Azure EU: westeurope
    • Azure APAC: southeastasia
  5. 設定を確認したら、Confirm をクリックして、それらのクラウドプロバイダーとリージョンの設定で スキーマレジストリ を作成することを確認します。

    これにより、現在の環境のすべてのクラスターを扱う スキーマレジストリ が作成されます。環境レベルの スキーマレジストリ 設定ページが表示されます。

    Schema Registry 設定のスクリーンショット

    まだスキーマが作成されていないことを示す空のスキーマリストが表示されます。

    Confluent Cloud 環境の Schema Registry を有効にする際、最初に示される空のスキーマリストのスクリーンショット

Confluent Cloud スキーマレジストリ の API キーを作成する

Confluent Cloud Schema Registry を使用して Kafka を管理するには、スキーマレジストリ に一意の API キーが必要です。

注釈

  • Confluent Cloud Schema Registry の API キーは、Quick Start for Confluent Cloud に従って、同じ環境の Kafka クラスターに作成した API キーとは異なります。
  • Confluent Cloud では スキーマレジストリ を環境ごとに 1 つ作成できます。また、各環境には複数の Kafka クラスターを作成することができます。各 Kafka クラスター用の API キーとシークレットのペアに加えて、スキーマレジストリ クラスター用のペアが必要になります。
  1. スキーマレジストリ をセットアップする環境で、Settings タブをクリックし、Schema Registry API access をクリックしてオプションを展開します。

    Schema Registry の API 認証情報のセットアップ
  2. Create key をクリックして新規の スキーマレジストリ API キーを作成します。

    新しい Schema Registry API アクセスオプションのスクリーンショット
  3. API キーと API シークレットを保存したら、I have saved my API key and secret and am ready to continue の隣のチェックボックスをオンにし、Continue をクリックします。

    Confluent Cloud の新しい Schema Registry キーおよびシークレットのスクリーンショット

    新しい スキーマレジストリ キーが スキーマレジストリ API アクセスキーリストに表示されます。

    新たに作成されたキーをリストする Confluent Cloud の Schema Registry のスクリーンショット

マルチテナントクラスターの スキーマレジストリ API キー

Confluent Cloud は、環境ごとに 1 つの スキーマレジストリ をサポートします。マルチテナントのデプロイでは、クラウドと地理的なリージョンごとに 1 つの物理的な スキーマレジストリ で多くの論理的なスキーマレジストリをホストします。この場合、別の環境にある別の Kafka クラスターのレジストリが、Confluent Cloud スキーマレジストリ と同じ URL を持ちます。Confluent Cloud は スキーマレジストリ API キーを使用してスキーマを格納し、リクエストを適切な論理クラスタールーティングします。

ちなみに

環境設定ページで使用できる、環境レベルの他のスキーマ管理オプションについて詳しくは、「環境のスキーマを構成および管理する」を参照してください。

Confluent Cloud でトピックを作成する

前提条件の Quick Start for Confluent Cloud を完了しているので、このクラスターには既にトピックが存在するはずですが、スキーマレジストリ をテストするための新しいトピックを作成することにします。

  1. 環境を選択します。

    ちなみに

    環境が 1 つしかない場合は、デフォルトでその環境が選択されます。

  2. クラスターを選択します。

  3. 左側のメニューにある Topics をクリックし、Create topic をクリックします。

    Confluent Cloud の新しいトピックダイアログのスクリーンショット

    新規トピックに employees という名前を付け、Create with defaults をクリックして追加します。

スキーマを作成する

You can create schemas for topics from the Cloud Console, from the unified Confluent CLI, the Schema Registry API (see POST /subjects/(string: subject)/versions), or through the Schema Registry Maven Plugin (see schema-registry:register).

This section shows you how to create a schema from the Confluent CLI CLI, just to provide a 360 view of cloud tools and demonstrate how you can use the web UI and the CLI to interact with the same entities, such as environments, clusters, topics, and schemas.

基本的な CLI コマンドについての詳しい情報が必要な場合は、confluent --helpconfluent schema-registry --help と入力して詳細を表示するか、「Quick Start for Confluent Cloud」および「Confluent CLI コマンドリファレンス」を参照してください。

  1. Confluent Cloud CLI にログインします。

    confluent login
    

    画面の指示に従って認証情報(E メールとパスワード)を入力します。

    ログインすると、Confluent Cloud の現在の環境が表示されます。

    Enter your Confluent credentials:
    Email:
    Password:
    
    Using environment t2814 ("my-cloud-demos")
    
  2. employees トピックを作成した環境を選択します。(ログイン時に既に選択されている場合もあります。)

    確認するには、confluent environment list を使用して環境 ID を取得し、confluent environment use <ID> を使用して、目的の環境を選択します(目的の環境がまだ現行環境ではない場合)。

    例:

    confluent environment list
    

    出力は以下のようになります。

          Id      |        Name
    +-------------+--------------------+
      * t2703     | default
        env-vnywz | ccloud-demo
        env-qzrg2 | data-lineage-demo
        env-250o2 | my-new-environment
    

    "ccloud-demo" を使用する:

    confluent environment use env-vnywz
    

    ちなみに

    • 環境を一覧表示する場合: confluent environment list
    • 環境を選択する場合: confluent environment use <environment ID>
    • クラスターを一覧表示する場合: confluent kafka cluster list
    • クラスターを選択する場合: confluent kafka cluster use <cluster ID>
    • すべての confluent コマンドを網羅した一覧については、「Confluent CLI コマンドリファレンス」を参照してください。
  3. 以下の JSON を含むファイルを作成し、employees.json という名前を付けます。

    {
       "type" : "record",
       "namespace" : "Example",
       "name" : "Employee",
       "fields" : [
          { "name" : "Name" , "type" : "string" },
          { "name" : "Age" , "type" : "int" }
       ]
    }
    
  4. employees.json を使用するスキーマを作成します。

    confluent schema-registry schema create --subject employees-value --schema employees.json --type AVRO
    

    例:

    confluent schema-registry schema create --subject employees-value --schema employees.json --type AVRO
    
    Enter your Schema Registry API Key:
    xxxx
    Enter your Schema Registry API Secret:
    xxxxyyyyzzzz
    Successfully registered schema with ID: 100001
    

    ちなみに

トピックおよび関連付けられたスキーマを表示する

Cloud Console に戻って employees トピックの新しいスキーマを表示します。

  1. クラスターのトピックリストに移動します。

    Confluent Cloud のサンプルトピックのスクリーンショット
  2. 前の手順で作成した employees トピックをクリックします。

  3. Schema をクリックします。

    Confluent Cloud のサンプルスキーマのスクリーンショット

    トピックに関連付けたスキーマが表示されます。Confluent Cloud スキーマレジストリ には employees トピックのための新しいスキーマ(employees-value)が作成されています。

環境のスキーマを構成および管理する

Confluent Cloud のスキーマに関連するいくつかのタスクは、環境レベルで管理されます。たとえば、Schema Registry の API キーの作成と管理 (以下で説明するように、これには複数のオプションがあります)、スキーマの表示と検索、使用状況のモニタリング、スキーマの互換モードの設定などがあります。

特定の環境のすべてのスキーマを表示および検索する

特定の Confluent Cloud 環境にあるすべてのスキーマのリスト(検索機能付き)を表示するには、以下を実行します。

  1. 環境を選択します。

  2. Schemas タブをクリックします。

  3. Schemas カードで View and manage schemas をクリックします。

    Confluent Cloud 環境のスキーマカードのスクリーンショット

    スキーマのリストが表示されます。

    Confluent Cloud のスキーマリストのスクリーンショット
    • 長いリストでは、Search を使用してスキーマを検索できます。
    • スキーマをクリックすると、スキーマの表示、ダウンロード、複製、削除や、互換性設定への移動、スキーマバージョン履歴の検索、各バージョンの表示、バージョンの比較などの追加オプションが表示されます。
    • またこのページの上部で、環境で使用可能なスキーマの数を、使用できる上限数と比較して確認することができます。詳細については、次のセクションを参照してください。

Confluent Cloud で許可されたスキーマの使用量を確認する

Confluent Cloud の スキーマレジストリ では、ベーシッククラスタースタンダードクラスター専用クラスター のレジストリでサポートされるスキーマバージョンの数に上限があります(「クラスタータイプごとの Confluent Cloud の機能と制限」を参照)。環境にあるスキーマの数を、使用できる上限数と比較して確認することができます。

  1. 環境を選択します。

  2. Schemas タブをクリックします。

  3. Schemas カードで View and manage schemas をクリックします。

    スキーマのリストが表示されます。このページの上部に、環境で使用可能なスキーマの数が、使用できる上限数と比較して表示されます。

    Confluent Cloud のスキーマリストのスクリーンショット

Confluent Cloud でのスキーマの使用数を管理方法の詳細については、新規スキーマ用にスペースを解放する方法 を参照してください。

スキーマの互換性設定を表示および編集する

デフォルトの互換モードは Backward です。環境レベル スキーマレジストリ 設定からモードを変更することができます。ここで変更すると、環境内のすべてのスキーマにグローバルに適用されます。さらに、特定のトピック(サブジェクトレベル)の互換性設定を変更 することもできます。サブジェクトレベルの互換性設定は、グローバル設定をオーバーライドします。

注意

既に本稼働環境で使用されている既存のスキーマの互換モードを変更すると、アプリケーションに重大な変更が生じる可能性があるので注意してください。

  1. 環境を選択します。

  2. Schemas タブをクリックします。

  3. Compatibility setting カードの Edit をクリックします。

    Confluent Cloud のスキーマ互換性設定のスクリーンショット

    Compatibility settings が表示されます。

    Confluent Cloud のスキーマ互換性設定のスクリーンショット
  4. モードのオプションを選択します。

    オプションごとに、互換性の動作が説明されています。各オプションで許可される変更などを含む詳細については、「スキーマの進化と互換性」を参照してください。

  5. Save をクリックします。

curl を使用してスキーマを表示および管理する

Confluent Cloud では、curl コマンドを使用してスキーマを表示および管理することもできます。

Confluent Cloud の スキーマレジストリ の API キーとシークレットを、--user (または -u)フラグを使用して渡す必要があります。たとえば、レジストリ内のすべての サブジェクト を表示するには、次のように入力します。

curl --user <schema-registry-api-key>:<schema-registry-api-secret> \
<schema-registry-url>/subjects

スキーマレジストリ に curl コマンドを使用方法の詳細については、「Schema Registry API の使用例」を参照してください。この同じ 1 つの例 を除き、これらの例はオンプレミスの スキーマレジストリ に対するものですが、API キーとシークレットを渡す方法がわかれば(下記参照)、多くのコマンドは Confluent Cloud にも使用可能です。