环境:CentOs6、hadoop-2.0.0-cdh4.0.1、jdk1.7
namenode:master.hadoop(ip:192.168.146.68)
datanode:slave1.hadoop(ip:192.168.146.69)、slave2.hadoop(ip:192.168.146.70)
配置步骤:
(1)配置NameNode和DataNode
在进行Hadoop集群配置中,需要在"/etc/hosts"文件中添加集群中所有机器的IP与主机名,这样Master与所有的Slave机器之间不仅可以通过IP进行通信,而且还可以通过主机名进行通信。所以在所有的机器上的"/etc/hosts"文件末尾中都要添加如下内容:
127.0.0.1 localhost
192.168.146.68 master.hadoop
192.168.146.69 slave1.hadoop
192.168.146.70 slave2.hadoop
(备注:当设置SSH无密码验证后,可以"scp"进行复制,然后把原来的"hosts"文件执行覆盖即可。)
修改每台机器的/etc/sysconfig/network,设定HOSTNAME 主机名
(2)在所有的机器上建立相同的用户
useradd hadoop
passwd hadoop
成功建立hadoop用户后,输入用户密码就是该用户密码.
(3)SSH免密码登录设置
原理:
首先在客户端上创建一对公私钥 (公钥文件:/.ssh/id_rsa.pub; 私钥文件:/.ssh/id_rsa)。然后把公钥放到服务器上(~/.ssh/authorized_keys), 自己保留好私钥.在使用ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配.如果匹配成功就可以登录了
操作:
vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
使用hadoop用户登录
在所有机器/home/hadoop下
mkdir .ssh
chmod 700 .ssh
cd .ssh
ssh-keygen \-t rsa
这条命是生成其无密码密钥对,询问其保存路径时直接回车采用默认路径。生成的密钥对:id_rsa和id_rsa.pub,默认存储在"/home/hadoop/.ssh"目录下。
ls -l 会看到id_rsa和id_rsa.pub
cat id_rsa.pub>>authorized_keys
将本机器的id_rsa.pub加到authorized_keys中,
并修改authorized_keys权限,
chmod 644 authorized_keys
ssh localhost
这样,ssh 可以免密码登录localhost了。
将master.hadoop机器的id_rsa.pub加到salve1.hadoop的authorized_keys中,
cp id_rsa.pub id_rsa.pub.master
scp id_rsa.pub.master hadoop@192.168.146.69:/home/hadoop/.ssh
在slave1.hadoop机器的hadoop用户下
cat id_rsa.pub.master>>authorized_keys
ssh hadoop@192.168.146.68
ssh就可以免密码登录master.hadoop了。
反之,将salve1.hadoop机器的id_rsa.pub加到master.hadoop的authorized_keys中,
cp id_rsa.pub id_rsa.pub.slave1
scp id_rsa.pub.slave1 hadoop@192.168.146.68:/home/hadoop/.ssh
在master.hadoop机器的hadoop用户下
cat id_rsa.pub.slave1>>authorized_keys
ssh hadoop@192.168.146.69
ssh 就可以免密码登录slave1.hadoop了,
其他机器之间的SSH通讯可以同样操作。
(4)在所有机器上安装JDK,设置JAVA_HOME
vi /etc/profile
export JAVA_HOME=/home/hadoop/jdk
export JRE_HOME=/home/hadoop/jdk/jre
export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
source /etc/profile使得配置生效。
(5)在所有机器上安装配置Hadoop
首先在namenode上配置,配置后在分发到datanode上
下载http://archive.cloudera.com/cdh4/cdh/4/hadoop-2.0.0-cdh4.0.1.tar.gz,然后解压到/home/hadoop/下即可
tar -zxvf hadoop-2.0.0-cdh4.0.1.tar.gz
mv hadoop-2.0.0-cdh4.0.1 /home/hadoop/hadoop
cd /home/hadoop/hadoop/etc/hadoop 修改配置文件
修改hadoop-env.sh:
export JAVA_HOME=/home/hadoop/jdk
export HADOOP_HOME=/home/hadoop/hadoop
export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
修改core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://master.hadoop:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop/tmp</value>
</property>
</configuration>
修改mapred-site.xml:
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>master.hadoop:9001</value>
</property>
</configuration>
修改hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
slaves里写入作为datanode节点的机器的IP
192.168.146.69
192.168.146.70
到此,hadoop的有关配置已经完成,namenode端通过如下命令把配置好的hadoop发送到各个datanode处:
scp -r hadoop hadoop@slave1.hadoop:/home/hadoop/
scp -r hadoop hadoop@slave2.hadoop:/home/hadoop/
(6)关闭所有机器上的防火墙
注意点:关闭所有机器上的防火墙,不然会导致datanode起不来
/etc/init.d/iptables stop
(7)在master.hadoop机器的hadoop用户下启动hadoop
bin/hdfs namenode -format
sbin/./start-all.sh
如果没有其它差错的话,hadoop可以正常启动,在namenode,datanode端用jps命令查看启动情况
namenode:
xxxx NameNode
xxxx SecondaryNameNode
xxxx DataNode
datanode:
xxxx NodeManager
xxxx DataNode
然后可以通过如下地址来查看集群运行状况:http://192.168.146.68:50070/
分享到:
相关推荐
hadoop分布式安装02.mp4
Hadoop分布式安装笔记.rar
hadoop完全分布式安装步骤 实验环境为VirtualBOx虚拟机
Hadoop分布式文件系统的模型分析,Hadoop 分布式文件系统是遵循Google 文件系统原理进行开发和实现的,受到了业界极大关注,并 已被广泛应用。 鉴于当前缺乏从系统设计理论的角度对其开展的相关研究,本文从 Hadoop ...
虚拟机上安装分布式安装hadoop,恰同学少年,风华正茂,挥斥方遒
Hadoop安装有三种模式:单机、伪分布式、完全分布式,本文档为完全分布式安装,过程很详细,设计内容包括:在win7上安装虚拟化工具VMware(用于支撑Linux系统),在VMware上安装Ubuntu系统,安装Hadoop前的准备工作...
Hadoop分布式文件系统翻译
解压hadoop2.7.1.tar.gz文件,文件位置根据情况而定,本机文件正好放在根目录下,所以没有带路径,请一定根据自己文件所在路径把相应路径加上,进行解压,/usr/local为目标路径,也是根据情况而定,因人或者要求而定
Hadoop是Apache Lucene下的一个子项目,它最初是从Nutch项目中分离出来...Hadoop分布式安装与配置手册 Hadoop权威指南原版 hadoop权威指南中文第二版 Hadoop实战-陆嘉恒 分布式基础学习 用+Hadoop+进行分布式并行编程
基于SpringMVC+Spring+HBase+Maven搭建的Hadoop分布式云盘系统。使用Hadoop HDFS作为文件存储系统、HBase作为数据存储仓库,采用SpringMVC+Spring框架实现,包括用户注册与登录、我的网盘、关注用户、我的分享、我...
工作中搭建的hadoop分布式文件系统和hive ,mysql等的搭建的具体步骤
hadoop分布式网络爬虫的实现, 采用mapreduce和java,能实现深度搜索
关于hadoop的分布式缓存的源码,用于大家的学习,改进hadoop的分布式缓存
《高可用性的HDFS——Hadoop分布式文件系统深度实践》专注于Hadoop分布式文件系统(hdfs)的主流ha解决方案,内容包括:hdfs元数据解析、hadoop元数据备份方案、hadoop backup node方案、avatarnode解决方案以及最新...
第四章(Hadoop大数据处理实战)Hadoop分布式文件系统.pdf第四章(Hadoop大数据处理实战)Hadoop分布式文件系统.pdf第四章(Hadoop大数据处理实战)Hadoop分布式文件系统.pdf第四章(Hadoop大数据处理实战)Hadoop分布式文件...
完整的Hadoop分布式文件系统架构,以及源码分析报告
Hadoop分布式文件系统使用指南.pdf
Hadoop分布式文件系统:架构和设计要点.pdf
hadoop分布式安装,详细笔记,恰同学少年,风华正茂,挥斥方遒