6.6. Kafka ブリッジのデプロイ
Cluster Operator によって、1 つ以上の Kafka Bridge のレプリカがデプロイされ、HTTP API 経由で Kafka クラスターとクライアントの間でデータが送信されます。
6.6.1. Kafka Bridge を OpenShift クラスターへデプロイ リンクのコピーリンクがクリップボードにコピーされました!
この手順では、Cluster Operator を使用して Kafka Bridge クラスターを OpenShift クラスターにデプロイする方法を説明します。
デプロイメントでは、YAML ファイルの仕様を使って KafkaBridge リソースが作成されます。
AMQ Streams には、設定ファイルのサンプル が用意されています。この手順では、以下のサンプルファイルを使用します。
-
examples/bridge/kafka-bridge.yaml
手順
Kafka Bridge を OpenShift クラスターにデプロイします。
oc apply -f examples/bridge/kafka-bridge.yamlデプロイメントのステータスを確認します。
oc get deployments -n <my_cluster_operator_namespace>デプロイメント名と準備状態が表示されている出力
NAME READY UP-TO-DATE AVAILABLE my-bridge-bridge 1/1 1 1my-bridgeは、Kafka Bridge クラスターの名前です。READYは、Ready/expected 状態のレプリカ数を表示します。AVAILABLE出力に1が表示されれば、デプロイメントは成功しています。
6.6.2. Kafka Bridge サービスのローカルマシンへの公開 リンクのコピーリンクがクリップボードにコピーされました!
ポート転送を使用して AMQ Streams の Kafka Bridge サービスを http://localhost:8080 上でローカルマシンに公開します。
ポート転送は、開発およびテストの目的でのみ適切です。
手順
OpenShift クラスターの Pod の名前をリストします。
oc get pods -o name pod/kafka-consumer # ... pod/my-bridge-bridge-7cbd55496b-nclrtポート
8080で Kafka Bridge Pod に接続します。oc port-forward pod/my-bridge-bridge-7cbd55496b-nclrt 8080:8080 &注記ローカルマシンのポート 8080 がすでに使用中の場合は、代わりの HTTP ポート (
8008など) を使用します。
これで、API リクエストがローカルマシンのポート 8080 から Kafka Bridge Pod のポート 8080 に転送されるようになります。
6.6.3. OpenShift 外部の Kafka Bridge へのアクセス リンクのコピーリンクがクリップボードにコピーされました!
デプロイメント後、AMQ Streams Kafka Bridge には同じ OpenShift クラスターで実行しているアプリケーションのみがアクセスできます。これらのアプリケーションは、<kafka_bridge_name>-bridge-service サービスを使用して API にアクセスします。
OpenShift クラスター外部で実行しているアプリケーションに Kafka Bridge がアクセスできるようにする場合は、以下の機能のいずれかを作成して Kafka Bridge を手動で公開できます。
-
LoadBalancerまたはNodePortタイプのサービス -
Ingressリソース - OpenShift ルート
サービスを作成する場合には、<kafka_bridge_name>-bridge-service サービスの selector からラベルを使用して、サービスがトラフィックをルーティングする Pod を設定します。
# ...
selector:
strimzi.io/cluster: kafka-bridge-name
strimzi.io/kind: KafkaBridge
#...
- 1
- OpenShift クラスターでの Kafka Bridge カスタムリソースの名前。