• canal-admin可视化管理-配置(五)


    部署

    1.下载admin

    也可以下载源码 通过源码maven安装 从根目录targer下获取

    wget https://github.com/alibaba/canal/releases/download/canal-1.1.4/canal.admin-1.1.4.tar.gz

    2.解压

    #创建目录
    mkdir /tmp/canal-admin
    #解压到此目录 tar zxvf canal.admin
    -$version.tar.gz -C /tmp/canal-admin

    3.创建存放配置相关表

    /target/canal.admin-1.1.4/conf/canal_manager.sql  有sql脚本

    我遇到了启动server报错 server modified_time不能为null的异常我们将相关表改为可空就行 不影响使用

    ALTER TABLE canal_manager.canal_node_server
    
    MODIFY modified_time timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
    ALTER TABLE canal_manager.canal_adapter_config
    MODIFY modified_time timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
    ALTER TABLE canal_manager.canal_cluster
    
    MODIFY modified_time timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
    
    ALTER TABLE canal_manager.canal_config
    
    MODIFY modified_time timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
    ALTER TABLE canal_manager.canal_instance_config
    
    MODIFY modified_time timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
    ALTER TABLE canal_manager.canal_user
    
    MODIFY creation_date timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;

    4.配置修改

    vi conf/application.yml
    server:
      port: 8089 #对外暴露端口
    spring:
      jackson:
        date-format: yyyy-MM-dd HH:mm:ss
        time-zone: GMT+8
    
    spring.datasource:
      address: 127.0.0.1:3306
      database: canal_manager #存放配置的数据库
      username: canal #数据库用户名
      password: canal #数据库密码
      driver-class-name: com.mysql.jdbc.Driver
      url: jdbc:mysql://${spring.datasource.address}/${spring.datasource.database}?useUnicode=true&characterEncoding=UTF-8&useSSL=false
      hikari:
        maximum-pool-size: 30
        minimum-idle: 1
    
    canal:
      adminUser: admin
      adminPasswd: admin

    5.将mysql 驱动包放到lib目录下

    不同mysql版本不一样如:mysql-connector-java-5.1.47.jar

    6.初始化数据库和表

    canal有提供admin的相关数据库和表的创建语句 找到并到数据库执行就行了

    canalAdmin1.1.4/conf/canal_manager.sql 

    7.启动

    sh bin/startup.sh

    如果启动不不起来查看日志/logs

    5.登录

    http://127.0.0.1:8089 用户名:admin 密码:123456

    正常出来页面表示成功

    http://127.0.0.1:8089

    相关表介绍

    UI介绍

    集群管理:就是我们集群下的canal-server的公共配置(canal.properties) 由以前各个服务器配配置改为数据库配置和 zk地址,修改配置通知集群下的所有server

    Server管理:注册到Admin的所有Server (针对单机可以配置各个server的canal.properties)

    instance管理  对应以前的example 下的instance配置,不同的client可以配置订阅不同的instance配置 不同的instance下维护各自的binlog读取的指针位置 和指定库

    如多个,号隔开 需要像example一样创建对应的目录

    canal.properties 下的canal.destinations = example

    单机配置

    1.修改配置canal_local.properties

    因为我们走admin维护 相关配置都配置在库里,所以我们只需要指定admin的地址和自动注册

    # register ip
    canal.register.ip =
    
    # canal admin config
    canal.admin.manager = 127.0.0.1:8089
    #与admin建立的链接端口 别冲突了
    canal.admin.port = 31110
    canal.admin.user = admin
    canal.admin.passwd = 4ACFE3202A5FF5CF467898FC58AAB1D615029441
    # 知否自动注册 天ture
    canal.admin.register.auto = true
    #集群配置名字 我们是单机就不填
    canal.admin.register.cluster =
    
    #server暴露端口
    canal.port = 11115
    canal.metrics.pull.port = 11116

    2.启动server

    指定使用canal_local.propertiesl配置文件,这里之前的cana.properties 和example的配置文件已经没用了

    可以发现使用local我们的配置少了很多,其他我们要配置到admin 落库

    ./startup.sh local

    3.admin增加配置落库

    使用数据库管理配置 我们将之前配置的canal.properteis配置文件拷贝进来,注释掉canal.port = 11115 canal.metrics.pull.port = 11116 local里面配置了

     

     看日志触发了重启 后续我们就可以用admin启动和配置了

    4.instance配置 example下的instance.properties 拷贝过来就行保存落库 后续我们可以直接再这里修改相关配置

    这里我们改一下名字 熟悉一下此配置在哪里

     5.因为上面盖了名字我们回头去改配置

    canal.destinations = example

    改为

    canal.destinations = example_single

    或者

    客户端就可以订阅不同实例的库 或者单独维护binlog读取指针

    canal.destinations = example,example_single

    集群配置

    1.因为集群多个canal-server 相关配置都是一样的 除了暴露的端口不一样 所以我们要先增加集群配置

    2.集群配置文件配置

    因为集群除了各个server的端口不一样其他都一样将 canal.properties拷贝过来 将端口注释:canal.port = 11111 canal.metrics.pull.port = 11112 local有配置

    3.各个canal_local.properties文件修改 

    # register ip
    canal.register.ip =
    
    # canal admin config
    canal.admin.manager = 127.0.0.1:8089
    canal.admin.port = 21110
    canal.admin.user = admin
    canal.admin.passwd = 4ACFE3202A5FF5CF467898FC58AAB1D615029441
    # admin auto register
    canal.admin.register.auto = true
    #canalcluster 应用的配置和zk
    canal.admin.register.cluster = canalcluster
    
    #暴露端口
    canal.port = 11111
    canal.metrics.pull.port = 11112
    canal.port = 11111 ,canal.metrics.pull.port = 11112,canal.admin.port = 21110 我们需要修改保证不冲突 然后启动各个server

    测试

    后续我们改配置和查日志和重启就可以根据admin

  • 相关阅读:
    分享Silverlight/WPF/Windows Phone一周学习导读(12月27日1月2日)
    分享Silverlight/WPF/Windows Phone一周学习导读(1月17日1月23日)
    分享Silverlight/WPF/Windows Phone一周学习导读(1月9日1月16日)
    失眠随笔
    Unix编程艺术:多道程序设计
    xm create的过程
    Unix编程艺术:透明性
    创建逻辑卷的过程
    hvm tap vs vif
    xen bootloader
  • 原文地址:https://www.cnblogs.com/LQBlog/p/14598582.html
Copyright © 2020-2023  润新知