Datax -Web 安装步骤

Datax -Web 安装步骤

环境要求

java1.8
python 2.7
mysql 5.7
maven
gcc

安装前置命令

#关闭防火墙
systemctl stop firewalld.service
#关闭防火墙自动启动
systemctl disable firewalld.service
#查看防火墙服务状态
systemctl status firewalld.service

1. yum换源(阿里)

因为需要使用yum的下载命令但是,自带的源头下载缓慢,所以我们需要换源处理。

cd /etc/yum.repos.d

发现个 CentOS-Base.repo 没错其实就是更换这个,更换之前建议先备份,我使用的是备份的方法。

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-{版本号}.repo

之后上面的就是下载的阿里的,看清下载后文件名改为CentOS-Base.repo跟之前一样的 名称其实可以不一样的后面生成了都可以使用

之后我们顺便下载个 epel 主要把很多包没得有,安装这个扩展包就能下载到了

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

最后呢 清理缓存并生成新的缓存

yum clean all
yum makecache

以上就是更换yum源的方法

2. Java安装步骤

CentOS7自带openjdk1.8,但是使用的时候会出现很多问题,因此我们需要去卸载自带的openjdk1.8,并安装完整版本的jdk1.8.作为安装datax-web的前置条件。

2.1 首先检查系统是否安装jdk,若系统安装则卸载后再安装,命令如下:
java -version
######################################################
# 已安装 则出现版本信息 openjdk version [*,*.*]
# 注意 信息若无则无需下面命令
######################################################
2.2 卸载centOS的openjdk
#查询JDK安装【rpm -qa | grep java或rpm -qa | grep jdk或rpm -qa | grepg cj】
rpm -qa | grep java
#####查询到的内容#############################################
#python -java packages-3.4.1-11.el7.noarch
#java -1.8.0 -openjdk -head less -1.8.0.262.b10-1.el7.x86_64
#java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64
#tzdata-java-2020a-1.el7.noarch
#javapackages-tools-3.4.1-11.el7.noarch
#java-1.7.0-openjdk-headless-1.7.0.261-2.6.22.2.el7_8.x86_64 #java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
#############################################
#卸载查询到的JDK【rpm-e--nodepsxxx.x86_64运行该指令将多个尾缀为“.x86_64”的文件卸载】
rpm -e --nodeps java-1.7.0 -openjdk -1.7.0.261 -2.6.22.2.el7_8.x86_64
rpm -e --nodeps java-1.7.0 -openjdk -headless -1.7.0.261-2.6.22.2.el7_8.x86_64
rpm -e --nodeps java-1.8.0 -openjdk -1.8.0.262.b10-1.el7.x86_64
rpm -e --nodeps java-1.8.0 -openjdk -headless-1.8.0.262.b10-1.el7.x86_64
2.3 安装jdk
#步骤-1:通过命令获得javaJDK列表
yum -y list java*
#####查询到的内容#########################################
#可安装的软件包
#java-1.6.0-openjdk.x86_64 1:1.6.0.41-1.13.13.1.el7_3 base
#......
#java-1.7.0-openjdk.x86_64 1:1.7.0.261-2.6.22.2.el7_8 base
#......
#java-1.8.0-openjdk.i686 1:1.8.0.352.b08-2.el7_9 updates
#......
#java-11-openjdk.i686 1:11.0.17.0.8-2.el7_updates
#......
########################################################
#步骤-2:通过yum安装JDK下载java-1.8.0可以选择自己需要的版本
yum -y install java-1.8.0-openjdk*
2.4 追踪JDK安装路径
#通过yum默认安装的路径为/usr/lib/jvm/java-版本号[亦可通过指令查询]#查询运行文件所在路径
which java
#####查询到的内容#####
#/usr/bin/java
####################
ls -lrt /usr/bin/java
#####查询到的内容#########################################
# lrwxrwxrwx1 root root 22 11月24日 15:27 /usr/bin/java->-/etc/alternatives/java ########################################################
ls -lrt /etc/alternatives/java
######查询到的内容#########################################
# lrwxrwxrwx 1 root root 1月24日 15:27/etc/alternatives/java->/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.352.b08-2.el7_9.x86_64/jre/bin/java
########################################################
#JDK安装路径:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.352.b08-2.el7_9.x86_64
########################################################
vim /etc/profile
#修改/etc/profile文件,添加JAVA_HOME【尾部】
#setjavaenvironment
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
export PATH=$PATH:$JAVA_HOME/bin
#使环境变量生效
source /etc/profile
2.5 测试jdk是否安装成功
java -version
#####查询到的内容########################################
openjdk version "1.8.0_312"
OpenJDK Runtime Environment (build 1.8.0_312-b07)
OpenJDK 64-Bit Server VM (build 25.312-b07, mixed mode)
#######################################################
2.6 文件安装

若网络出现问题,可以使用下载安装的方式,
官网下载
上传到服务器【如:/usr/local/soft/jdk-8u131-linux-x64.tar.gz】

#创建安装目录
mkdir /usr/local/java
#解压【安装】
tar -zxvf /usr/local/soft/jdk-8u131-linux-x64.tar.gz -C /usr/local/java/
#重命名
mv /usr/local/java/jdk1.8.0_131 /usr/local/java/jdk1.8
#编辑/etc/profile文件设置环境变量
export JAVA_HOME=/usr/local/java/jdk1.8
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar 
export PATH=$PATH:$JAVA_HOME/bin
#使环境变量生效
source /etc/profile
#测试
java -version

3. 安装make

yum -y install gcc automake autoconf libtool make
yum -y install gcc gcc-c++ 

4. python 3 安装

4.1、先安装依赖包
yum -y install openssl-devel bzip2-devel
4.2、在线安装python 3
#创建/usr/local/soft文件【以后安装都再此文件夹下】
mkdir /usr/local/soft
#进入安装目录
cd /usr/local/soft
#下载python3组件
yum install python3 -y
4.3、安装完成后,验证安装情况
#查看python版本信息
python3 -V 
#######结果##########
#Python 3.6.8
####################
#查看pip版本信息
pip3 -V
#######结果##########
#pip 9.0.3 from /usr/lib/python3.6/site-packages (python 3.6)
####################
4.4、安装virtualenv
#升级 pip 版本(可不升级)
python3 -m pip install --upgrade pip
#安装 virtualenv
pip3 install virtualenv -i https://pypi.douban.com/simple/
####结果###########################
#Installing collected packages: distlib, platformdirs, filelock, zipp, importlib-resources, typing-extensions, importlib-metadata, virtualenv
#Successfully installed distlib-0.3.6 filelock-3.4.1 importlib-metadata-4.8.3 importlib-resources-5.4.0 platformdirs-2.4.0 typing-extensions-4.1.1 virtualenv-20.17.1 zipp-3.6.0
##################################
#建立软连接
ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv
#安装完成后,验证安装情况
virtualenv --version
###########结果###################
# virtualenv 20.17.1 from /usr/local/lib/python3.6/site-packages/virtualenv/__init__.py
#################################

安装mysql 5.7

datax可视化管理界面datax-web,需要配置MySQL连接。

5.1 下载MySQL安装包
# 下载MySQL安装包
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar
5.2 卸载CentOS自带的mariadb
# 查询CentOS是否安装mariadb
rpm -qa | grep mariadb
# 结果
# mariadb-lib-5.5.68-1.el7.x86_64
# 卸载
rpm -e --nodeps mariadb-lib-5.5.68-1.el7.x86_64
5.3 解压
#创建mysql-5.7
mkdir /usr/local/mysql-5.7
#进入soft
cd /usr/local/soft
#解压mysql安装包到mysql-5.7
tar -xvf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar -C /usr/local/mysql-5.7
#进入mysql-5.7
cd /usr/local/mysql-5.7
#查看内容
ll
####结果#####################################
#-rw-r--r--. 1 7155 31415 16916168 9月14 16:28 mysql-community-client-5.7.28-1.el7.x86_64.rpm
#-rw-r--r--.1 7155 31415 2633904 9月14 16:29 mysql-community-client-plugins-5.7.28-1.el7.x86_64.rpm
#-rw-r--r--.1 7155 31415 662344 9月14 16:29 mysql-community-common-5.7.28-1.el7.x86_64.rpm
#-rw-r--r--.1 7155 31415 507228688 9月14 16:30 mysql-community-debuginfo-5.7.28-1.el7.x86_64.rpm
#-rw-r--r--.1 7155 31415 1961680 9月1416:30 mysql-community-devel-5.7.28-1.el7.x86_64.rpm
#-rw-r--r--.1 7155 31415 4216960 9月14 16:31 mysql-community-embedded-compat-5.7.28-1.el7.x86_64.rpm
#-rw-r--r--.1 7155 31415 2218812 9月14 16:31 mysql-community-icu-data-files-5.7.28-1.el7.x86_64.rpm
#-rw-r--r--.1 7155 31415 1582440 9月14 16:31 mysql-community-libs-5.7.28-1.el7.x86_64.rpm
#-rw-r--r--.1 7155 31415 685968 9月14 16:31 mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm
#-rw-r--r--.1 7155 31415 67166828 9月14 16:31 mysql-community-server-5.7.28-1.el7.x86_64.rpm
#-rw-r--r--.1 7155 31415 25248244 9月14 16:32 mysql-community-server-debug-5.7.28-1.el7.x86_64.rpm
#-rw-r--r--.1 7155 31415 275570172 9月14 16:34 mysql-community-test-5.7.28-1.el7.x86_64.rpm
5.4 安装组件
#使用rpm命令安装MySQL组件,使用rpm-ivhfile进行安装,按照依赖关系安装,依赖关系依次是common、libs、client、server#具体名称,见前方ll指令列出的文件列表,安装过程中有依赖需求,就先装依赖项
cd /usr/local/mysql-5.7
#安装1:common
rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm
#安装2:libs#先安装对应依赖
rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm 
#安装3:client
rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm
#安装4:server
#先安装对应依赖
rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm
######若出现以下依赖提示#############################################################
#libaio.so.1()(64bit)被mysql-community-server-5.7.28-1.el7.x86_64需要
#libaio.so.1(LIBAIO_0.1)(64bit)被mysql-community-server-5.7.28-1.el7.x86_64需要
#libaio.so.1(LIBAIO_0.4)(64bit)被mysql-community-server-5.7.28-1.el7.x86_64需要
#安装缺少的依赖#
sudo yum install -y libaio
######若出现以下依赖提示#############################################################
#libtinfo.so.5()(64bit) 被 mysql-community-client-5.7.28-1.el7.x86_64 需要
#安装缺少的依赖#
dnf install ncurses-compat-libs
#################################################################################
rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm
########结果######
# [/usr/lib/tmpfiles.d/mysql.conf:23] Line references path below legacy directory /var/run/, updating /var/run/mysqld → /run/mysqld; please update the tmpfiles.d/ drop-in file accordingly.
#################

5.5启动MySQL

systemctl start mysqld.service
#查看状态
systemctl status mysqld.service

5.6、修改密码

# 查文件my.cnf【ll/etc/|grepmy】
#开my.cnf文件权限
chmod 777 /etc/my.cnf
vim /etc/my.cnf
#在my.cnf文件尾部添加
####删除尾部其他,添加如下###############################
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
bind-address=127.0.0.1
default_authentication_plugin=mysql_native_password
##################################################
###查看临时密码
grep 'password' /var/log/mysqld.log
####结果#########################################################2022-11-20T12:19:30.108658Z6[Note][MY-010454][Server]Atemporarypasswordisgeneratedforroot@localhost:aFmfwPo5(q>e
##################################################################修改密码【执行命令,并输入临时密码(aFmfwPo5(q>e)】
mysql -uroot -p
#下面两句是修改安全策略,尽可能写上
set global validate_password_policy=LOW;
set global validate_password_length=6;
#进入MySQL指令模式后,设置密码"123456"【密码自行指定,要注意满足MySQL验证'root'@/'%' /此处为转义符
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
#看当前所有数据库
show databases;
#进入MySQL数据库
use mysql;
#查看mysql数据库中所有的表
show tables;
#查看user表中的数据
select Host,User from user;
#修改user表中的Host
update user set Host='%' where User='root';
#刷新一下
flush privileges;
#授权远程登录
grant all privileges on *.* TO 'root'@'%' with grant option;
#刷新一下
flush privileges;
#退出
exit;
#重启MySQL
systemctl restart mysqld.service

5.7、附:其他指令

#查看MySQL是否自启
ps -ef|grep mysql
#查看状态#
systemctl status mysqld.service
#启动
systemctl start mysqld.service
#关闭
systemctl stop mysqld.service
#重启
systemctl restart mysqld.service
#登录
mysql -u root -p

6 安装Maven

6.1 下载Maven
#进入soft目录
cd /usr/local/soft
#下载Maven安装包
wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
6.2 解压Maven
mkdir /usr/local/maven
#解压apache-maven至/usr/local/maven
tar -zxvf apache-maven-3.6.3-bin.tar.gz -C /usr/local/maven 
6.3 配置环境变量

修改环境变量配置文件

vim /etc/profile

末尾添加

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
export MAVEN_HOME=/usr/local/maven/apache-maven-3.6.3
export PATH=$PATH:$JAVA_HOME/bin:${MAVEN_HOME}/bin
# 使环境变量生效
source /etc/profile
6.5验证 maven 安装是否成功
mvn -version
#######结果############
#Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
#Maven home: /usr/local/maven/apache-maven-3.6.3
#Java version: 1.8.0_312, vendor: Red Hat, Inc., runtime: /usr/lib/jvm/java-#1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64/jre
#Default locale: zh_CN, platform encoding: UTF-8
#OS name: "linux", version: "4.18.0-305.3.1.el8.x86_64", arch: "amd64", family: "unix"
######################
6.6 修改maven setting.xml文件
<mirrors>
     <mirror>
      <id>aliyunmaven</id>
      <mirrorOf>*</mirrorOf>
      <name>阿里云公共仓库</name>
      <url>https://maven.aliyun.com/repository/public</url>
    </mirror>
  </mirrors>

7 安装Datax

7.1 获取Datax 的git源码
 git config --global user.name "you git name"
 git config --global user.email"you git email"
 sudo rm -rf /home/w/.ssh/
 ssh-keygen -t rsa -C "you git email"
 ##结果##
 #直接回车 使用默认
 #Generating public/private rsa key pair. 
 #Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa):
 #######

浏览器上打开https://github.com/,登陆自己的账户,进入设置后,选择ssh设置
选择添加SSH Key(页面上的New SSH key)

cat ~/.ssh/id_rsa.pub
##结果##
#ssh-rsa AAAAB3Nza……= you git email
#######

将内容写入Key中保存即可

7.2 下载并打包
#下载DataX源码:
git clone git@github.com:alibaba/DataX.git
#通过maven打包:
cd {DataX_source_code_home}
mvn -U clean package assembly:assembly -Dmaven.test.skip=true
#####结果#####
#[INFO] BUILD SUCCESS
#[INFO] ------------------------------------------------------------------------
#[INFO] Total time:  16:12 min
#[INFO] Finished at: 2023-01-11T01:24:53+08:00
#[INFO] ------------------------------------------------------------------------
#############
7.3 创建配置文件
cd target/datax/datax/bin
vim stream2stream.json

根据模板配置json如下:

 #stream2stream.json
 {
   "job": {
     "content": [
       {
         "reader": {
           "name": "streamreader",
           "parameter": {
             "sliceRecordCount": 10,
             "column": [
               {
                 "type": "long",
                 "value": "10"
               },
               {
                 "type": "string",
                 "value": "hello,你好,世界-DataX"
               }
             ]
           }
         },
         "writer": {
           "name": "streamwriter",
           "parameter": {
             "encoding": "UTF-8",
             "print": true
           }
         }
       }
     ],
     "setting": {
       "speed": {
         "channel": 5
        }
     }
   }
 }
7.4启动datax
python datax.py ./stream2stream.json
####结果####
#2023-01-11 01:35:32.330 [job-0] INFO  JobContainer - 
#任务启动时刻                    : 2023-01-11 01:35:22
#任务结束时刻                    : 2023-01-11 01:35:32
#任务总计耗时                    :                 10s
#任务平均流量                    :               95B/s
#记录写入速度                    :              5rec/s
#读出记录总数                    :                  50
#读写失败总数                    :                   0
##########

8 DataX-Web的部署

8.1安装datax-web
#进入datax文件夹
cd /usr/local/datax
#下载源码
git clone https://github.com/WeiYe-Jing/datax-web.git
#####结果#####
#正克隆到 'datax-web'...
#remote: Enumerating objects: 14386, done.
#remote: Counting objects: 100% (511/511), done.
#remote: Compressing objects: 100% (272/272), done.
#接收对象中: 100% (14386/14386), 42.83 MiB | 163.00 KiB/s, 完成.
#remote: Total 14386 (delta 160), reused 426 (delta 129), pack-reused 13875
#处理 delta 中: 100% (6206/6206), 完成.
#############
#进入web项目
cd datax-web/
#查看文件夹目录
ll
######结果#####
#总用量 36
#drwxr-xr-x. 3 root root   104 1月  11 13:57 bin
#drwxr-xr-x. 3 root root    32 1月  11 13:57 datax-admin
#drwxr-xr-x. 2 root root    40 1月  11 13:57 datax-assembly
#drwxr-xr-x. 3 root root    32 1月  11 13:57 datax-core
#drwxr-xr-x. 3 root root    32 1月  11 13:57 datax-executor
#drwxr-xr-x. 3 root root    32 1月  11 13:57 datax-rpc
#drwxr-xr-x. 3 root root    23 1月  11 13:57 doc
#-rw-r--r--. 1 root root  1062 1月  11 13:57 LICENSE
#-rw-r--r--. 1 root root  2589 1月  11 13:57 pom.xml
#-rw-r--r--. 1 root root 14744 1月  11 13:57 README.md
#-rw-r--r--. 1 root root  9340 1月  11 13:57 userGuid.md
###############
8.2创建数据库
#进入bin/db
cd bin/db
#查看sql文件
ll
####结果####
#-rw-r--r--. 1 root root 19633 1月  11 13:57 datax_web.sql
############

创建数据库时需要注意在job_info 表中 添加 user_id(int 11)这个字段
在mysql中运行该命令

8.3 打包datax-web

#清除缓存
mvn clean
#####结果#####
#[INFO] --------------------------------------------------------------------
#[INFO] BUILD SUCCESS
#[INFO] --------------------------------------------------------------------
#[INFO] Total time:  8.582 s
#[INFO] Finished at: 2023-01-11T14:31:32+08:00
#[INFO] --------------------------------------------------------------------
#############
#打包
mvn clean install
#############
#[INFO] --------------------------------------------------------------------
#[INFO] BUILD SUCCESS
#[INFO] --------------------------------------------------------------------
#[INFO] Total time:  01:17 min
#[INFO] Finished at: 2023-01-11T14:43:59+08:00
#[INFO] --------------------------------------------------------------------
#############

8.4 解压datax-web

#将安装包移动至/usr/local/datax
mv /usr/local/datax/datax-web/build/datax-web-2.1.2.tar.gz /usr/local/datax
#进入datax
cd /usr/local/datax
# 解压安装包
tar -zxvf datax-web-2.1.2.tar.gz
#进入解压后的datax-web-2.1.2/
cd datax-web-2.1.2/
#查看目录结构
ll
###结果###
#总用量 28
#drwxrwxrwx. 3 root root   104 1月  11 16:14 bin
#drwxr-xr-x. 2 root root    77 1月  11 16:17 packages
#-rwxrwxrwx. 1 root root 14744 1月  11 16:14 README.md
#-rwxrwxrwx. 1 root root  9340 1月  11 16:14 userGuid.md
#########
sh bin/install.sh
#####结果######
#Do you want to initalize database with sql: [/usr/local/datax/datax-web-2.1.2/bin/db/datax_web.sql]?
#默认回车
##############
#目录结构以更新
ll
#####
#drwxrwxrwx. 3 root root   123 1月  11 16:18 bin
#drwxr-xr-x. 4 root root    47 1月  11 16:18 modules
#drwxr-xr-x. 2 root root    77 1月  11 16:17 packages
#-rwxrwxrwx. 1 root root 14744 1月  11 16:14 README.md
#-rwxrwxrwx. 1 root root  9340 1月  11 16:14 userGuid.md
#####
cd modules/
8.5 修改配置文件
vim datax-admin/conf/bootstrap.properties
DB_HOST=you sql host
DB_PORT=you sql port
DB_USERNAME=you sql name
DB_PASSWORD=you sql password
DB_DATABASE=you sql database
vim datax-executor/conf/application.yml
datax:
  job:
    admin:
      addresses: http://you ip:${datax.admin.port}
    executor:
      appname: datax-executor
      ip: you ip
pypath: 你的datax datax.py 文件地址
8.6 运行
#进入data-web
cd /usr/local/datax/data-web
#运行命令
sh bin\start-all.sh
####结果####
#2023-01-11 17:02:33.367 [INFO] (888954) /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64/bin/java
#2023-01-11 17:02:33.370 [INFO] (888954) Waiting DATAX-EXEXUTOR to start complete ...
#2023-01-11 17:02:33.635 [INFO] (888954) DATAX-EXEXUTOR start success
###########

9 访问

http://youhost:9527/index.html
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值