C++ Hadoop实战备忘
前言:Hadoop用于解决大数据处理问题。看到这么火,咱也来凑把热闹,瞧瞧到底是什么神奇的技术。
实战过程,还是很波折。毕竟,对这些Hadoop的命令不是很熟。
所幸,天不负有心人,终于跑通了第一个示例。
对我而言,这个的意义,不亚于输出了开天辟地的“hello world”。
配置过程中出错时,不要泄气,一般是由于路径配置不对引起,可与本文档对比查错。
操作系统:Ubuntu 10.04 LTS
JDK:jdk-6u18-linux-i586.bin
Hadoop:hadoop-0.21.0
说明:hadoop版本一定要与本文档匹配,新版本目录格式已做修改。
步骤一:配置环境
1、安装jdk1.6.0_18
1)在usr下面新建一个文件夹Java,然后将jdk复制过来.
sudo mkdir /usr/Java
sudo cp jdk的路径 /usr/Java
2)进入到Java目录下,改变文件权限为可执行
cd /usr/Java
sudo chmod u+x jdk-6u18-linux-i586.bin
3)执行安装
(现象为Unpacking....加一连串解压信息)
sudo ./jdk-6u18-linux-i586.bin
2、安装hadoop0.21.0
1)将hadoop0.21.0.tar.gz复制到usr下面的local文件夹内
sudo cp hadoop的路径 /usr/local
2)进入到local目录下,解压hadoop-0.21.0.tar.gz
cd /usr/local
sudo tar -xzf hadoop-0.21.0.tar.gz
3)为了方便管理,将解压后的文件夹名改为hadoop
sudo mv hadoop-0.21.0 hadoop
3、创建一个名为hadoop的用户和用户组
1)创建一个名为hadoop的用户组
sudo addgroup hadoop
2)创建一个名为hadoop的用户,归到hadoop用户组下
sudo adduser --ingroup hadoop hadoop
3)用gedit打开etc下的sudoers文件
sudo gedit /etc/sudoers
4)在 root ALL=(ALL) ALL 下面添加如下一行,然后保存关闭gedit
hadoop ALL=(ALL) ALL
4、配置环境变量
1)用gedit打开etc下的profile文件
sudo gedit /etc/profile
2)在文件最后加入如下几行
export CLASSPATH=.:/usr/Java/jdk1.6.0_23/lib:/usr/Java/jdk1.6.0_18/jre/lib:$CLASSPATH
export PATH=.:/usr/Java/jdk1.6.0_23/bin:/usr/Java/jdk1.6.0_18/jre/bin:/usr/local/hadoop/bin:$PATH
3)保存后关闭gedit,并重启机器
sudo reboot
4)重启后用hadoop用户登录,验证配置是否成功
java -version(验证java配置是否成功)
5、创建ssh-key
1)确保网络通畅,然后装载ssh服务
sudo apt-get install openssh-server
2)创建ssh-key,为rsa
ssh-keygen -t rsa --P
3)将此ssh-key添加到信任列表中,并启用此ssh-key
cat /home/hadoop/.ssh/id_rsa.pub >> /home/hadoop/.ssh/authorized_keys
sudo /etc/init.d/ssh reload
4)重启系统