confluent-kafka-goで指定できるクライアント側のパラメーター
confluent-kafka-goはConfluentがメンテナンスしているKafkaのGo製クライアントで、librdkafkaというCで書かれたKafkaクライアントをラップしたものとなっている。(そのためcgo経由でコールされているので、ビルドする時は必ず CGO_ENABLED=1 が必要になる) ProducerやConsumerといったクライアント生成する際に指定できるパラメーターはlibrdkafkaと同じものを指定できる。 例えばmTLSで接続するConsumerの生成は以下のようになる
code:consumer.go
consumer, err := kafka.NewConsumer(&kafka.ConfigMap{
"bootstrap.servers": "kafka:9092",
"group.id": "some-group",
"client.id": "some-client",
"auto.offset.reset": "latest",
"security.protocol": "SSL",
"ssl.key.location": "/ssl/client.key.pem",
"ssl.certificate.location": "/ssl/client.cer.pem",
"ssl.ca.location": "/ssl/server.cer.pem",
})