没有合适的资源?快使用搜索试试~ 我知道了~
本文来自于infoq.com,介绍生产环境中Hadoop集群现状、Ambari的关键技术,Ambari管理监控线上Hadoop集群的技术方案,线上接管过程中的问题和解决方式。首先介绍我们生产环境中Hadoop集群的现状,Hadoop集群主要承担了数据接入存储、离线计算的职责,同时提供其上数据调度等自研系统的基础服务。生产环境中Hadoop使用的版本是v2.7.3,下面介绍其主要组件。首先HDFS采用了HAwithQJM的高可用架构,即采用StandbyNamenode热备、多节点协同同步Active/StandbyNamenodes(不同物理机器)之间元数据日志的方式,降低之前单点Nameno
资源推荐
资源详情
资源评论
Ambari接管线上接管线上Hadoop游戏数据集群实践游戏数据集群实践
生产环境中Hadoop集群现状
首先介绍我们生产环境中Hadoop集群的现状,Hadoop集群主要承担了数据接入存储、离线计算的职责,同时提供其上数据调
度等自研系统的基础服务。生产环境中Hadoop使用的版本是v2.7.3,下面介绍其主要组件。
首先HDFS采用了HA with QJM的高可用架构,即采用Standby Namenode热备、多节点协同同步Active/Standby
Namenodes(不同物理机器)之间元数据日志的方式,降低之前单点Namenode因为故障而导致的集群服务不可用的时间,提高
集群的可用性。并且如下图中,Active/StandBy Namenode节点各自运行了基于Zookeeper集群自动监控Namenodes状态、自
动选举保证集群Namenode只有一个处于Active状态的ZKFailoverController。
图1 HDFS HA with QJM
接着是用于集群资源分配与作业调度的Yarn框架,我们采用了Yarn的FairScheduler公平调度策略,并且根据不同业务线集群
使用成本投入占比,划分了作业执行队列以及队列使用的资源池,各个资源池合理定义了最大同时运行作业数、Min/Max可参
与分配的资源(Vcore数、mem大小)、动态竞争其他空闲队列资源池资源权重等参数,除开业务线使用的各队列之外,还定义
了Default的共享作业队列,分配其较小的资源用于保证其他一些例如集群数据的共享查询等应用。
图2 YARN FairScheduler 资源分配图
集群ETL离线作业处理与数据查询我们主要基于Hive,Hive是SQL on Hadoop的数据仓库工具,具备良好的类似以关系型数据
库的方式存储管理接入数据、提供对外数据处理接口特性,以Hive为基础我们打造了大数据中心,安全、简洁、便捷地统一接
入数据以及对外统一提供数据处理基础服务。并且在发展过程中,为了提高数据中心服务水平,我们将Hive版本升级至v2.1,
其HiveServer2服务能够更好支持并发和身份认证以及开放API客户端(如ODBC和JDBC),且其更好支持内存计算(TEZ+LLAP)
也为后续升级提供了基础。
图3 Hive 2.1 应用架构图
除开上述主要介绍的Hadoop集群中组件应用之外,我们还有包括Flume+Kafka分布式日志采集与队列数据分发的完整数据流
架构,该架构使用Zookeeper集群做协同服务和配置管理,在这里不一一赘述。
最后是Hadoop集群原有的监控和告警逻辑,在进程监控这块我们采用Crontab周期性从主控节点ssh 至集群每个节点,轮询检
查每个主要进程的运行状况,一旦发现进程挂掉则告警且重新启动;在性能监控这块(例如Yarn任务堆积数)我们也是采用
Crontab周期性的调组件监控接口获取相关Mertrics 数值,告警异常值的方式。
至此我们已经梳理完毕生产环境中Hadoop集群现状,其上支撑的业务之广、使用人之多,就决定了我们Ambari线上接管集群
不容有失,且需要最大限度降低接管过程中对业务造成的影响。
Ambari相关技术介绍
接下来我们将简单介绍Apache Ambari相关技术,Ambari是Hortonworks贡献给Apache开源管理Hadoop集群的顶级开源项目
上文已提及,主要用于Hadoop集群的部署、监控与告警,Ambari整体架构如下图,主要有5部分组成:
剩余11页未读,继续阅读
资源评论
weixin_38563871
- 粉丝: 1
- 资源: 959
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 所有算法均用 Python 实现.zip
- redis-standalone.yml redis k8s单点部署
- Python基于Scrapy兼职招聘网站爬虫数据分析设计(源码)
- zipkin.yml zipkin k8s部署
- YY9706.102-2021医用电气设备第2-47部分
- 通过运用时间序列ARIMA模型与循环神经网络(LSTM)对中国包装机器数量进行预测(python源码)
- Ruby编程基础与进阶指南
- 基于ARIMA模型的股票预测(python源码)
- 基于阿里云对象存储的对文件进行批量修改、批量解冻、批量上传
- 山东联通-海信IP501H-GK6323V100C-1+8G-4.4.2-当贝桌面-卡刷包
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功