我有manually installed Confluent Kafka Connect S3使用独立方法,而不是通过Confluent的流程或整个平台的一部分。
我可以使用以下命令从命令行成功启动连接器:
./kafka_2.11-2.1.0/bin/connect-standalone.sh connect.properties s3-sink.properties
可以看到,来自AWS MSK的主要CDC偏移量已被消耗。没有引发任何错误。但是,在AWS S3中,不会为新数据创建文件夹结构,也不会存储JSON数据。
问题
connect.properties
bootstrap.servers =已修订:9092,已修订:9092,已修订:9092
plugin.path = / plugins / kafka-connect-s3 key.converter = org.apache.kafka.connect.json.JsonConverter value.converter = org.apache.kafka.connect.json.JsonConverter key.converter.schemas.enable = false value.converter.schemas.enable = false internal.key.converter = org.apache.kafka.connect.json.JsonConverter internal.value.converter = org.apache.kafka.connect.json.JsonConverter internal.key.converter.schemas.enable = false internal.value.converter.schemas.enable = false offset.storage.file.filename = / tmp / connect.offsets
s3-sink.properties
名称= s3-接收器连接器.class = io.confluent.connect.s3.S3SinkConnector task.max = 1 topic = database_schema_topic1,database_schema_topic2,database_schema_topic3 s3.region =美国东部-2 s3.bucket.name =数据库kafka s3.part.size = 5242880 flush.size = 1 storage.class = io.confluent.connect.s3.storage.S3Storage format.class = io.confluent.connect.s3.format.json.JsonFormat schema.generator.class = io.confluent.connect.storage.hive.schema.DefaultSchemaGenerator partitioner.class = io.confluent.connect.storage.partitioner.DefaultPartitioner schema.compatibility =无
答案 0 :(得分:1)
连接器在看到某个主题的第一个JSON数据包时是否应该动态创建文件夹结构? 是的,即使您使用参数“ topics.dir”和“ path.format”控制该路径(目录结构)
除了配置awscli凭据外,connect.properties和s3-sink.properties是否还需要设置其他设置以正确连接到S3存储桶? 默认情况下,S3连接器将通过环境变量或凭据文件使用Aws凭据(访问ID和秘密密钥)。 您可以通过修改参数“ s3.credentials.provider.class”进行更改。该参数的默认值为“ DefaultAWSCredentialsProviderChain”
关于安装文档的建议比Confluent网站上的独立文档更全面? (以上链接) 我建议您使用分布式模式,因为它为连接群集和在其上运行的连接器提供了高可用性。 您可以阅读以下文档,以分布式模式配置连接集群。 https://docs.confluent.io/current/connect/userguide.html#connect-userguide-dist-worker-config