一、安装部署
1.1. jar包下载:
https://archives.streamsets.com/datacollector/3.7.2/tarball/streamsets-datacollector-core-3.7.2.tgz
[maxiu@zhumei00 softwares]$ wget --no-check-certificate https://archives.streamsets.com/datacollector/3.7.2/tarball/streamsets-datacollector-core-3.7.2.tgz
1.2.解压
解压到你想要的路径下:
[maxiu@zhumei00 softwares]$ tar -zxvf streamsets-datacollector-core-3.7.2.tgz -C ../modules/
1.3.配置环境参数
[maxiu@zhumei00 ~]$ sudo vi /etc/security/limits.conf
添加下述内容(maxiu为用户名),该步骤需要重启
maxiu hard nofile 32768
maxiu soft nofile 32768
此时配置已经完成,只具备基础的少量origin和destination。
1.4.启动:
maxiu@zhumei00 streamsets-datacollector-3.7.2]$ pwd
/opt/modules/streamsets-datacollector-3.7.2
[maxiu@zhumei00 streamsets-datacollector-3.7.2]$ bin/streamsets dc
Java 1.8 detected; adding $SDC_JAVA8_OPTS of "-XX:+UseConcMarkSweepGC -XX:+UseParNewGC -Djdk.nio.maxCachedBufferSize=262144" to $SDC_JAVA_OPTS
Logging initialized @3087ms to org.eclipse.jetty.util.log.Slf4jLog
Running on URI : 'http://zhumei00:18630'
1.5.查看交互页面
用户名和密码都是admin
二、Mysql表同步
核心包不包含JDBC依赖,需要自己安装。
2.1 JDBC驱动安装
1) 创建外部依赖包目录(官网建议在StreamSet目录外建文件夹,我这边为了方便管理,建在StreamSet根目录下)。
[maxiu@zhumei00 streamsets-datacollector-3.7.2]$ pwd
/opt/modules/streamsets-datacollector-3.7.2
[maxiu@zhumei00 streamsets-datacollector-3.7.2]$ mkdir sdc-extras
2)配置参数
sudo vi /etc/profile 添加下面那句
echo export STREAMSETS_LIBRARIES_EXTRA_DIR="/opt/modules/streamsets-datacollector-3.7.2/sdc-extras/" >> /etc/profile
[maxiu@zhumei00 streamsets-datacollector-3.7.2]$ pwd
/opt/modules/streamsets-datacollector-3.7.2
[maxiu@zhumei00 streamsets-datacollector-3.7.2]$ vi etc/sdc-security.policy
修改下面的参数地址为自己的外部包地址
// For JARs to be available to all stage libraries
grant codebase "file:///opt/modules/streamsets-datacollector-3.7.2/sdc-extras/-" {
permission java.security.AllPermission;
};
重启。
3)安装JDBC.
打开StreamSet交互页面,点开右上角的PackageManager依次点击安装。
安装后,重启。
上传mysql-connector-java-5.1.40.jar
JDBC配置
配置用户名和密码
校验一下:点击右上角的眼睛
可以看到源数据。
退出预览,点击运行
此时源数据库有两条数据,结果表也有两条
我们监听的是INSERT模式,向user表添加一条数据,看会不会同步到user_target表(之前的配置是10s同步一次)
可以看到新数据同步过来了。
也可以配置多个数据源,同时监听INSERT、UPDATE、DELETE事件,我现在懒的要命,就不写了。
参考:
配置最大打开文件数:https://access.redhat.com/solutions/61334