一 Hadoop的安装
1. 软件清单
- Linux系统使用CentOS6.4-x64,Ubuntu较之CentOS个人感觉内存消耗更大,操作有时会卡顿。故改为使用CentOS。
- jdk-7u79-linux-x64.gz
- hadoop-1.2.1-bin.tar.gz
- apache-hive-1.2.1-bin.tar.gz
- MySQL-client-5.7.4_m14-1.el6.x86_64.rpm
- MySQL-server-5.7.4_m14-1.el6.x86_64.rpm
- scala-2.11.7.tgz
- spark-1.5.2-bin-hadoop1-scala2.11.tgz
- sqoop-1.4.6.bin__hadoop-1.0.0.tar.gz
2. 操作系统安装
略过
集群中各台机器安装一样的系统。root用户登录系统,避免繁琐的权限问题。
修改主机名:
vim /etc/sysconfig/network
HOSTNAME=master
其他机器分别改为slave1,slave2…
修改host:
vim /etc/hosts
分别添加集群中各节点的ip地址以及主机名。
重启所有机器。
3. SSH安装
查看SSH是否安装,启动ssh服务并设为开机自启。
具体操作见 :
http://jingyan.baidu.com/article/3ea51489f9efbf52e61bba05.html
cd ~/.ssh # 如果没有该目录,先执行一次ssh localhost
ssh-keygen -t rsa # 一直按回车就可以
所有的集群机器全部按上述设置。
scp id_rsa.pub root@master:/.ssh/id_rsa.pub.slave1 #slave1上执行
scp id_rsa.pub root@master:/.ssh/id_rsa.pub.slave2 #slave2上执行
cp id_rsa.pub authorized_keys #以下语句均在master上执行
cat id_rsa.pub.slave1>>authorized_keys
cat id_rsa.pub.slave2>>authorized_keys
scp authorized_keys root@slave1:/.ssh/authorized_keys
scp authorized_keys root@slave2:/.ssh/authorized_keys
至此,集群各主机之间ssh免密码登录以及完成。测试是否成功。
ssh master
ssh slave1
ssh slave2
如不需密码即可登录任意其他主机,则代表设置成功。
4. 关闭Linux防火墙
`service iptables stop` (关闭防火墙,但重启会再次启动)
`chkconfig iptables off` (开机不启动)
集群各机器均需关闭
余下所有的操作步骤只需在master上进行,然后复制文件到其他机器即可。
5. 安装JDK
卸载系统自带的OpenJDK
`rpm -qa | grep java` #查看java有关的软件,会显示相关软件名称。
`rpm -e --nodeps +软件名` #卸载全部的软件。
jdk的安装目录为/usr/lib/java
mkdir /usr/lib/java #若提示已有此文件夹则略过
cd /usr/lib/java
wget http://114.213.234.104/x64_Linux/jdk-7u79-linux-x64.gz #下载JDK
tar -zxvf jdk-7u79-linux-x64.gz #解压jdk
修改环境变量
vim /etc/profile
在文件最后加上
export JAVA_HOME=/usr/lib/java/jdk1.7.0_79
export PATH=$PATH:$JAVA_HOME/bin
使环境变量生效
source /etc/profile
测试jdk是否安装成功
java -version
正确执行则代表jdk安装完成。复制文件到其他机器
scp /usr/lib/java/* root@slave1:/usr/lib/java/
scp /etc/profile root@slave1:/etc/profile
scp /usr/lib/java/*