本文用的是hadoop-2.6.0-cdh5.14.2,jdk使用的是1.8.0_111,三台虚拟机搭建分布式。
一、准备工作
首先安装一台虚拟机,并在此上打通网络、关闭防火墙、安装jdk并安装hadoop;然后在一台机器基础上克隆三台,并各自设置网络和主机名,再配置主机映射;最后设置三台机器之间互相的无密登录。
jdk和hadoop,我都将解压文件安装在了/opt/install下,并对应的配置和应用了环境变量
#JAVA_HOME
export JAVA_HOME=/opt/install/jdk1.8.0_111
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
#HADOOP_HOME
export HADOOP_HOME=/opt/install/hadoop-2.6.0-cdh5.14.2
export PATH=$HADOOP_HOME/bin:$PATH
经克隆和配置网络后,最终设置好的三台机器分别名为hadoop2、hadoop3、hadoop4。其/etc/hosts里的映射如下
设置无密登录,需要在三台机器上都操作以下的语句。这里可以利用xshell等软件的一次性操作多台虚拟机的功能。
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
ssh-copy-id hadoop2
ssh-copy-id hadoop3
ssh-copy-id hadoop4
这里只做了简述,若对具体操作不清楚,可参考:(1)虚拟机安装linux、配置