Hadoop集群搭建
1.修改/etc/hosts文件
在每台linux机器上,sudo vim /etc/hosts 编写hosts文件。将主机名和ip地址的映射填写进去。编辑完后,结果如下:
2.配置ssh,实现无密码登录
四台虚拟机上,使用: ssh-keygen -t rsa 一路回车就行了
master上将公钥放到authorized_keys里。命令::
sudo cat id_rsa.pub >> authorized_keys
将master上的authorized_keys放到其他linux的~/.ssh目录下。
sudo scp authorized_keys cjpt@132.228.28.183:~/.ssh
修改authorized_keys权限,命令:chmod 644 authorized_keys
测试是否成功
ssh cjpt@132.228.28.183
输入用户名密码,然后退出,再次ssh hostbb不用密码,直接进入系统。这就表示成功了
3.上传jdk,并配置环境变量
下载java,解压缩放到/usr/lib/jvm路径下
在.bash_profile文件添加环境变量,vim ~/.bash_profile:
export JAVA_HOME=/usr/lib/jvm/jdk1..0_60
export JRE_HOME=/usr/lib/jvm/jdk1..0_60/jre
source ~/.bash_profile,使配置生效
4.上传hadoop,并配置hadoop
4.1. 下载hadoop包,解压缩到本地路径
4.2. 修改环境变量,将hadoop加进去
vim ~/.bashrc
export HADOOP_PREFIX=/home/cjpt/hadoop-2.2.0.2.0.6.-
export HADOOP_HOME=/home/cjpt/hadoop-2.2.0.2.0.6.-
export PATH=$HADOOP_HOME/bin:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
4.3. 修改hadoop/etc/hadoop/下面的配置文件
- hadoop-env.sh
注意:JAVA_HOME必须是绝对路径,不然会报错
- core-site.xml
- hdfs-site.xml,
- mapred-site.xml,
- master,
- slave,
上面的hadoop-env.sh,core-site.xml,mapred-site.xml,hdfs-site.xml,master,slave几个文件,在四台linux中都是一样的。
配置完一台电脑后,可以将hadoop包,直接拷贝到其他电脑上。
4.4. 让hadoop配置生效
source hadoop-env.sh
4.5. 格式化namenode,只格式一次
hadoop namenode –format
4.6. 启动hadoop
切到hadoop/sbin目录下,执行 start-all.sh启动所有程序
./start-all.sh
4.7. 查看进程,是否启动
jps
- master主机:
- slave机器: