【Hadoop】- YARN架构[7]

embedded/2024/11/13 9:17:35/

前言

Yarn架构是一个用于管理和调度Hadoop集群资源的系统。它是Hadoop生态系统的一部分,主要用于解决Hadoop中的资源管理问题。

通过使用Yarn架构,Hadoop集群中的不同应用程序可以共享集群资源,并根据需要动态分配和回收资源。这种灵活的资源管理能力可以提高集群的利用率和性能。

一、核心架构

1、YARN架构

  • YARN,主从架构,有2个角色
    • 主(Master)角色:ResourceManager
    • 从(Slave)角色:NodeManager

ResourceManager:整个集群的资源调度者,负责协调调度各个程序所需的资源

NodeManager:单个服务器的资源调度者,负责调度单个服务器上的资源提供给应用程序使用

那是如何实现服务器上精准分配如上的硬件资源呢?

开辟的空间,称之为:容器

2、容器(Container)

NodeManager预先占用这一部分资源,然后将这一部分资源提供给程序使用

  • NodeManager在服务器上构建一个容器(提前占用资源,类似集装箱的概念)
  • 然后将容器的资源提供给程序使用
  • 程序运行在容器(集装箱)内,无法突破容器的资源限制

二、辅助架构

  • 代理服务器(ProxyServer):Web Application Proxy Web 应用程序代理
  • 历史服务器(JobHistoryServer):应用程序历史信息记录服务

1、Web应用代理(Web Application Proxy)

代理服务器,即Web应用代理是YARN的一部分。默认情况下,它将作为资源管理器(RM)的一部分运行,但是可以配置为在独立模式下运行。使用代理的原因是为了减少通过YARN进行基于网络的攻击的可能性。

这是因为YARN在运行时提供一个WEB UI站点(同HDFS的WEB UI站点一样)可供用户在浏览器内查看YARN的运行信息。

对外提供WEB站点会有安全性问题,而代理服务器的功能就是最大限度保障对WEB UI 的访问是安全的。比如:

  • 警告用户正在访问一个不受信任的站点
  • 剥夺用户访问的Cookie等

开启代理服务器,可以提高YARN在开放网络中的安全性(但不是绝对安全,只能是辅助提高一些)

2、JobHistoryServer历史服务器

历史服务器,记录历史运行的程序的信息以及生产的日志并提供WEB UI 站点供用户使用浏览器查看

每台服务器里的每个容器都有运行日志,将运行日志统一收集到HDFS,由历史服务器托管为WEB UI供用户在浏览器统一查看

JobHistoryServer历史服务器功能:

  • 提供WEB UI 站点,供用户在浏览器上查看程序日志
  • 可以保留历史数据,随时查看历史运行程序信息

web应用代理与历史服务器都需要配置,详细的配置和启动可以阅读部署YARN集群


http://www.ppmy.cn/embedded/7915.html

相关文章

鸿蒙原生应用元服务-访问控制(权限)开发场景与权限声明

一、场景介绍 应用的APL(Ability Privilege Level)等级分为normal、system_basic和system_core三个等级,默认情况下,应用的APL等级都为normal等级。权限类型分为system_grant和user_grant两种类型。 二、配置文件权限声明 应用需要…

什么是0-day漏洞,怎么防护0-day漏洞攻击

随着信息技术的快速发展,网络安全问题日益凸显,其中0day漏洞攻击作为一种高级威胁手段,给企业和个人用户带来了极大的风险。下面德迅云安全就对0day漏洞攻击进行简单讲解下,并分享相应的一些安全措施,以期提高网络安全…

Quarto Dashboards 教程 1:Overview

「写在前面」 学习一个软件最好的方法就是啃它的官方文档。本着自己学习、分享他人的态度,分享官方文档的中文教程。软件可能随时更新,建议配合官方文档一起阅读。推荐先按顺序阅读往期内容: 1.quarto 教程 1:Hello, Quarto 2.qu…

使用docker搭建GitLab个人开发项目私服

一、安装docker 1.更新系统 dnf update # 最后出现这个标识就说明更新系统成功 Complete!2.添加docker源 dnf config-manager --add-repohttps://download.docker.com/linux/centos/docker-ce.repo # 最后出现这个标识就说明添加成功 Adding repo from: https://download.…

常用node.js命令有哪些呢?

前言 Node.js 是一种在服务器端运行 JavaScript 的开放源代码、跨平台 JavaScript 运行环境。 1、查看当前安装的 Node.js 版本。 node -v 或 node --version 2、查看当前安装的 npm 版本。 npm -v 或 npm --version 3、初始化一个新的 Node.js 项目,会生成一个 pac…

web server apache tomcat11-12-SSL/TLS Configuration

前言 整理这个官方翻译的系列,原因是网上大部分的 tomcat 版本比较旧,此版本为 v11 最新的版本。 开源项目 从零手写实现 tomcat minicat 别称【嗅虎】心有猛虎,轻嗅蔷薇。 系列文章 web server apache tomcat11-01-官方文档入门介绍 web…

Yonbuilder参考

发布移动插件 https://developer.yonyou.com/cloud/moduleStore/publishPlugin Android自定义插件打包 社区问答 https://community.yonyou.com/forum.php?modviewthread&tid232830&searchLogId605932 MarkDown指令使用 https://blog.csdn.net/qq_25821067/article/de…

高速公路信息化大会 | 云轴科技ZStack分享云原生超融合在高速公路行业的应用

近日,作为第二十六届高速公路信息化大会分论坛之一,由中国公路学会邀请、英特尔支持和协办《第四届英特尔智慧化方案助力高速新基建升级论坛》在合肥顺利召开。来自智慧交通建设领域的创新企业和技术专家共聚一堂,围绕改扩建高速公路提升和数…