3.9. デプロイメントのカスタマイズ


AMQ Streams では、OpenShift の operator によって管理される DeploymentsStatefulSetsPodsServices などの複数の OpenShift リソースが作成されます。特定の OpenShift リソースの管理を担当する operator のみがそのリソースを変更できます。operator によって管理される OpenShift リソースを手動で変更しようとすると、operator はその変更を元に戻します。

しかし、オペレーターが管理する OpenShift リソースの変更は、以下のような特定のタスクを実行する場合に役立ちます。

  • Pod が Istio またはその他のサービスによって処理される方法を制御するカスタムラベルまたはアノテーションを追加する場合。
  • Loadbalancer タイプのサービスがクラスターによって作成される方法を管理する場合。

このような変更は、AMQ Streams カスタムリソースの template プロパティーを使用して追加します。

3.9.1. テンプレートプロパティー

template プロパティーを使用すると、リソース作成プロセスの内容を設定できます。以下のリソースおよびプロパティーに追加できます。

  • Kafka.spec.kafka
  • Kafka.spec.zookeeper
  • Kafka.spec.entityOperator
  • Kafka.spec.kafkaExporter
  • KafkaConnect.spec
  • KafkaConnectS2I.spec
  • KafkaMirrorMakerSpec
  • KafkaBridge.spec

以下の例では、template プロパティーを使用して Kafka ブローカーの StatefulSet のラベルを変更します。

apiVersion: kafka.strimzi.io/v1beta1
kind: Kafka
metadata:
  name: my-cluster
  labels:
    app: my-cluster
spec:
  kafka:
    # ...
    template:
      statefulset:
        metadata:
          labels:
            mylabel: myvalue
    # ...

3.9.1.1. Kafka クラスターでサポートされるテンプレートプロパティー

statefulset
Kafka ブローカーによって使用される StatefulSet を設定します。
pod
StatefulSet によって作成された Kafka ブローカー Pod を設定します。
bootstrapService
OpenShift 内で実行中のクライアントによって使用されるブートストラップサービスを設定し、Kafka ブローカーに接続します。
brokersService
ヘッドレスサービスを設定します。
externalBootstrapService
OpenShift の外部から Kafka ブローカーに接続するクライアントによって使用されるブートストラップサービスを設定します。
perPodService
OpenShift の外部から Kafka ブローカーに接続しているクライアントによって使用される Pod ごとのサービスを設定し、個別のブローカーにアクセスします。
externalBootstrapRoute
OpenShift Routes を使用して OpenShift の外部から Kafka ブローカーに接続するクライアントによって使用されるブートストラップルートを設定します。
perPodRoute
OpenShift の外部から Kafka ブローカーに接続するクライアントによって使用される Pod ごとのルートを設定し、OpenShift Routes を使用して個別のブローカーにアクセスします。
podDisruptionBudget
Kafka ブローカー StatefulSet の Pod の Disruption Budget を設定します。
kafkaContainer
カスタム環境変数を含む、Kafka ブローカーの実行に使用されるコンテナーを設定します。
tlsSidecarContainer
カスタム環境変数を含む、TLS サイドカーコンテナーを設定します。
initContainer
ブローカーの初期化に使用されるコンテナーを設定します。
persistentVolumeClaim
Kafka PersistentVolumeClaims のメタデータを設定します。

3.9.1.2. ZooKeeper クラスターでサポートされるテンプレートプロパティー

statefulset
ZooKeeper の StatefulSet を設定します。
pod
StatefulSet によって作成される ZooKeeper Pod を設定します。
clientsService
ZooKeeper にアクセスするためにクライアントによって使用されるサービスを設定します。
nodesService
ヘッドレスサービスを設定します。
podDisruptionBudget
ZooKeeper StatefulSet の Pod の Disruption Budget を設定します。
zookeeperContainer
カスタム環境変数を含む、ZooKeeper ノードの実行に使用されるコンテナーを設定します。
tlsSidecarContainer
カスタム環境変数を含む、TLS サイドカーコンテナーを設定します。
persistentVolumeClaim
ZooKeeper PersistentVolumeClaims のメタデータを設定します。

3.9.1.3. Entity Operator でサポートされるテンプレートプロパティー

deployment
Entity Operator によって使用されるデプロイメントを設定します。
pod
Deployment によって作成された Entity Operator Pod を設定します。
topicOperatorContainer
カスタム環境変数を含む、Topic Operator の実行に使用されるコンテナーを設定します。
userOperatorContainer
カスタム環境変数を含む、User Operator の実行に使用されるコンテナーを設定します。
tlsSidecarContainer
カスタム環境変数を含む、TLS サイドカーコンテナーを設定します。

3.9.1.4. Kafka Exporter でサポートされるテンプレートプロパティー

deployment
Kafka Exporter によって使用されるデプロイメントを設定します。
pod
Deployment によって作成された Kafka Exporter Pod を設定します。
services
Kafka Exporter サービスを設定します。
container
カスタム環境変数を含む、Kafka Exporter の実行に使用されるコンテナーを設定します。

3.9.1.5. Kafka Connect および Source2Image がサポートされる Kafka Connect でサポートされるテンプレート。

deployment
Kafka Connect の Deployment を設定します。
pod
Deployment によって作成された Kafka Connect Pods を設定します。
apiService
Kafka Connect REST API で使用されるサービスを設定します。
podDisruptionBudget
Kafka Connect Deployment の Pod の Disruption Budget を設定します。
connectContainer
カスタム環境変数を含む、Kafka Connect の実行に使用されるコンテナーを設定します。

3.9.1.6. Kafka MirrorMaker でサポートされるテンプレートプロパティー

deployment
Kafka MirrorMaker の Deployment を設定します。
pod
Deployment によって作成された Kafka MirrorMaker Pods を設定します。
podDisruptionBudget
Kafka MirrorMaker Deployment の Pod の Disruption Budget を設定します。
mirrorMakerContainer
カスタム環境変数を含む、Kafka MirrorMaker の実行に使用されるコンテナーを設定します。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.