1、 手动安装ant、
1. 到Apache官网下载最新版本的ant:http://ant.apache.org/bindownload.cgi
2. 解压下载下来的.tar.gz文件: tar -zxvfapache-ant-1.8.2-bin.tar.gz(可能会要求输入密码)
3.将解压出来的文件移动到/home/下:sudo mvapache-ant-1.8.2 /home/ (sudo不能省,否则没有权限)
4.配置环境变量:sudogedit /etc/profile,在最后添加以下内容:
exportANT_HOME=opt/apache-ant-1.8.4
exportJAVA_HOME=/usr/jdk (这是你自己jdk所在的路径)
export PATH=$JAVA_HOME/bin:$PATH:$ANT_HOME/bin
exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
5.然后执行命令:source /etc/profile
6.Ant就配置成功了,可以通过命令:ant -version 进行检测是否配置成功。
2、安装g++,rpm
Sudo apt-getinstall g++
Sudo apt-getinstall rpm
3、请确保安装DataX的机器已经安装上了Hdfs客户端,并能够正常访问Hdfs文件系统,例如使用命令行: hadoop fs -ls /
同时请确保在执行DataX的用户/home目录下,链接Hadoopconfig目录文件,例如在用户目录下执行
ln -s /home/$user/datax/ conf /hadoop/conf
4、安装mysql
Sudo apt-get install mysql-server
登录mysql -uroot –p密码(p后面紧跟mysql密码)
grant all privileges on *.* to [email protected]‘localhost‘ identified by ‘woody‘with grant option;
create database xdata;
use xdata;
create table test_datax(user_id int,user_name varchar(30));
insert into test_datax values(111, ‘peterlee‘);
insert into test_datax values(111, ‘peterlee‘);
insert into test_datax values(111, ‘peterlee‘);
FLUSH PRIVILEGES;
执行\q保存并退出mysql
5、安装hadoop(本文为伪分布式安装)
1)安装
tar xf hadoop-1.0.3.tar.gz
mv hadoop-1.0.3 /home/sunlylorn/hadoop
2)修改环境变量
vim ~/.bashrc
添加:
export PATH=/home/sunlylorn/hadoop/bin:$PATH
保存退出,输入以下命令使之立即生效。
source ~/.bashrc
3)修改conf/hadoop-env.sh文件
export JAVA_HOME=/usr/lib/jvm/java-7-sun
4)编辑配置文件
a)修改conf/core-site.xml:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000/</value>
</property>
</configuration>
b)修改conf/mapred-site.xml:
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
c)修改conf/hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
5)格式化HDFS系统
hadoop namenode -format
6)启动守护进程
/home/sunlylorn/hadoop/bin/start-all.sh --config /home/sunlylorn/hadoop/conf
7)测试
执行
hadoop version
如果输出以下信息则表明安装成功
Hadoop 1.0.3
Subversion https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.0 -r 1335192
Compiled by hortonfo on Tue May 8 20:19:10 UTC 2012
From source with checksum e6b0c1e23dcf76907c5fecb4b832f3be
6、安装编译datax
从淘宝的开源svn上checkout一份代码
svn co http://code.taobao.org/svn/datax/trunk datax
用当前系统hadoop中的hadoop-core-xxxx.jar 替换(或者直接复制到)datax/libs下面的jar包
在datax/rpm下面有spec文件,rpm打包的配置文件
rpmbuild --ba XXXXX.spec (例如,t_dp_datax_engine.spec,记得修改spec文件中的路径问题,路径问题还存在于下面的xml文件中以及后面编译过程中需要自己创建部分路径e.g xxxxxxxxxxxxi386之类)
要想完成一个读写至少需要打包编译3个文件:engine.spec+reader.spec+writer.spec
编译完成后会在datax/plugins中生成相应的文件(这里也可能涉及到自己创建路径的问题)
Rpm 制作完成后,即可分发、安装,例如使用
rpm -ivh t_dp_datax_engine.rpm (这里可能需要添加一个参数-nodeps,即rpm –ivh –nodeps xxxxx.rpm)
即可安装 DataXengine 包,需要注意的是 engine 的 rpm 地址源自于上图的截图
中信息(即生成的路径为RPMS中的xxx.rpm文件)。
在datax/bin目录下执行 pythondatax.py -e true 生成一个job配置文件 XXXXXXXXXXXXXX.xml (这里的xml文件中的部分内容需要修改e.g数据库的的ip及数据库名字等信息,配置时需要注意hadoop.job.ugi=woody,supergroup及hdfs://localhost:9000/test_in及hadoop_conf=/home/woody/hadoop/conf/core-site.xml)
ptyhon datax.py /home/$user/datax/jobs/XXXXXXXXXXX.xml