9.14. ConfigMap を使用した設定の追加
ConfigMap
リソースを使用して、Streams for Apache Kafka デプロイメントに特定の設定を追加します。ConfigMap はキーと値のペアを使用して機密ではないデータを保存します。ConfigMap に追加された設定データは 1 か所に保持され、コンポーネント間で再利用できます。
ConfigMap は、次のタイプの設定データのみを保存できます。
- ロギング設定
- メトリックの設定
- Kafka Connect コネクターの外部設定
設定の他の領域に ConfigMap を使用することはできません。
コンポーネントを設定する場合、configMapKeyRef
プロパティーを使用して ConfigMap への参照を追加できます。
たとえば、configMapKeyRef
を使用してロギングの設定を提供する ConfigMap を参照できます。ConfigMap を使用して Log4j 設定ファイルを渡すことができます。参照を logging
設定に追加します。
ロギングの ConfigMap の例
# ... logging: type: external valueFrom: configMapKeyRef: name: my-config-map key: my-config-map-key # ...
メトリクス設定に ConfigMap を使用するには、同じ方法でコンポーネントの metricsConfig
設定への参照を追加します。
ExternalConfiguration
プロパティーは、Pod にマウントされた ConfigMap (またはシークレット) からのデータを環境変数またはボリュームとして使用できるようにします。Kafka Connect によって使用されるコネクターの外部設定データを使用できます。データは外部データソースに関連する可能性があり、コネクターがそのデータソースと通信するために必要な値を指定します。
たとえば、configMapKeyRef
プロパティーを使用して、ConfigMap から設定データを環境変数として渡すことができます。
環境変数の値を提供する ConfigMap の例
apiVersion: kafka.strimzi.io/v1beta2 kind: KafkaConnect metadata: name: my-connect spec: # ... externalConfiguration: env: - name: MY_ENVIRONMENT_VARIABLE valueFrom: configMapKeyRef: name: my-config-map key: my-key
外部で管理される ConfigMap を使用している場合は、設定プロバイダーを使用して ConfigMap にデータを読み込みます。
9.14.1. カスタム ConfigMap の命名
Streams for Apache Kafka は、OpenShift にデプロイされると、独自の ConfigMap とその他のリソースを作成 します。ConfigMap には、コンポーネントの実行に必要なデータが含まれます。Streams for Apache Kafka によって作成された ConfigMap は編集しないでください。
作成するカスタム ConfigMap にはこれらのデフォルト ConfigMap と同じ名前がないことを確認します。名前が同じ場合は上書きされます。たとえば、ConfigMap が Kafka クラスターの ConfigMap と同じ名前である場合、Kafka クラスターの更新がある場合に上書きされます。
関連情報