一、canal连接zk
    1、canal server
    image.pngq

    1. <bean id="zkClientx" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean" >
    2. <property name="targetClass" value="com.alibaba.otter.canal.common.zookeeper.ZkClientx" />
    3. <property name="targetMethod" value="getZkClient" />
    4. <property name="arguments">
    5. <list>
    6. <value>${canal.zkServers:127.0.0.1:2181}</value>
    7. </list>
    8. </property>
    9. </bean>

    2、canal client
    image.png
    image.png

    二、zk配置权限认证后,canal server 启动时报错

    
    2021-06-23 16:40:51.119 [main] INFO  com.alibaba.otter.canal.deployer.CanalLauncher - ## set default uncaught exception handler
    2021-06-23 16:40:51.151 [main] INFO  com.alibaba.otter.canal.deployer.CanalLauncher - ## load canal configurations
    2021-06-23 16:40:51.160 [main] INFO  com.alibaba.otter.canal.deployer.CanalStarter - ## start the canal server.
    2021-06-23 16:40:51.264 [main] ERROR com.alibaba.otter.canal.deployer.CanalLauncher - ## Something goes wrong when starting up the canal Server:
    org.I0Itec.zkclient.exception.ZkException: org.apache.zookeeper.KeeperException$NoAuthException: KeeperErrorCode = NoAuth for /otter
        at org.I0Itec.zkclient.exception.ZkException.create(ZkException.java:68) ~[zkclient-0.10.jar:na]
        at org.I0Itec.zkclient.ZkClient.retryUntilConnected(ZkClient.java:1001) ~[zkclient-0.10.jar:na]
        at org.I0Itec.zkclient.ZkClient.create(ZkClient.java:528) ~[zkclient-0.10.jar:na]
        at org.I0Itec.zkclient.ZkClient.createPersistent(ZkClient.java:294) ~[zkclient-0.10.jar:na]
        at org.I0Itec.zkclient.ZkClient.createPersistent(ZkClient.java:304) ~[zkclient-0.10.jar:na]
        at org.I0Itec.zkclient.ZkClient.createPersistent(ZkClient.java:304) ~[zkclient-0.10.jar:na]
        at org.I0Itec.zkclient.ZkClient.createPersistent(ZkClient.java:271) ~[zkclient-0.10.jar:na]
        at com.alibaba.otter.canal.deployer.CanalController.<init>(CanalController.java:138) ~[canal.deployer-1.1.5.jar:na]
        at com.alibaba.otter.canal.deployer.CanalStarter.start(CanalStarter.java:88) ~[canal.deployer-1.1.5.jar:na]
        at com.alibaba.otter.canal.deployer.CanalLauncher.main(CanalLauncher.java:117) ~[canal.deployer-1.1.5.jar:na]
    Caused by: org.apache.zookeeper.KeeperException$NoAuthException: KeeperErrorCode = NoAuth for /otter
        at org.apache.zookeeper.KeeperException.create(KeeperException.java:113) ~[zookeeper-3.4.5.jar:3.4.5-1392090]
        at org.apache.zookeeper.KeeperException.create(KeeperException.java:51) ~[zookeeper-3.4.5.jar:3.4.5-1392090]
        at org.apache.zookeeper.ZooKeeper.create(ZooKeeper.java:783) ~[zookeeper-3.4.5.jar:3.4.5-1392090]
        at org.I0Itec.zkclient.ZkConnection.create(ZkConnection.java:100) ~[zkclient-0.10.jar:na]
        at org.I0Itec.zkclient.ZkClient$3.call(ZkClient.java:531) ~[zkclient-0.10.jar:na]
        at org.I0Itec.zkclient.ZkClient$3.call(ZkClient.java:528) ~[zkclient-0.10.jar:na]
        at org.I0Itec.zkclient.ZkClient.retryUntilConnected(ZkClient.java:991) ~[zkclient-0.10.jar:na]
        ... 8 common frames omitted
    

    三、查询解决方案
    image.png
    image.png