3.2. OpenShift での Kafka ストレージを使用した Service Registry の設定
ここでは、AMQ Streams on OpenShift を使用して Service Registry に Kafka ベースのストレージを設定する方法を説明します。kafkasql ストレージオプションは、キャッシュにインメモリー H2 データベースを備えた Kafka ストレージを使用します。このストレージオプションは、OpenShift の Kafka クラスターに persistent ストレージが設定されている実稼働環境に適しています。
既存の Kafka クラスターに Service Registry をインストールするか、環境に応じて新しい Kafka クラスターを作成できます。
前提条件
- クラスター管理者として OpenShift クラスターにアクセスできる。
- Service Registry がすでにインストールされている。2章OpenShift での Service Registry のインストール を参照してください。
- AMQ Streams がすでにインストールされている。「OpenShift OperatorHub からの AMQ Streams のインストール:」 を参照してください。
手順
- OpenShift Container Platform Web コンソールで、クラスター管理者権限を持つアカウントを使用してログインします。
Kafka クラスターがまだ設定されていない場合は、AMQ Streams を使用して新しい Kafka クラスターを作成します。たとえば、OpenShift OperatorHub では以下を実行します。
- Installed Operators をクリックしてから Red Hat Integration - AMQ Streams をクリックします。
- Provided APIs、Kafka と選択し、Create Instance をクリックして新しい Kafka クラスターを作成します。
適切にカスタムリソース定義を編集し、Create をクリックします。
警告デフォルトの例では、3 つの Zookeeper ノード、および、
ephemeralストレージを持つ 3 つの Kafka ノードを持つクラスターが作成されます。この一時ストレージは開発およびテストにのみ適しており、実稼働には適していません。詳細は、OpenShift での AMQ Streams のデプロイと管理 を参照してください。
- クラスターの準備ができたら、Provided APIs > Kafka > my-cluster > YAML をクリックします。
statusブロックで、bootstrapServers値のコピーを作成します。これは、後で Service Registry をデプロイするために使用します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Installed Operators > Red Hat Integration - Service Registry > ApicurioRegistry > Create ApicurioRegistry をクリックします。
次のカスタムリソース定義を貼り付けますが、前にコピーした
bootstrapServers値を使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Create をクリックし、OpenShift で Service Registry ルートが作成されるまで待機します。
Networking > Route をクリックして、Service Registry Web コンソールの新規ルートにアクセスします。以下に例を示します。
http://example-apicurioregistry-kafkasql.my-project.my-domain-name.com/
http://example-apicurioregistry-kafkasql.my-project.my-domain-name.com/Copy to Clipboard Copied! Toggle word wrap Toggle overflow Service Registry がデータの保存に使用する Kafka トピックを設定するには、Installed Operators > Red Hat Integration - AMQ Streams > Provided APIs > Kafka Topic > kafkasql-journal > YAML をクリックします。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 警告Service Registry で使用される Kafka トピック (デフォルトでは
kafkasql-journalという名前) を圧縮クリーンアップポリシーで設定する必要があります。そうしないと、データ損失が発生する可能性があります。