配置hadoop集群
前置准备:
- 集群之间能够无密码SSH登录
『 Hadoop』从零安装第五弹 - 简书
http://www.jianshu.com/p/c979dbe13537
配置思路:
首先一个有七个文件要修改
hadoop-2.6.0/etc/hadoop/hadoop-env.sh
hadoop-2.6.0/etc/hadoop/yarn-env.sh
hadoop-2.6.0/etc/hadoop/core-site.xml
hadoop-2.6.0/etc/hadoop/hdfs-site.xml
hadoop-2.6.0/etc/hadoop/mapred-site.xml
hadoop-2.6.0/etc/hadoop/yarn-site.xml
hadoop-2.6.0/etc/hadoop/slaves
之后修改/etc/profile设置环境变量,
当在master上修改完成后,将hadoop-2.6.0/etc/hadoop/
连同修改后的配置文件,通过scp拷贝到其它2台机器上,之后测试hadoop配置,成功格式化则说明大功快要告成了*
以下操作在~/software/hadoop/hadoop-2.6.0中!!
-
hadoop-env.sh
$ vi etc/hadoop/hadoop-env.sh
-
yarn-env.sh
$ vi etc/hadoop/yarn-env.sh
-
core-site.xml
$ vi etc/hadoop/core-site.xml
-
hdfs-site.xml
*PS:注:dfs.replication表示数据副本数,
$ vi etc/hadoop/hdfs-site.xml
一般不大于datanode的节点数(即不大于集群机子数)。
这里为了避免出错,设置为1.
- mapred-site.xml
$ vi etc/hadoop/mapred-site.xml
*PS:如果不存在mapred-site.xml
就把mapred-site.xml.template
复制一份为mapred-site.xml
- yarn-site.xml
$ vi etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8025</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8040</value>
</property>
</configuration>
7. slaves
PS:这样只有slave1,slave2上有datanode进程
8. 修改/etc/profile设置环境变量
$ sudo vi /etc/profile
export HADOOP_HOME=/home/sakura/software/hadoop/hadoop-2.6.0
export CLASS=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH:$HADOOP_HOME/share/hadoop/common/hadoop-common-2.6.0.jar:$HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.6.0.jar:$HADOOP_HOME/share/hadoop/common/lib/commons-cli-1.2.jar
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$PATH
至此,master上hadoop集群配置完成!
分发到集群的其他机器
- 将hadoop-2.6.0/etc/hadoop/* 连同修改后的配置文件,通过scp拷贝到其它2台机器上
**PS:我拷成外面的大文件了,oh!拷了好久,而且路径还复制错误,肯定是我表弟偷偷帮我操作的
**
上图路径复制错误,需要后期手动修改
上图说明,已经修改完成!!
然后当然是接着复制另一份到别的机器上啦,当然我当时太卡了,所以只测试了一个节点的,所以有点小问题....
hadoop集群测试
- 在master上启用NameNode测试
$ hdfs namenode -format
格式化成功!!!虽然只是一个节点,之后我开通两个节点依然格式化成功了,。,
启动hadoop集群
master节点成功
关闭hadoop集群
示例 当安装失败 重新格式化 hdfs
- 删除当初安装时手动创建的tmp目录里的文件,保留tmp文件夹!
- 删除data/datanode 和data/namenode 里的文件,保留data/datanode 和 data/namenode 文件夹
- 如果布置了集群,集群里的机子也要重复【1】【2】操作。
- 重新格式化
$ hdfs namenode -format
- 启动hadoop集群
$ start-all.sh
- 在所有集群上查看进程
$ jps
- 查看hdfs的磁盘报告
$ hdfs dfsadmin -report
-
hadoop 操作测试
将Linux上的文件上传的hdfs上
统计hdfs目录里文件字数和查看hdfs磁盘大小
网友评论