datax、datax-web分布式安装部署

1安装datax

下载datax.tar.gz
http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz

1.1解压datax包

cd /app/datax

tar -zxvf datax.tar.gz

1.2验证datax是否成功

进入到datax安装目录执行

bin/datax.py job/job.json

如下图就是成功

在这里插入图片描述

1.3解决datax不支持HA问题,将集群配置问价加入hdfswriter

说明:datax迁移数据,本身是reader读取,writer写。hdfswrier写入hdfs的时候,读不到ha集群的配置,所以将集群的hdfs-site.xml从集群中拿出来,添加到hdfswriter中去。以下是详细步骤。(hdfsreader同理,根据自己的需求去配置)

l 查找hdfs-site.xml和core-site.xml

find / -name hdfs-site.xml

l 进入目录将这两个文件取出

cd /etc/hadoop/3.1.0.0-78/0/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GeMl7xl8-1595235371980)(E:\tools\安装目录\markfiles\本地图片\wps105.jpg)]

l 安装lrzsz快捷工具

yum install -y lrzsz

l 用sz hdfs-site.xml , sz core-site.xml将文件依次取出到桌面

在这里插入图片描述

l 用sz取出datax中的hdfswriter包;

cd /app/datax/datax/plugin/writer/hdfswriter/

执行sz hdfswriter-0.0.1-SNAPSHOT.jar

在这里插入图片描述

l 然后进行进行备份

mv hdfswriter-0.0.1-SNAPSHOT.jar hdfswriter-0.0.1-SNAPSHOT.jar_bk

此时取出的总共4个文件(hive-site.xml缺少无妨)

在这里插入图片描述

l 将取出的xxx.xml文件用解压工具winRAR放入包中

在这里插入图片描述

l 然后将hdfswriter-0.0.1-SNAPSHOT.jar重新放入集群的/app/datax/plugin/writer/hdfswriter这个位置

在这里插入图片描述

以上操作都在datax主节点(yuanjing02)完成

l 将主节点datax文件夹发送到其余节点yuanjing01,04的/app/datax下

scp -r /opt/datax yuanjing01:/app/datax/
scp -r /opt/datax yuanjing04:/app/datax

安装datax-web

l 步骤0解压datax-web包

cd /app/datax/
tar -xvf datax-web.tar.gz

若没有datax-web包,可以直接git

yum install -i git -y
git clone https://github.com/WeiYe-Jing/datax-web.git

l 步骤1在mysql中创建元数据(mysql根据自己集群mysql而定这里以yuanjing03为例)

将解压出来的文件中的datax_web.sql发送到mysql所在节点;

scp /app/datax/datax-web/doc/db/datax_web.sql yuanjing03:/app/datax

进入mysql所在节点mysql -uroot -p

create database datax_web;
use data_web;
source /app/datax/datax_web.sql;

在这里插入图片描述

修改datax-admin下的配置文件

vim /app/datax/datax-web/datax-admin/src/main/resources/application.yml

在这里插入图片描述

l 步骤2.修改datax-executor配置,这里我们先为yuanjing04安装executor

vim /app/datax/datax-web/datax-executor/src/main/resources/application.yml

在这里插入图片描述

l 步骤3进入datax-web文件夹,用maven打包;

cd /app/datax/datax-web
mvn clean
mvn package -Dmaven.test.skip=true

打包后/app/datax/datax-web/datax-executor和/app/datax/datax-web/datax-admin

target下会出现一个datax-executor-2.1.1.jar 和datax-admin-2.1.1.jar

l 步骤4 安装executor到yuanjing04节点上

cd /app/datax/datax-web/datax-executor

将 datax-executor-2.1.1.jar发送到yuanjing04,01节点
.

scp datax-executor-2.1.1.jar yuanjing04:/app/datax/datax-web

l 重复步骤2、3、4将datax-executor-2.1.1.jar发送到yuanjing01节点

l yuanjing02节点上executor只需重复步骤2、3

然后将 admin execuotr的jar移动到 /opt/datax

cp /app/datax/datax-web/datax-admin/target/datax-admin-2.1.1.jar /app/datax
cp /app/datax/datax-web/datax-executor/target/datax-executor-2.1.1.jar /app/datax

l 启动

l 编写启动脚本 datax-web.sh scp发送到所有安装datax-web 的节点/app/datax/

vim datax-web.sh

#!/bin/sh

#$1 为admin 或者executor

ps -ef | grep $1 | grep -v grep > /tmp/dataxtmp.log

a=`awk '{print $15}' /tmp/dataxtmp.log`

if [[ $a == datax-$1-2.1.1.jar ]]thenecho "datax-$1 is running"

elseecho "datax-$1 is restaring"nohup java -Xmx1024M -Xms1024M -Xmn448M -XX:MaxMetaspaceSize=192M -XX:MetaspaceSize=192M -jar datax-$1-2.1.1.jar&

sleep 3

Fi

l 启动定时任务

说明:(定时服务只是为了防止executor意外退出,定时脚本可以失败重启)不是生产环境可以省略,下面定时也是如此

在yuanjing02 (admin)上 /app/datax/下执行以下命令

sh dataxserver.sh admin
sh dataxserver.sh executor

crontab -e

*/30 * * * * /opt/datax-web/**datax-web.sh admin**

*/30 * * * * /opt/datax-web/**datax-web.sh executor**

l 在yuangjing01,04 (executor) /app/datax下执行,并添加定时

sh dataxserver.sh executor

crontab -e
*/30 * * * * /opt/datax-web/datax-web.sh executor

l 登录界面 admin 123456(默认)

http://${hostnameIP}:8080/index.html#/dashboard

说明:${hostnameIP}为自己服务器ip

添加执行器

在这里插入图片描述

若重复指定执行器,请数据苦衷修改groupid 1,2,3

在这里插入图片描述

l 登录界面 admin 123456(默认)

http://192.168.1.202:8080/index.html#/dashboard

添加执行器

在这里插入图片描述

若重复指定执行器,请数据苦衷修改groupid 1,2,3

在这里插入图片描述

至此,datax 、datax-web安装完毕!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值