1、Namenode:储存文件的元数据。

2、Datanode:在本地文件系统储存文件快数据,以及块数据的效验和。

3、Secondary Namenode :每个隔一段时间对Namenode元数据备份

hadoop100 hadoop101 hadoop102
HDFS Namenode Datanode Datanode Secondary Namenode
YARN nodemanager ResourceManger
nodemanager

nodemanager

启动:

1)启动hdfs相关hdfs --daemon start namenodehdfs --daemon start datanode
2)启动yarn相关yarn --daemon start resourcemanageryarn --daemon start nodemanage

YARN架构

ResourceManager(RM)主要作用:

处理客户端的请求

启动或监控ApplicationMaster

资源的分配调度

集群配置

核心配置文件

配置:hadoop-env.sh(在/opt/module/hadoop-3.1.3/etc/hadoop目录下)

Linux系统中获取JDK的安装路径:

[soft863@ hadoop100 ~]# echo $JAVA_HOME/opt/module/jdk1.8.0_212

在hadoop-env.sh文件中修改JAVA_HOME 路径:/ 加内容 查寻

export JAVA_HOME=/opt/module/jdk1.8.0_212

1.配置core-site.xml namenode

cd $HADOOP_HOME/etc/hadoopvim core-site.xml文件内容如下:<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration><property><name>fs.defaultFS</name><value>hdfs://hadoop100:9820</value></property><!-- hadoop.data.dir是自定义的变量,下面的配置文件会用到 --><property><name>hadoop.data.dir</name><value>/opt/module/hadoop-3.1.3/data</value></property></configuration>

2.HDFS配置文件 datanode

配置hdfs-site.xml
vim hdfs-site.xml
文件内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration><!-- namenode数据存放位置 -->
<property><name>dfs.namenode.name.dir</name><value>file://${hadoop.data.dir}/name</value></property><!-- datanode数据存放位置 --><property><name>dfs.datanode.data.dir</name><value>file://${hadoop.data.dir}/data</value></property><!-- secondary namenode数据存放位置 --><property><name>dfs.namenode.checkpoint.dir</name>
<value>file://${hadoop.data.dir}/namesecondary</value></property><!-- datanode重启超时时间是30s,解决兼容性问题,跳过 --><property><name>dfs.client.datanode-restart.timeout</name><value>30</value></property><!-- 设置web端访问namenode的地址 -->
<property><name>dfs.namenode.http-address</name><value>hadoop100:9870</value>
</property><!-- 设置web端访问secondary namenode的地址 --><property><name>dfs.namenode.secondary.http-address</name><value>hadoop102:9868</value></property>
</configuration>

3.YARN配置文件

配置yarn-site.xml
vim yarn-site.xml
文件内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><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>

4.MapReduce配置文件

配置mapred-site.xml
vim mapred-site.xml
文件内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property>
</configuration>

ssh免密登录

1、在每个节点生成公钥和私钥,并拷贝

Hadoop1000:

生成公钥和私钥

[root@hadoop100] ssh-keygen -t rsa然后敲(三个回车)将公钥拷贝到要免密登录的目标机器上[root@hadoop100] ssh-copy-id hadoop100[root@hadoop100] ssh-copy-id hadoop101[root@hadoop100] ssh-copy-id hadoop102

集群分发

scp -r(递归)(全拷贝)

rsync -av (差异化拷贝)

把/etc/hadoop/目录拷贝到hadoop101:[root@hadoop100 opt]# cd /opt[root@hadoop100 opt]#  scp -r hadoop/ root@hadoop101:/opt/module/hadoop-3.1.3/etc/把/etc/hadoop/目录拷贝到hadoop102:[root@hadoop100 opt]# scp -r hadoop/ root@hadoop102:/opt/module/hadoop-3.1.3/etc/把 /etc/profile拷贝到hadoop100 hadoop101[root@hadoop102 opt]# rsync -av /etc/profile hadoop101:/etc[root@hadoop102 opt]# rsync -av /etc/profile hadoop100:/etc在hadoop100和hadoop101上分别要进行source /etc/profile[root@hadoop100 opt]# source /etc/profile[root@hadoop101 opt]# source /etc/profile

分布式集群格式化

分布式集群第一次启动之前要格式化

格式化之前,要把三个服务器上的hadoop安装目录下的 data目录和logs目录都删掉

[root@hadoop101 opt]# cd /opt/module/hadoop-3.1.3[root@hadoop101 opt]# rm -rf data[root@hadoop101 opt]# rm -rf logs

在指定namenode运行的服务器上执行格式化:

(namenode指定在hadoop100上运行的)

[root@hadoop1000 hadoop-3.1.3]# hdfs namenode –format

用脚本启动集群

1、修改hadoop配置文件

hadoop100上的start-dfs.sh 和stop-dfs.sh 文件最上边添加几行数据

[root@hadoop100] cd /opt/module/hadoop-3.1.3/sbin

[root@hadoop100] vi start-dfs.sh

HDFS_DATANODE_USER=rootHADOOP_SECURE_DN_USER=hdfsHDFS_NAMENODE_USER=rootHDFS_SECONDARYNAMENODE_USER=root

在 start-yarn.sh 和 stop-yarn.sh文件最上方添加几行数据

[root@hadoop100] vi start-yarn.sh

[root@hadoop100] vi stop-yarn.sh

YARN_RESOURCEMANAGER_USER=rootHADOOP_SECURE_DN_USER=yarnYARN_NODEMANAGER_USER=root

hadoop100上修改workers:

[root@hadoop100] cd /opt/module/hadoop-3.1.3/etc/hadoop

[root@hadoop100] vi workers

hadoop100

hadoop101

hadoop102

把上面的修改同步到hadoop101、hadoop102上:

[root@hadoop100] rsync -av /opt/module/hadoop-3.1.3/sbin/ hadoop101:/opt/module/hadoop-3.1.3/sbin/[root@hadoop100] rsync -av /opt/module/hadoop-3.1.3/sbin/ hadoop102:/opt/module/hadoop-3.1.3/sbin/[root@hadoop100] rsync -av /opt/module/hadoop-3.1.3/etc/hadoop/ hadoop101:/opt/module/hadoop-3.1.3/etc/hadoop/[root@hadoop100] rsync -av /opt/module/hadoop-3.1.3/etc/hadoop/ hadoop102:/opt/module/hadoop-3.1.3/etc/hadoop/

启动停止集群

启动集群:

如果集群上已经启动hadoop相关程序,可以先执行停止。

在hadoop100上执行以下脚本,用来启动hdfs:

[root@hadoop100] start-dfs.sh

在hadoop101上执行以下脚本,用来启动yarn:

[root@hadoop101] start-yarn.sh

停止集群:

在hadoop100上执行以下脚本,用来停止hdfs:

[root@hadoop100] stop-dfs.sh

在hadoop101上执行以下脚本,用来停止yarn:

[root@hadoop101] stop-yarn.sh

Hadoop学习笔记(5)–完全分布式Hadoop 完全分布式相关推荐

  1. Hadoop学习笔记(1) ——菜鸟入门

     Hadoop学习笔记(1) --菜鸟入门 Hadoop是什么?先问一下百度吧: [百度百科]一个分布式系统基础架构,由Apache基金会所开发.用户能够在不了解分布式底层细节的情况下.开发分布式 ...

  2. Hadoop学习笔记(1)

    原文:http://www.cnblogs.com/zjfstudio/p/3859704.html Hadoop学习笔记(1) --菜鸟入门 Hadoop是什么?先问一下百度吧: [百度百科]一个分 ...

  3. Hadoop学习笔记—4.初识MapReduce

    一.神马是高大上的MapReduce MapReduce是Google的一项重要技术,它首先是一个 编程模型 ,用以进行大数据量的计算.对于大 数据量的计算,通常采用的处理手法就是并行计算.但对许多开 ...

  4. hadoop学习笔记-目录

    以下是hadoop学习笔记的顺序: hadoop学习笔记(一):概念和组成 hadoop学习笔记(二):centos7三节点安装hadoop2.7.0 hadoop学习笔记(三):hdfs体系结构和读 ...

  5. Hadoop学习笔记—13.分布式集群中节点的动态添加与下架

    Hadoop学习笔记-13.分布式集群中节点的动态添加与下架 开篇:在本笔记系列的第一篇中,我们介绍了如何搭建伪分布与分布模式的Hadoop集群.现在,我们来了解一下在一个Hadoop分布式集群中,如 ...

  6. Hadoop学习笔记一 简要介绍

    Hadoop学习笔记一 简要介绍 这里先大致介绍一下Hadoop.     本文大部分内容都是从官网Hadoop上来的.其中有一篇介绍HDFS的pdf文档,里面对Hadoop介绍的比较全面了.我的这一 ...

  7. Hadoop学习笔记—15.HBase框架学习(基础知识篇)

    Hadoop学习笔记-15.HBase框架学习(基础知识篇) HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase ...

  8. Hadoop学习笔记—16.Pig框架学习

    Hadoop学习笔记-16.Pig框架学习 一.关于Pig:别以为猪不能干活 1.1 Pig的简介 Pig是一个基于Hadoop的大规模数据分析平台,它提供的SQL-LIKE语言叫Pig Latin, ...

  9. Hadoop学习笔记之HDFS

    Hadoop学习笔记之HDFS HDFS (Hadoop Distributed File System) 优点 缺点 HDFS操作 命令操作HDFS Web端操作HDFS Java操作HDFS HD ...

  10. 大数据Hadoop教程-学习笔记02【Apache Hadoop、HDFS】

    视频教程:哔哩哔哩网站:黑马大数据Hadoop入门视频教程 教程资源:https://pan.baidu.com/s/1WYgyI3KgbzKzFD639lA-_g 提取码: 6666 [P001-P ...

最新文章

  1. PostgreSQL 安装配置 (亲测可用)
  2. pythondict(zip())_python基础:zip和dict详解
  3. 【Python】你的表格太丑了!能美化下吗?
  4. 2018年公有云iaas_2018年如何学会正确做云
  5. 软件“美不美”,UI测试一下就知道
  6. 程序员被公司开除,隔阵子领导命令回前公司讲解代码,网友直呼:关我嘛事?
  7. asp.NET导出Gridview到excel 带模板列显示
  8. 野村综合研究所李智慧:日本金融科技是制度先行而非技术先行
  9. 如何判断Activity是否在前台显示
  10. 怎样下载网页上的视屏到本地
  11. R语言—基本统计分析
  12. 2020区块链行业回顾与前瞻
  13. ftp打开方式更改为资源管理器方法
  14. 从零开始Android游戏编程(第二版) 前言
  15. java ssh 服务器文件传输_java使用SFTP上传文件到资源服务器
  16. 使用Vmware workstation出现权限不足
  17. [翻译学习]MonoSLAM: Real-Time Single Camera SLAM
  18. docker导致宿主机重启和Cgroup 驱动程序有关
  19. 9.0怎样学习英语?
  20. whistle使用指南

热门文章

  1. android fragmentpageradapter切换不更新,android – FragmentPagerAdapter不会在方向更改时重新创建片段吗?...
  2. 荣耀锐龙版笔记本怎么样?开箱评测了解一下
  3. R语言 lars包 lars()函数中文帮助文档(中英文对照)
  4. 4.13nbsp;经济分析
  5. android webview白屏,处理方案:webview 闪白屏问题
  6. 项目管理工具—思维导图
  7. java制作海报一:java使用Graphics2D 在图片上写字,文字换行算法详解
  8. 有些微信朋友,每天喜欢发早安、图片给别人,这些人是什么心理?
  9. 深度学习的研究方向和发展趋势
  10. 网络基础知识——交换机路由器