🍋🍋大数据学习🍋🍋
🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。
💖如果觉得博主的文章还不错的话,请点赞👍+收藏⭐️+留言📝支持一下博主哦🤞
一、CDH简介
CDH(Cloudera Distribution for Hadoop) 是 Cloudera 公司基于 Apache Hadoop 生态系统构建的一个企业级大数据平台。它集成了 Hadoop 的核心组件(如 HDFS、YARN、MapReduce)以及其他常用的大数据工具(如 Hive、Spark、HBase 等),并提供了统一的管理和监控工具(如 Cloudera Manager)。
CDH是Cloudera的100%开源平台发行版,包括Apache Hadoop,专为满足企业需求而构建。CDH提供开箱即用的企业使用所需的一切。通过将Hadoop与十几个其他关键的开源项目集成,Cloudera创建了一个功能先进的系统,可帮助您执行端到端的大数据工作流程。
简单来说:CDH 是一个拥有集群自动化安装、中心化管理、集群监控、报警功能的一个工具(软件),使得集群的安装可以从几天的时间缩短为几个小时,运维人数也会从数十人降低到几个人,极大的提高了集群管理的效率。
Cloudera Manager的功能:
1)管理:对集群进行管理,例如添加、删除节点等操作
2)监控:监控集群的健康情况,对设置的各种指标和系统的具体运行情况进行全面的监控
3)诊断:对集群出现的各种问题进行诊断,并且给出建议和解决方案
4)集成:多组件可以进行版本兼容间的整合
Cloudera Manager Server由以下几个部分组成:
Agent:安装在每台主机上。该代理负责启动和停止的过程,拆包配置,触发装置和监控主机。
Management Service:由一组执行各种监控,警报和报告功能角色的服务。
Database:存储配置和监视信息。通常情况下,多个逻辑数据库在一个或多个数据库服务器上运行。
Cloudera Repository:软件由Cloudera 管理分布存储库。
Clients:是用于与服务器进行交互的接口。
Admin Console :基于Web的用户界面与管理员管理集群和Cloudera管理。
API :与开发人员创建自定义的Cloudera Manager应用程序的API。
二、CDH架构
-
存储层
核心组件:HDFS(Hadoop Distributed File System)。负责存储大规模的数据文件。HDFS通过将数据文件分割成多个数据块,并将这些数据块分布存储在集群中的多个节点上,实现了高可用性和高性能的文件存储。 -
计算层
核心组件:YARN(Yet Another Resource Negotiator)、MapReduce、Spark等。负责处理和分析存储在HDFS中的数据。YARN作为资源管理器,负责动态分配和管理集群中的计算资源,如CPU、内存等。MapReduce和Spark等计算框架则利用YARN提供的资源,执行各种计算任务,如数据清洗、转换、分析等。 -
管理层
核心组件:Cloudera Manager(CM)负责管理和监控Hadoop集群。CM提供了一个直观的用户界面,使得用户可以方便地安装、配置、监控和管理Hadoop集群中的各个组件。此外,CM还提供了自动化运维功能,如自动故障恢复、资源优化等,降低了运维成本。 -
安全层
核心组件:Kerberos认证、数据加密等。负责保障数据的安全性和隐私性。CDH集成了Kerberos认证机制,确保只有经过授权的用户才能访问集群资源。同时,CDH还支持数据加密技术,对传输和存储过程中的数据进行加密,防止数据被窃取或篡改。
2. CDH 的架构图
以下是 CDH 的典型架构图:
+---------------------------------------------------+
| Cloudera Manager |
| - 集群部署、监控、管理 |
+---------------------------------------------------+
| Security (Sentry/Knox) |
| - 数据访问控制、API 安全 |
+---------------------------------------------------+
| Data Integration & Transport |
| - Sqoop, Flume, Kafka |
+---------------------------------------------------+
| Data Storage & Access |
| - HBase, Kudu, Solr |
+---------------------------------------------------+
| Data Processing |
| - Hive, Spark, Impala, Pig |
+---------------------------------------------------+
| Resource Management (YARN) |
| - ResourceManager, NodeManager |
+---------------------------------------------------+
| Distributed Storage (HDFS) |
| - NameNode, DataNode |
+---------------------------------------------------+
| Hardware Infrastructure |
| - 物理机或虚拟机 |
+---------------------------------------------------+
三、 CDH 的工作流程
一、安装与配置
-
下载与安装:
-
配置集群:
- 使用Cloudera Manager(CM)进行集群配置。CM是一个图形化界面工具,用于安装、配置、监控和管理Hadoop集群。
- 在CM中配置集群的硬件资源、网络设置、存储配置等。
- 添加和配置集群中的各个节点,确保它们能够正确地协同工作。
二、数据存储与管理
-
数据存储:
- 使用HDFS作为底层存储系统,将大规模的数据文件分割成多个数据块,并分布存储在集群中的多个节点上。
- HDFS提供了高可靠性和高性能的文件存储服务,确保数据的安全性和可用性。
-
数据管理:
- 使用YARN作为资源管理器,负责动态分配和管理集群中的计算资源(如CPU、内存等)。
- YARN支持多种计算框架(如MapReduce、Spark等),使得用户可以根据实际需求选择合适的计算框架来处理数据。
三、数据处理与分析
-
数据加载与预处理:
- 使用Hive、Sqoop等工具将外部数据源(如关系型数据库、NoSQL数据库等)中的数据加载到HDFS中。
- 使用HiveQL或Spark SQL对数据进行预处理操作,如数据清洗、转换、格式化等。
-
数据分析与挖掘:
- 使用Hive、Impala等工具对存储在HDFS中的数据进行查询和分析。Hive提供了类似于SQL的查询语言,使得用户可以方便地进行数据分析和报表生成。
- 使用Spark、Mahout等工具对大数据集进行挖掘和机器学习操作,发现数据中的隐藏模式和趋势。
四、任务调度与执行
-
任务调度:
- 使用Oozie、DolphinScheduler等任务调度工具来定义和管理复杂的工作流。这些工具支持任务之间的依赖关系管理和触发条件设置,使得用户可以轻松地构建和执行复杂的数据处理任务。
-
任务执行:
- 将定义好的工作流提交给YARN进行调度和执行。YARN会根据集群的资源情况和任务的需求,动态分配计算资源给各个任务。
- 任务执行过程中,YARN会监控任务的执行状态和资源使用情况,并在必要时进行资源调整和任务重试等操作。
五、监控与管理
-
集群监控:
- 使用Cloudera Manager对集群进行实时监控和管理。CM提供了丰富的监控指标和报警功能,使得用户可以及时发现和处理集群中的异常情况和性能瓶颈。
-
资源优化:
- 根据监控数据和分析结果,对集群的资源进行优化和调整。例如,增加节点数量、调整资源分配策略、优化任务执行计划等,以提高集群的性能和可用性。
四、总结
CDH的工作流程涉及多个步骤和组件的协同工作,包括安装与配置、数据存储与管理、数据处理与分析、任务调度与执行以及监控与管理等。通过CDH的工作流程,用户可以方便地构建和管理大规模的数据处理系统,实现高效、可扩展和易于管理的大数据处理。
参考:https://blog.csdn.net/wt334502157/article/details/120290580https://blog.csdn.net/wt334502157/article/details/120290580