Hadoop2.6.0集群搭建
===============
在多台服务器上搭建Hadoop2.6.0平台,操作系统为CentOS/RHEL 64位。使用Hadoop为2.6.0的源文件进行64位版本编译。
===============
注意事项:
1.环境:笔记本电脑,装了2台centos6.6虚拟机,每台虚拟机分配:1G内存,20G硬盘。其中xml做了较多修改,参考:安装配置手册:http://blog.csdn.net/licongcong_0224/article/details/12972889
2.命令基本在hadoop用户下进行,不要贪图简便在root用户下运行,会出错
3.区分root和hadoop用户(# 和 $)
4./etc/profile是在根目录,由root修改就行;~/.bash_profile是在每个用户的根目录下(例如:/home/hadoop;/home/hongyuqin)
5.配置错误,重新配置时,建议删除~/hdfs,重新mkdir…,删除~/hadoop-2.6.0/logs,重新mkdir…;再hadoop namenode -format
6.添加了 wordcount 测试实例
===============
第一步:创建用户
CentOS增加hadoop用户,设定密码,加入/etc/sudoers配置(需要chmod u+w)
# useradd hadoop
# passwd hadoop
如果需要配置成sudo用户的话:
# chmod u+w /etc/sudoers
# vi /etc/sudoers 添加 xxx ALL=(ALL) ALL
# chmod u-w /etc/sudoers
补充:更改主机名
#vim /etc/hosts
(先把备份后内容清空)
192.168.136.131 master
192.168.136.130 slave
#vim /etc/selinux/config
#改成disabled
setenforce 0
#vim /etc/sysconfig/network
HOSTNAME=slave
第二步:安装Java
原先的linux里已经安装了Java,在安装完新版后选择新版本。
下载jdk-7u71-linux-x64.rpm
$ sudo rpm -ivh jdk-7u71-linux-x64.rpm
编辑sudo vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.7.0_71
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
把新的jdk加入到使用的备选项
$ sudo update-alternatives --install /usr/bin/java java /usr/java/jdk1.7.0_71/bin/java 300
$ sudo update-alternatives --install /usr/bin/javac javac /usr/java/jdk1.7.0_71/bin/javac 300
更改默认版本
$ sudo update-alternatives --config java
会出现一些备选项,选择刚刚加入的版本即可
查验:
#java -version
# source /etc/profile
# echo $PATH
第三步:配置Key
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys
$ chmod 700 ~/.ssh/
设置并重启sshd服务
#vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
#service sshd restart
测试一下本机ok否:
$ ssh localhost
对slave机器分别执行:
#ssh-copy-id hadoop@slave
测试登录
$ ssh slave
第四步:编译Hadoop
在64位机器上想安装64位的Hadoop只能下载源码自己编译,因为Hadoop只提供了32位的bin。编译工具集需要,如Maven、Findbugs、protobuf、CMake、zlib等等。
# yum -y update
# yum -y install svn ncurses-devel gcc*
# yum -y install lzo-devel zlib-devel autoconf automake libtool cmake openssl-devel
# yum -y install gcc make cmake zlib zlib-devel openssl glibc-headers gcc-c++
然后检查下基本的有没有齐全
#rpm -ql zlib-devel
/usr/include/zconf.h
/usr/include/zlib.h
/usr/lib64/libz.so
/usr/lib64/pkgconfig/zlib.pc
/usr/share/doc/zlib-devel-1.2.3
/usr/share/doc/zlib-devel-1.2.3/README
/usr/share/doc/zlib-devel-1.2.3/algorithm.txt
/usr/share/doc/zlib-devel-1.2.3/example.c
/usr/share/doc/zlib-devel-1.2.3/minigzip.c
/usr/share/man/man3/zlib.3.gz
#rpm -ql zlib
/lib64/libz.so.1
/lib64/libz.so.1.2.3
/usr/share/doc/zlib-