Hadoop(五)生产集群搭建(二)

完全分布式运行模式

一、SSH无密登录配置

1、基本语法
ssh 另一台电脑的IP地址

[user@hadoop102 ~]$ ssh hadoop103
  • 退回hadoop102
[user@hadoop103 ~]$ exit

2、配置
(1)生成公钥和私钥

[user@hadoop102 .ssh]$ pwd
/home/atguigu/.ssh
[user@hadoop102 .ssh]$ ssh-keygen -t rsa

然后敲三次回车,就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
(2)将公钥拷贝到要免密登录的目标服务器上

[user@hadoop102 .ssh]$ ssh-copy-id hadoop102
[user@hadoop102 .ssh]$ ssh-copy-id hadoop103
[user@hadoop102 .ssh]$ ssh-copy-id hadoop104

注意:以上配置实现了在hadoop102上能无密登录hadoop102、hadoop103、hadoop104,但是在除了hadoop102外的服务器上不能实现无密登录,因此也需要在其他服务器上进行配置
3、.ssh 文件夹下(~/.ssh)的文件功能解释

文件名 功能
known_hosts 记录 ssh 访问过计算机的公钥(public key)
id_rsa 生成的私钥
id_rsa.pub 生成的公钥
authorized_keys 存放授权过的无密登录服务器公钥

二、集群配置

  • 在前面的准备工作中,hadoop102、hadoop103、hadoop104中的hadoop没有关系,先需要在三台服务器之间建立好相关的规划
    1、集群部署规划
hadoop102 hadoop103 hadoop104
HDFS NameNode DataNode DataNode SecondaryNameNode DataNode
YARN NodeManager ResourceManager NodeManager NodeManage
  • NameNode和SecondaryNameNode不要安装在同一台服务器,因为这两个都比较耗内存
  • ResourceManager也很消耗内存,他是YARN的资源管理者,也比较耗内存,不要和NameNode、SecondaryNameNode配置在同一台服务器上

2、配置文件说明

  • Hadoop配置文件分两类:默认配置文件和自定义配置文件,只有用户想修改某一默认配置值时,才需要修改自定义配置文件,更改相应属性值

(1)默认配置文件

要获取的默认文件 文件存放在Hadoop的jar包中的位置
[core-default.xml] hadoop-common-3.1.3.jar/core-default.xml
[hdfs-default.xml] hadoop-hdfs-3.1.3.jar/hdfs-default.xml
[yarn-default.xml] hadoop-yarn-common-3.1.3.jar/yarn-default.xml
[mapred-default.xml] hadoop-mapreduce-client-core-3.1.3.jar/mapred-default.xml

(2)自定义配置文件

  • core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml 四个配置文件存放在$HADOOP_HOME/etc/hadoop这个路径上,用户可以根据项目需求重新进行修改配置

3、配置集群
(1)核心配置文件

  • 配置core-site.xml
[user@hadoop102 ~]$ cd $HADOOP_HOME/etc/hadoop
[user@hadoop102 hadoop]$ vim core-site.xml

文件内容:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
 <!-- 指定 NameNode 的地址 -->
 <property>
 <name>fs.defaultFS</name>
 <value>hdfs://hadoop102:8020</value>
 </property>
 <!-- 指定 hadoop 数据的存储目录 -->
 <property>
 <name>hadoop.tmp.dir</name>
 <value>/opt/module/hadoop-3.1.3/data</value>
 </property>
 <!-- 配置 HDFS 网页登录使用的静态用户为 atguigu -->
 <property>
 <name>hadoop.http.staticuser.user</name>
 <value>user</value>
 </property>
</configuration>

(2)HDFS配置文件

  • 配置hdfs-site.xml
[user@hadoop102 hadoop]$ vim hdfs-site.xml

文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!-- nn web 端访问地址-->
<property>
 <name>dfs.namenode.http-address</name>
 <value>hadoop102:9870</value>
 </property>
<!-- 2nn web 端访问地址-->
 <property>
 <name>dfs.namenode.secondary.http-address</name>
 <value>hadoop104:9868</value>
 </property>
</configuration>

(3)YARN配置文件

  • 配置yarn-site.xml
[user@hadoop102 hadoop]$ vim yarn-site.xml

文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
 <!-- 指定 MR 走 shuffle -->
 <property>
 <name>yarn.nodemanager.aux-services</name>
 <value>mapreduce_shuffle</value>
 </property>
 <!-- 指定 ResourceManager 的地址-->
 <property>
 <name>yarn.resourcemanager.hostname</name>
 <value>hadoop103</value>
 </property>
 <!-- 环境变量的继承 -->
 <property>
 <name>yarn.nodemanager.env-whitelist</name>
 
<value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CO
NF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAP
RED_HOME</value>
 </property>
</configuration>

(4)MapReduce配置文件

  • 配置mapred-site.xml
[user@hadoop102 hadoop]$ vim mapred-site.xml

文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!-- 指定 MapReduce 程序运行在 Yarn 上 -->
 <property>
 <name>mapreduce.framework.name</name>
 <value>yarn</value>
 </property>
</configuration>

4、在集群上分发配置好的Hadoop配置文件

[user@hadoop102 hadoop]$ xsync /opt/module/hadoop3.1.3/etc/hadoop/
posted @   一年都在冬眠  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示