B.89. ExternalConfiguration 架构参考
用于:KafkaConnectS2ISpec
, KafkaConnectSpec
, KafkaMirrorMaker2Spec
配置外部存储属性,为 Kafka Connect 连接器定义配置选项。
您可以将 ConfigMap 或 Secret 挂载到 Kafka Connect pod 中,作为环境变量或卷。卷和环境变量在 KafkaConnect .spec 和
中的 KafkaConnectS2I.spec
externalConfiguration
属性中配置。
应用后,可在开发连接器时使用环境变量和卷。
B.89.1. env
env
属性用于指定一个或多个环境变量。这些变量可以包含 ConfigMap 或 Secret 中的值。
包含环境变量值的 Secret 示例
apiVersion: v1 kind: Secret metadata: name: aws-creds type: Opaque data: awsAccessKey: QUtJQVhYWFhYWFhYWFhYWFg= awsSecretAccessKey: Ylhsd1lYTnpkMjl5WkE=
用户定义的环境变量的名称不能以 KAFKA_ 或
开头。
STRIMZI_
要将值从 Secret 挂载到环境变量,请使用 valueFrom
属性和 secretKeyRef
。
设置为 Secret 中值的示例环境变量
apiVersion: kafka.strimzi.io/v1beta1 kind: KafkaConnect metadata: name: my-connect spec: # ... externalConfiguration: env: - name: AWS_ACCESS_KEY_ID valueFrom: secretKeyRef: name: aws-creds key: awsAccessKey - name: AWS_SECRET_ACCESS_KEY valueFrom: secretKeyRef: name: aws-creds key: awsSecretAccessKey
当您的连接器需要与 Amazon AWS 通信时,将 Secret 挂载到环境变量的一个常见用例需要读取 AWS_ACCESS_KEY_ID
和 AWS_SECRET_ACCESS_KEY
环境变量与凭据。
要将 ConfigMap 的值挂载到环境变量,请使用 valueFrom
属性中的 configMapKeyRef
,如下例所示。
设置为 ConfigMap 中值的环境变量示例
apiVersion: kafka.strimzi.io/v1beta1 kind: KafkaConnect metadata: name: my-connect spec: # ... externalConfiguration: env: - name: MY_ENVIRONMENT_VARIABLE valueFrom: configMapKeyRef: name: my-config-map key: my-key