本期导读 :【阿里云 CDP 公开课】第三讲
主题:CDP 集群管理
讲师:王雪峰,Cloudera 生态资深解决方案工程师
内容框架:
- Cloudera Manager 概览
- CM 管理控制台
直播回放链接:(第3讲)
https://developer.aliyun.com/live/248032
Cloudera 和阿里云深度合作推出了基于阿里云部署的 Cloudera 企业数据云平台,即 CDP 平台。CDP 由两个最好的开源数据分析平台 CDH 和 HDP 融合而来,集合了两个平台各自的最佳功能,同时增加了新功能。本文主要介绍 CDP 的集群管理。
我们现在使用的是本地部署的 CDP 平台,这款产品由40多个组件组成,在原来的 CDH 和 HDP 基础上增加了不少功能,同时提供了很多企业定制化的功能。
整个 CDP 平台主要分成了以下几部分:
上图左侧是运营和管理部分,主要是通过 Cloudera Manager 来控制。
上图中间方框内的部分,包含了整个的数据存储、数据移动、任务编排和用户接口、计算、运营数据库、数据仓库、搜索安全和治理,同时还有加密相关的内容。
Cloudera 其他产品,如 CDSW、Cloudera DataFlow、Cloudera Workload XM,也都可以通过 Cloudera Manager 来管理,提供统一的使用和支持。
一、Cloudera Manager 概览
(一)Cloudera Manager 的总体功能
Cloudera Manager 是 Cloudera 公司推出的全功能企业级集群管理平台,提供最佳的系统利用率并满足 SLA 承诺。
它覆盖了集群所有资源与服务的统一配置、管理、监控、诊断等所有管理工作,包含:
- 自动化部署
- 智能配置警告
- 高可用配置
- 多集群多版本管理
- 细粒度的运维用户管理
- 静态和动态资源管理
- 全局时间轴控制
- 智能日志管理
- 定制化的指标报表
- 开放API可以集成第三方工具
- SDX
- 公有云/私有云架构支持
(二)Cloudera Manager 术语
部署
Cloudera Manager 及其管理的所有集群的配置。
集群
- 包含 HDFS 文件系统并对该数据运行 MapReduce 和其他进程的一组计算机或计算机机架。
- 在 Cloudera Manager 中,是一个逻辑实体,包含一组主机,在主机上安装的单个版本的 Cloudera Runtime 以及在主机上运行的服务和角色实例。一台主机只能属于一个集群。Cloudera Manager 可以管理多个集群,但是每个集群只能与一个 Cloudera Manager Server 关联。
主机
在 Cloudera Manager 中,是运行角色实例的物理或虚拟机。一台主机只能属于一个集群。
机架
在 Cloudera Manager 中,是一个物理实体,包含一组通常由同一交换机提供服务的物理主机。
服务
- 在尽可能可预测的环境中运行在/etc/init.d/定义的 System V 初始化脚本的 Linux 命令 ,删除大多数环境变量并将当前工作目录设置为/。
- Cloudera Manager 中的托管功能类别,可以在集群中运行,有时称为服务类型。例如:Hive、HBase、HDFS、YARN 和 Spark。
服务实例
在 Cloudera Manager 中,是在集群上运行的服务的实例。例如:“ HDFS-1”和“yarn”。服务实例跨越许多角色实例。
角色
在 Cloudera Manager 中,服务中的功能类别。例如,HDFS 服务具有以下角色:NameNode、SecondaryNameNode、DataNode 和 Balancer。有时称为角色类型。
角色实例
在 Cloudera Manager 中,是在主机上运行的角色的实例。它通常映射到 Unix 进程。例如:“ NameNode-h1”和“ DataNode-h1”。
角色组
在 Cloudera Manager 中,这是一组角色实例的一组配置属性。
主机模板
Cloudera Manager 中的一组角色组。将模板应用于主机时,将创建每个角色组中的角色实例并将其分配给该主机。
网关
一种角色类型,通常为客户端提供对特定群集服务的访问权限。例如,HDFS、Hive、Kafka、MapReduce、Solr 和 Spark 各自具有网关角色,以为其客户提供对其各自服务的访问。网关角色并非总是在其名称中带有“网关”,也不是专门用于客户端访问。例如,Hue Kerberos Ticket Renewer 是一个网关角色,用于代理 Kerberos 中的票证。
支持一个或多个网关角色的节点有时称为网关节点或边缘节点,在网络或云环境中常见“边缘”的概念。对于 Cloudera 集群,当从 Cloudera Manager 管理控制台的“操作”菜单中选择“部署客户端配置”时,群集中的网关节点将接收适当的客户端配置文件。
Parcel
二进制分发格式,包含编译的代码和元信息,例如程序包描述、版本和依赖项。
静态资源池
在 Cloudera Manager 中,是跨一组服务的总群集资源(CPU,内存和I / O权重)的静态分区。
动态资源池
在 Cloudera Manager 中,这是资源的命名配置,以及用于在池中运行的 YARN 应用程序或 Impala 查询之间调度资源的策略。
(三)CM 架构
Cloudera Manager 的核心是 Cloudera Manager Server。它托管 Cloudera Manager 管理控制台、Cloudera Manager API 和应用程序逻辑,并负责安装软件、配置、启动和停止服务以及管理运行服务的集群。
Agent(代理) - 安装在每台主机上。该代理负责启动和停止进程、解包配置、触发安装以及监控主机。
Management Service(管理服务)- 由一组角色组成的服务,这些角色执行各种监控、警报和报告功能。
数据库 - 存储配置和监控信息。通常,多个逻辑数据库跨一个或多个数据库服务器运行。例如,CM Server和监控角色使用不同的逻辑数据库。
Cloudera Repository(存储库) - 由 CM 分发的软件存储库。
客户端 - 是与服务器交互的接口:
- CM Admin Console(CM管理控制台) - 基于Web的管理员用于管理集群和CM的用户界面。
- CM API - API开发人员用于创建自定义CM应用程序。
(四)心跳
心跳是 Cloudera Manager 中的主要通信机制。默认情况下,代理每15秒将心跳发送一次到Cloudera Manager Server。 可调整。
在心跳交换期间,代理会将其活动通知给ClouderaManager Server。反过来,Cloudera Manager Server 响应代理应执行的操作。代理和 Cloudera Manager Server 最终都进行了一些协调。
二、Cloudera Manager 管理控制台
Cloudera Manager 管理控制台是基于 Web 的界面,可用于配置、管理和监控 Cloudera Runtime。
Cloudera Manager 管理控制台侧面导航栏提供以下选项卡和菜单:
搜索 - 支持搜索服务、角色、主机、配置属性和命令。您可以输入部分字符串,并显示一个下拉列表,其中最多显示16个匹配的实体。
示例:
集群服务
- 查看服务实例或与该服务关联的角色实例的状态和其他详细信息
- 对服务实例,角色或特定角色实例进行配置更改
- 添加和删除服务或角色
- 停止、启动或重新启动服务或角色。
- 查看已为服务或角色运行的命令
- 查看审核事件历史记录
- 部署和下载客户端配置
- 退役和重新委任角色实例
- 进入或退出维护模式
- 执行特定于特定服务类型的操作。例如:
- 启用 HDFS 高可用性或 NameNode 联邦
- 运行 HDFSBalancer
- 创建 HBase、Hive 和 Sqoop 目录
Cloudera Manager 管理服务 - 管理和监控 Cloudera Manager 管理服务。
包括以下角色:活动监控器、警报发布者、事件服务器、主机监控器、报告管理器和服务监控器 (Activity Monitor, Alert Publisher, Event Server, Host Monitor, Reports Manager, and Service Monitor)。
主机 - 显示由 Cloudera Manager 管理的主机。
- 所有主机 -显示集群中管理主机的列表。
- 添加主机 -启动“添加主机”向导。
- Parcels -显示集群中可用的 parcels,并允许您下载、分发和激活新的 parcels 包。
- 主机配置 -打开“ 主机配置”页面,您可以在其中配置主机并为一个或多个主机的全局配置属性指定替代。
- 角色 -显示部署在每个主机上的角色。
- 主机模板 -创建和管理主机模板,这些模板定义了可用于轻松扩展集群的角色组集。
- 磁盘概述 -显示集群中所有磁盘的状态。
在此页面中,您可以:
- 查看有关单个主机的状态和各种详细指标
- 进行配置更改以进行主机监控
- 查看主机上运行的所有进程
- 运行主机检查器
- 添加和删除主机
- 创建和管理主机模板
- 管理 Parcels
- 退役和重新托管主机
- 进行机架分配
- 运行主机升级向导
报告 - 创建有关 HDFS、MapReduce、YARN 和 Impala 使用情况的报告、浏览 HDFS 文件、并管理 HDFS 目录的配额。
诊断 - 查看日志、事件和警报以诊断问题
审计 - 查询和筛选跨集群的审核事件,包括登录,跨集群等。
图表 - 查询感兴趣的指标,将其显示为图表,并显示个性化的图表仪表板。
复制 - 管理复制计划和快照策略
管理 - 管理 Cloudera Manager
- 设置 - 配置 Cloudera Manager。
- 警报 - 显示何时生成警报,配置警报收件人以及发送测试警报电子邮件。
- 用户和角色 - 管理 Cloudera Manager 用户及其分配的角色和会话。
- 安全性 - 生成 Kerberos 凭据并检查主机。
- 许可证 - 管理 Cloudera 许可证。
- 语言 - 设置活动事件、健康事件和警报电子邮件的内容所使用的语言。
- 外部帐户 - 配置从云服务到 Cloudera Manager 的连接。
支持 - 显示各种支持的行动
- 发送诊断数据 - 将数据发送到 Cloudera 支持以支持故障排除。
- 支持门户(Cloudera Enterprise) -显示 Cloudera 支持门户。
- 计划的诊断:每周 -配置自动收集诊断数据并发送给 Cloudera 支持的频率。
- 以下链接打开了 Cloudera 网站上的最新文档:
- 帮助文档
- 安装指南
- API文档
- API Explorer(Cloudera Manager Swagger 界面)
- 发行说明
- 关于 -Cloudera Manager 的版本号和内部版本详细信息以及 Cloudera Manager 服务器的当前日期和时间戳。
下面演示一下 Cloudera Manager 新版本的功能。
新版本的 Cloudera Manager 界面比较友好,主要分成两块,左边是菜单栏/功能栏,右边是功能的结构展示。 Cloudera Manager 主页提供了两种展示类型:经典视图(Classic View)和表视图(Table View)。
表视图如上,里面展示了所有集群和其他内容,上面的 tab 里还可以查看所有运行情况,配置信息以及最近运行的命令。
经典视图如上图,上面展示集群所有组件,下面展示 Cloudera Manager 的服务信息,右边是一些图表。图表的默认时间是30分钟,用户可以根据自己的需求来设置不同的时间簿,也可以自定义。每个图表都可以放大来查看更细节的信息,也可以在图表生成器里打开以便在其他地方展示使用。
左侧菜单栏里面的集群主要分成三块内容,第一块是集群里面组件的信息,第二个是其他的一些功能,比如主机、用户角色、主机模板等等,最下面的是 Cloudera Manager 服务的内容。
点击任意组件即可进入到它的展示页。“状态”里面展示了组件的运行状况测试、状况摘要、运行状态历史记录,和相关的图表。“实例”里面包含了组件的服务角色,每个角色的状况和所在的主机等。
组件的配置参数是在“配置”里面设置的, Cloudera Manager 对配置进行了详细的划分,使得用户可以很容易找到对应的组件。
“命令”里面显示了组件运行过程中出现的一些命令,便于用户后期去审核。“图表库”里面是一些默认的图表,用户也可以根据自己的需求来做自定义的图表。“审核”主要是对操作的审计。
Cloudera Manager 还对组件做了很多扩充,比如 HDFS 里有文件浏览器用来浏览数据信息等内容。
主机功能下面包括增加节点、Pacel 配置、主机配置、用户角色、主机模板、磁盘概述等等。
主机页面展示了这个集群的所有主机,列出了主机名称、IP、主机所有的角色、授权状态、信号负载等等详细内容。这里默认展示10个列,用户也可以根据需要再增加更多列,比如内核版本等等这些信息。
添加主机可以直接通过界面来操作,可以把节点添加为只被 Cloudera Manager 管理或者把节点添加到集群,后面还提供添加主机的向导。
在 Cloudera Manager 里,所有的组件都通过 Pacel 来管理的,它提供了一个管理和监控的页面。
上图可以看到,系统里的 Pacel 包有不同的状态,有的已经分配和激活,有的已分配未激活,有的没有下载。用户可以根据查看 Pacel 的使用情况,看到哪台机器在哪个节点上使用。
添加新的 Pacel 包有两点需要注意。一个是对应 Pacel 包的路径,这个实际上就是配用的链接。第二如果有些库是带有认证要求的,这里会要求启用认证,匹配用户的账户和密码信息,通过用户和密码就可以直接访问了。
上图是 Pacel 的设置和后续检测新 Pacel 的内容。里面有默认的目录,也可以选择自己配置。
诊断里面实是一些事件的信息和问题。我们可以通过筛选器对它进行过滤,来搜索对应的事件,然后判断问题。
审核里面包含了整个系统的事件。
图表里面包含三块内容,一块是图表生成器,第二个是 DashBoard 和创建仪表盘。点击右上角的问号,会显示帮助和示例,里面有标准文档提供给大家使用,可以直接拿过来拷贝执行,执行完之后就可以根据自己的需求构建不同类型的图表。构建完之后可以导入导出或保存。
Cloudera Manager 还提供备份能力,它负责不同集群之间的数据同步。
还有一块比较重要的内容就是管理,包括整个 Cloudera Manager 的设置、预警、用户和角色的配置、安全、许可证、语言和 Web 账户。
设置主要是配置 Cloudera Manager 的信息,包括 Pacel、外部认证安全性等。
预警功能里有心跳预警、预警的配置和预警的捕获,用户也可以去修改对应的信息来启用预警或者关闭预警。捕获日志事件之后,它可以更好地去跟踪日记,抽取日志时间的规则。预警可以通过 email 发送,也可以通过配置 SNMP,或者通过自定义的预警标本来配置。
Cloudera Manager 做了很细的用户角色划分,使得不同的用户可以分配不同的角色来执行不同的权限。用户会话是当前活跃的用户的访问信息。
安全部分主要是 Kerberos 和 TLS,里面提供了启用向导,用户可以根据向导来启用Kerberos 和 TLS。
Cloudera 还提供了不同的语言,包括中文、英语、德语、日语,用户需要在浏览器中进行设置,步骤如上。
菜单栏的最下方还有部分功能。“正在运行的命令”是集群的命令情况,展开所有命令就看到命令执行的情况。“支持”可以对应的支持门户和发送诊断数据,里面还提供了很多文档,包括安装部署的文档升级指南等。
以上就是全部演示。
大家如果对产品感兴趣,欢迎加入到阿里云 Cloudera 企业数据云交流群。对产品有任何疑问都可以在交流群里咨询。
以下是产品的链接,有需要的用户可以直接点击链接访问和使用产品。
阿里云官网:https://ac.aliyun.com/application/cloudera
或直接访问:https://market.aliyun.com/products/201190008/cmgj00047952.html
免费测试申请:https://survey.aliyun.com/apps/zhiliao/owtTaIQU3