数据镜像
使用 KafkaMirrorMaker 跨集群生成 Kafka 镜像数据,如遇到系统故障,可使用镜像数据进行恢复。备份完成后,源实例和目标实例间互为生产者和消费者,可相互进行通信。
-
配置目标实例。
-
部署 KafkaTopic 实例和 KafkaUser 实例 。
-
切换容器平台,记录 1 中实例对应的内部路由(Kubernetes Service)和保密字典(Kubernetes Secret)。
-
-
配置源实例。
-
在容器平台中,根据目标实例的信息,新增内部路由和保密字典。
-
切换回平台管理,从左侧导航栏中选择 应用商店管理 > Operators > 已部署 Operators > strimzi-kafka-operator 页面,部署 KafkaMirrorMaker 实例。
apiVersion: kafka.strimzi.io/v1beta1 kind: KafkaMirrorMaker metadata: name: my-mirror-maker spec: replicas: 3 version: 2.5.0 consumer: bootstrapServers: {源 Kafka 实例名称}-bootstrap:9092 groupId: my-group numStreams: 2 offsetCommitInterval: 120000 tls: trustedCertificates: - secretName: {源 Kafka 实例名称}-ca-cert certificate: ca.crt authentication: type: tls certificateAndKey: secretName: {源 KafkaUser 实例名称} certificate: user.crt key: user.key config: max.poll.records: 100 receive.buffer.bytes: 32768 producer: bootstrapServers: {目标 Kafka 实例名称}-bootstrap:9092 abortOnSendFailure: false tls: trustedCertificates: - secretName: {目标 Kafka 实例名称}-ca-cert certificate: ca.crt authentication: type: tls certificateAndKey: secretName: {目标 KafkaUser 实例名称} certificate: user.crt key: user.key config: compression.type: gzip batch.size: 8192 ssl.endpoint.identification.algorithm: '' whitelist: my-topic resources: requests: cpu: "1" memory: 2Gi limits: cpu: "2" memory: 2Gi
-
-
参考 消息投递 ,在源 Kafka 集群上发送数据,在目标 Kafka 集群上接收数据,验证数据是否能正常传输。