canal 连接开启sasl验证的Kafka集群

底层逻辑:

1)Kafka开启了sasl验证,意味着客户端需要通过sasl验证才能连接Kafka。

2)客户端需要准备两样东西

      第一:配置 -Djava.security.auth.login.config

      第二:准备sasl验证文件

3)针对canal来讲,需要开启sasl验证模式。



具体操作如下:

1)canal.properties文件修改,用来指定数据发送kafka  

   canal.serverMode = kafka

2)canal.properties文件新增两行配置,用来开启sasl验证模式。

    canal.mq.properties.security.protocol = SASL_PLAINTEXT
     canal.mq.properties.sasl.mechanism = PLAIN

3)instance.properties 文件修改 canal.mq.topic=maoxiangyi,用来指定数据发往哪个kafka

KafkaClient {
         org.apache.kafka.common.security.plain.PlainLoginModule required
         username="sss"
         password="ssss";
};

4)准备一个文件kafka_client_jaas.conf,放在config目录下。

5)修改启动脚本 start.sh ,配置 -Djava.security.auth.login.config=/opt/canal/conf/kafka_client_jaas.conf。 具体位置参考以下代码

if [ -n "$str" ]; then
     JAVA_OPTS="-server -Xms2048m -Xmx3072m -Xmn1024m -XX:SurvivorRatio=2 -XX:PermSize=96m -XX:MaxPermSize=256m -Xss256k -XX:-UseAdaptiveSizePolicy -XX:MaxTenuringThreshold=15 -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -Djava.security.auth.login.config=/opt/canal/conf/kafka_client_jaas.conf "
else
     JAVA_OPTS="-server -Xms1024m -Xmx1024m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:MaxPermSize=128m "
fi



打完收工。


kafka 开启sasl验证,参考  https://blog.csdn.net/u010416101/article/details/79562214?utm_source=blogxgwz0

posted @ 2020-05-15 18:01  春江师兄  阅读(1411)  评论(0编辑  收藏  举报