本文已参与「新人创作礼」活动,一起开启掘金创作之路。
- 配置集群:
$ cat /usr/local/hadoop-2.7.7/etc/hadoop/core-site.xml
<configuration> <!-- 指定NameNode的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop101:8020</value>
</property> <!-- 指定hadoop数据的存储目录 -->
<property> <name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop-2.7.7/data</value>
</property> </configuration>
----------------------------------------------------------------------------
$ cat hdfs-site.xml <configuration>
<!--指定hdfs保存数据副本的数量,包括自己,默认为3--> <!--伪分布式模式,此值必须为1--> <property> <name>dfs.replication</name>
<value>2</value>
</property>
<!-- nn web端访问地址-->
<property>
<name>dfs.namenode.http-address</name>
<value>hadoop101:9870</value>
</property>
<!-- 2nn web端访问地址-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop102:9868</value>
</property>
</configuration>
----------------------------------------------------------------------------
$ cat yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
<!-- 指定MR走shuffle -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- 指定ResourceManager的地址-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop101</value>
</property>
<!-- 环境变量的继承 -->
<property> <name>yarn.nodemanager.env-whitelist</name> <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
</property> </configuration> ----------------------------------------------------------------------------
$ cat mapred-site.xml <configuration> <!-- 指定MapReduce程序运行在Yarn上 -->
<property> <name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
# 配置文件默认的jar包 1.core-default.xml: 【share/hadoop/hadoop-common-2.7.3.jar】
2.hdfs-default.xml: 【share/hadoop/hadoop-hdfs-2.7.3.jar】 3.mapred-default.xml: 【share/hadoop/hadoop-mapreduce-client-core-2.7.3.jar】 4.yarn-default.xml: 【share/hadoop/hadoop-yarn-common-2.7.3.jar】 unzip 解压你jar即可得到配置文件
- 将配置文件分发到其他节点(hadoop2)上
$ scp -r /usr/local/hadoop-2.7.7/etc/hadoop root@hadoop2:/usr/local/hadoop-2.7.7/etc/
- 配置workers (2.7.7 上是 slaves 文件)
cat /usr/local/hadoop-2.7.7/etc/hadoop/slaves hadoop101 hadoop102 注:改文件每行后不能有空格,也不能有空行
- 启动集群
如果集群是第一次启动,需要在hadoop101节点格式化NameNode注意:格式化NameNode,会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到已往数据。如果集群在运行过程中报错,需要重新格式化NameNode的话,一定要先停止namenode和datanode进程,并且要删除所有机器的data和logs目录,然后再进行格式化。
(1)格式化
$ hdfs namenode -format 可以看到 /usr/local/hadoop/data 下生成了数据
(2)启动 HDFS
$ sbin/start-dfs.sh
(3)在配置了ResourceManager的节点(hadoop101)启动YARN
$ sbin/start-yarn.sh 运行jps查看启动的服务
(4)Web端查看HDFS的NameNode
- 浏览器中输入:
- 查看 HDFS 上存储的数据信息
(5)Web 端查看 YARN 的 ResourceManager
- 浏览器中输入:
- 查看 YARN 上运行的 Job 信息