3.2. OpenShift での Kafka ストレージを使用した Service Registry の設定
ここでは、AMQ Streams on OpenShift を使用して Service Registry に Kafka ベースのストレージを設定する方法を説明します。kafkasql
ストレージオプションは、インメモリー H2 データベースと共に Kafka ストレージを使用します。このストレージオプションは、persistent
ストレージが OpenShift の Kafka クラスターに設定されている場合に、実稼働環境に適しています。
既存の 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 ノード、3 つの ノード、および
ephemeral
ストレージを持つ 1 つの Kafka クラスターが作成されます。この一時ストレージは開発およびテストにのみ適しており、実稼働には適していません。詳細は、『Using AMQ Streams on OpenShift』を参照してください。
- クラスターの準備ができたら、Provided APIs > Kafka > my-cluster > YAML をクリックします。
status
ブロックで、bootstrapServers
値のコピーを作成します。これは、後ほど Service Registry のデプロイメントで使用します。以下に例を示します。status: ... conditions: ... listeners: - addresses: - host: my-cluster-kafka-bootstrap.my-project.svc port: 9092 bootstrapServers: 'my-cluster-kafka-bootstrap.my-project.svc:9092' type: plain ...
- Installed Operators > Red Hat Integration - Service Registry > ApicurioRegistry > Create ApicurioRegistry とクリックします。
以下のカスタムリソース定義に貼り付けますが、先ほどコピーした
bootstrapServers
の値を使用します。apiVersion: registry.apicur.io/v1 kind: ApicurioRegistry metadata: name: example-apicurioregistry-kafkasql spec: configuration: persistence: 'kafkasql' kafkasql: bootstrapServers: 'my-cluster-kafka-bootstrap.my-project.svc:9092'
- Create をクリックし、OpenShift で Service Registry ルートが作成されるまで待機します。
Networking > Route をクリックして、Service Registry Web コンソールの新規ルートにアクセスします。以下に例を示します。
http://example-apicurioregistry-kafkasql.my-project.my-domain-name.com/
その他のリソース
- AMQ Streams を使用した Kafka クラスターおよびトピックの作成に関する詳細は、『AMQ Streams on OpenShift の使用』を参照してください。