hadoop-2.7.2集群的搭建过程
扫描二维码
随时随地手机看文章
hadoop-2.7.2集群的搭建过程
安装环境:
3节点集群,1个Master,2个Slave。
3个节点的局域网ip分别是10.30.30.128、10.30.30.129、10.30.30.130。
0. 准备工作:
在Master节点上安装好hadoop-2.7.2伪分布模式。
接下来主要对Slave节点进行安装配置。
1. Slave节点基本环境的安装和配置
首先需要在Slave节点上进行一些基本环境的安装和配置,步骤均与伪分布模式相同。
1) 创建hadoop用户
2) 安装ssh
3) 安装Java环境
2. 配置网络连接
将主节点的hostname改为Master,两个从节点分别改为Slave1和Slave2。
sudo nano /etc/hostname
将所有节点的hosts文件都改为如下内容:
127.0.0.1 localhost
10.30.30.128 Master
10.30.30.129 Slave1
10.30.30.130 Slave2
3. 配置节点间ssh无密码登录
删除Slave节点.ssh目录中的所有文件(若存在文件):
rm ~/.ssh/*
进入Master节点的~/.ssh文件夹,将id_rsa 和id_rsa.pub两个文件复制到Slave节点对应的目录下:
scp ~/.ssh/id* hadoop@Slave1:/home/hadoop/.ssh/
然后在Slave节点上执行命令:
cat ./id_rsa.pub >> ./authorized_keys
将公钥加入授权,即可实现节点间无密码登录。
4. Slave节点hadoop的安装
将Master节点中hadoop的安装目录打包,发送给各Slave节点,注意必须先打包再发送,否则该目录下的link文件将失效。
cd /usr/lib
sudo tar –cvf hadoop.tar hadoop/
scp hadoop.tar hadoop@Slave1:/home/hadoop/
登录Slave节点,将文件解压到对应的路径:
sudo tar xvf hadoop.tar /usr/local
设置文件夹权限:
sudo chown -R hadoop:hadoop /usr/local/hadoop
在Slave节点中配置hadoop环境变量,请参照Master节点。
5. 修改配置文件
一共需要修改5个配置文件,分别是hadoop/etc/hadoop目录下的core-site.xml, hdfs-site.xml, mapred-site.xml, yarn-site.xml和slaves文件,注意,所有节点均需修改。
core-site.xml:
hadoop.tmp.dir file:/usr/local/hadoop/tmp Abasefor other temporary directories. fs.defaultFS hdfs://Master:9000 hdfs-site.xml:
dfs.replication 1 dfs.namenode.name.dir file:/tmp/hadoop/dfs/name dfs.datanode.data.dir file:/tmp/hadoop/dfs/data dfs.namenode.secondary.http-address Master:50090 mapred-site.xml:
mapreduce.framework.name yarn mapreduce.jobhistory.address Master:10020 mapreduce.jobhistory.webapp.address Master:19888
yarn-site.xml:
yarn.nodemanager.aux-services mapreduce_shuffle yarn.resourcemanager.hostname cit128 slaves:
Slave1 Slave2
6. 启动Hadoop集群
登录Master节点,启动hadoop守护进程和yarn进程:
start-dfs.sh
start-yarn.sh
或者使用start-all.sh命令代替二者也行。
启动历史服务进程:
mr-jobhistory-daemon.sh start historyserver
启动后,Master节点上运行的进程有:
NameNode
SecondaryNameNode
JobHistoryServer
ResourceManager
Slave节点上运行的进程有:
DataNode
NodeManager
7. 运行hadoop分布式实例
创建用户目录:
hdfs dfs -mkdir -p /user/hadoop
创建输入目录和输入文件:
hdfs dfs -mkdir input
hdfs dfs -put /usr/local/hadoop/etc/hadoop/*.xml input
运行mapreduce作业:
hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar wordcount input output
等待mapreduce作业运行结束,查看运行结果:
hdfs dfs -cat output/*