配置yarn-env.sh
- [kocdaniel@hadoop102 hadoop]$ vim yarn-env.sh
- export JAVA_HOME=/opt/module/jdk1.8.0_144
配置yarn-site.xml
- [kocdaniel@hadoop102 hadoop]$ vi yarn-site.xml
- # 增加如下配置
- <!-- Reducer获取数据的方式 -->
- <property>
- <name>yarn.nodemanager.aux-services</name>
- <value>mapreduce_shuffle</value>
- </property>
-
- <!-- 指定YARN的ResourceManager的地址 -->
- <property>
- <name>yarn.resourcemanager.hostname</name>
- <value>hadoop103</value>
- </property>
配置mapred-env.sh
- [kocdaniel@hadoop102 hadoop]$ vim mapred-env.sh
- export JAVA_HOME=/opt/module/jdk1.8.0_144
配置mapred-site.xml
- # 如果是第一次配置的话,需要先将mapred-site.xml.template重命名为mapred-site.xml
- [kocdaniel@hadoop102 hadoop]$ cp mapred-site.xml.template mapred-site.xml
- [kocdaniel@hadoop102 hadoop]$ vim mapred-site.xml
- # 在文件中增加如下配置
- <!-- 指定MR运行在Yarn上 -->
- <property>
- <name>mapreduce.framework.name</name>
- <value>yarn</value>
- </property>
3.将配置好的文件利用集群分发脚本同步到hadoop103和hadoop104节点
- [kocdaniel@hadoop102 hadoop]$ xsync /opt/module/hadoop-2.7.2/
单点启动
1.如果是第一次启动,需要格式化namenode,否则跳过此步
- [kocdaniel@hadoop102 hadoop-2.7.2]$ hadoop namenode -format
- 只有第一次启动需要格式化,以后不要总是格式化,否则会出现namenode和datanode的集群id不一致的情况,导致datanode启动失败
- 正确的格式化姿势:
- 在执行第一次格式化时会在hadoop安装目录下产生data文件夹,里面会生成namenode的信息
- 在启动namenode和datanode后,还会在同样的目录下产生logs的日志文件夹
- 所以在格式化之前需要先将这两个文件夹删除,然后再格式化,最后启动namenode和datanode
2.在hadoop102上启动namenode
- [kocdaniel@hadoop102 hadoop-2.7.2]$ hadoop-daemon.sh start namenode
- [kocdaniel@hadoop102 hadoop-2.7.2]$ jps
- 3461 NameNode
3.在hadoop102、hadoop103以及hadoop104上分别启动DataNode
- [kocdaniel@hadoop102 hadoop-2.7.2]$ hadoop-daemon.sh start datanode
- [kocdaniel@hadoop102 hadoop-2.7.2]$ jps
- 3461 NameNode
- 3608 Jps
- 3561 DataNode
- [kocdaniel@hadoop103 hadoop-2.7.2]$ hadoop-daemon.sh start datanode
- [kocdaniel@hadoop103 hadoop-2.7.2]$ jps
- 3190 DataNode
- 3279 Jps
- [kocdaniel@hadoop104 hadoop-2.7.2]$ hadoop-daemon.sh start datanode
- [kocdaniel@hadoop104 hadoop-2.7.2]$ jps
- 3237 Jps
- 3163 DataNode
4.访问hadoop102:50070查看结果
每次都一个一个节点启动,如果节点数增加到1000个怎么办?
配置ssh免密登录
1.配置ssh
ssh 另一个节点的ip 就可以切换到另一台机器,但是得输入密码
2.免密ssh配置
免密登录原理
- 在配置namenode的主机hadoop102上生成私钥和公钥
切换目录到/home/用户名/.ssh/
- [kocdaniel@hadoop102 .ssh]$ ssh-keygen -t rsa
- - 然后敲(三个回车),就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
- - 将公钥拷贝到要免密登录的目标机器上
-
- ```shell
- [kocdaniel@hadoop102 .ssh]$ ssh-copy-id hadoop103
- [kocdaniel@hadoop102 .ssh]$ ssh-copy-id hadoop104
- # 注意:ssh访问自己也需要输入密码,所以我们需要将公钥也拷贝给102
- [kocdaniel@hadoop102 .ssh]$ ssh-copy-id hadoop102
-
- ```
- 同样,在配置resourcemanager的主机hadoop103上执行同样的操作,然后就可以群起集群了
群起集群
(编辑:ASP站长网)
|