第 87 章 Build 架构参考
used in: KafkaConnectSpec
为 Kafka Connect 部署配置额外的连接器。
87.1. output 复制链接链接已复制到粘贴板!
要使用其他连接器插件构建新容器镜像,Apache Kafka 的 Streams 需要可推送镜像的容器 registry,并从中拉取。Apache Kafka 的流不会运行自己的容器 registry,因此必须提供 registry。Apache Kafka 的流支持私有容器 registry 以及 Quay 或 Docker Hub 等公共 registry。容器 registry 在 KafkaConnect 自定义资源的 .spec.build.output 部分中配置。需要 的输出 配置支持两种类型: docker 和 imagestream。
使用 Docker registry
要使用 Docker registry,您必须将 type指定为 docker,image 字段为新容器镜像的完整名称。全名必须包含:
- registry 的地址
- 端口号(如果侦听非标准端口)
- 新容器镜像的标签
有效容器镜像名称示例:
-
docker.io/my-org/my-image/my-tag -
quay.io/my-org/my-image/my-tag -
image-registry.image-registry.svc:5000/myproject/kafka-connect-build:latest
每个 Kafka Connect 部署都必须使用单独的镜像,这可能意味着最基本的级别的不同标签。
如果 registry 需要身份验证,请使用 pushSecret 使用 registry 凭证设置 Secret 名称。对于 Secret,请使用 kubernetes.io/dockerconfigjson 类型和一个 .dockerconfigjson 文件来包含 Docker 凭证。有关从私有 registry 中拉取镜像的更多信息,请参阅 基于现有 Docker 凭证创建 Secret。
output 配置示例
apiVersion: kafka.strimzi.io/v1beta2
kind: KafkaConnect
metadata:
name: my-connect-cluster
spec:
#...
build:
output:
type: docker
image: my-registry.io/my-org/my-connect-cluster:latest
pushSecret: my-registry-credentials
#...
Using OpenShift ImageStream
您可以使用 OpenShift ImageStream 存储新的容器镜像,而不是 Docker。在部署 Kafka 连接前,必须手动创建 ImageStream。要使用 ImageStream,将 type 设置为 imagestream,并使用 image 属性指定 ImageStream 的名称和使用的标签。例如,my-connect-image-stream:latest。
output 配置示例
apiVersion: kafka.strimzi.io/v1beta2
kind: KafkaConnect
metadata:
name: my-connect-cluster
spec:
#...
build:
output:
type: imagestream
image: my-connect-build:latest
#...