1.cloudera manager 的概念
简单来说,Cloudera Manager是一个拥有集群自动化安装、中心化管理、集群监控、报警功能的一个工具(软件),使得安装集群从几天的时间缩短在几个小时内,运维人员从数十人降低到几人以内,极大的提高集群管理的效率。
2.cloudera manager 的功能
cloudera manager有四大功能:
• 管理:对集群进行管理,如添加、删除节点等操作。
• 监控:监控集群的健康情况,对设置的各种指标和系统运行情况进行全面监控。
• 诊断:对集群出现的问题进行诊断,对出现的问题给出建议解决方案。
• 集成:多组件进行整合。
3. cloudera manager 的架构
cloudera manager的核心是管理服务器,该服务器承载管理控制台的Web服务器和应用程序逻辑,并负责安装软件,配置,启动和停止服务,以及管理上的服务运行群集。
Cloudera Manager Server由以下几个部分组成:
• Agent:安装在每台主机上。该代理负责启动和停止的过程,拆包配置,触发装置和监控主机。
• Management Service:由一组执行各种监控,警报和报告功能角色的服务。
• Database:存储配置和监视信息。通常情况下,多个逻辑数据库在一个或多个数据库服务器上运行。例如,Cloudera的管理服务器和监控角色使用不同的逻辑数据库。
• Cloudera Repository:软件由Cloudera 管理分布存储库。
• Clients:是用于与服务器进行交互的接口:
• Admin Console :基于Web的用户界面与管理员管理集群和Cloudera管理。
• API :与开发人员创建自定义的Cloudera Manager应用程序的API。
4.Cloudera Manager(CDH5)内部结构、功能包括配置文件、目录位置等
4.1 相关目录
/var/log/cloudera-scm-installer : 安装日志目录。
/var/log/* : 相关日志文件(相关服务的及CM的)。
/usr/share/cmf/ : 程序安装目录。
/usr/lib64/cmf/ : Agent程序代码。
/var/lib/cloudera-scm-server-db/data : 内嵌数据库目录。
/usr/bin/postgres : 内嵌数据库程序。
/etc/cloudera-scm-agent/ : agent的配置目录。
/etc/cloudera-scm-server/ : server的配置目录。
/opt/cloudera/parcels/ : Hadoop相关服务安装目录。
/opt/cloudera/parcel-repo/ : 下载的服务软件包数据,数据格式为parcels。
/opt/cloudera/parcel-cache/ : 下载的服务软件包缓存数据。
/etc/hadoop/* : 客户端配置文件目录。
4.2 配置
4.2.1 Hadoop配置文件
配置文件放置于/var/run/cloudera-scm-agent/process/目录下。如:/var/run/cloudera-scm-agent/process/193-hdfs-NAMENODE/core-site.xml。这些配置文件是通过Cloudera Manager启动相应服务(如HDFS)时生成的,内容从数据库中获得(即通过界面配置的参数)。
在CM界面上更改配置是不会立即反映到配置文件中,这些信息会存储于数据库中,等下次重启服务时才会生成配置文件。且每次启动时都会产生新的配置文件。
CM Server主要数据库为scm基中放置配置的数据表为configs。里面包含了服务的配置信息,每一次配置的更改会把当前页面的所有配置内容添加到数据库中,以此保存配置修改历史。
scm数据库被配置成只能从localhost访问,如果需要从外部连接此数据库,修改vim /var/lib/cloudera-scm-server-db/data/pg_hba.conf文件,之后重启数据库。运行数据库的用户为cloudera-scm。
4.2.2 查看配置内容
直接查询scm数据库的configs数据表的内容。
访问REST API: http://hostname:7180/api/v4/cm/deployment,返回JSON格式部署配置信息。
4.2.3 配置生成方式
CM为每个服务进程生成独立的配置目录(文件)。所有配置统一在服务端查询数据库生成(因为scm数据库只能在localhost下访问)生成配置文件,再由agent通过网络下载包含配置文件的zip包到本地解压到指定的目录。
4.2.4 配置修改
CM对于需要修改的配置预先定义,对于没有预先定义的配置,则通过在高级配置项中使用xml配置片段的方式进行配置。而对于/etc/hadoop/下的配置文件是客户端的配置,可以在CM通过部署客户端生成客户端配置。
4.3 数据库
Cloudera manager主要的数据库为scm,存储Cloudera manager运行所需要的信息:配置,主机,用户等。
4.4 CM结构
CM分为Server与Agent两部分及数据库(自带更改过的嵌入Postgresql)。它主要做三件事件:
1). 管理监控集群主机。
2). 统一管理配置。
3). 管理维护Hadoop平台系统。
实现采用C/S结构,Agent为客户端负责执行服务端发来的命令,执行方式一般为使用python调用相应的服务shell脚本。Server端为Java REST服务,提供REST API,Web管理端通过REST API调用Server端功能,Web界面使用富客户端技术(Knockout)。
1). Server端主体使用Java实现。
2). Agent端主体使用Python, 服务的启动通过调用相应的shell脚本进行启动,如果启动失败会重复4次调用启动脚本。
3). Agent与Server保持心跳,使用Thrift RPC框架。
4.5 升级
在CM中可以通过界面向导升级相关服务。升级过程为三步:
1). 下载服务软件包。
2). 把所下载的服务软件包分发到集群中受管的机器上。
3). 安装服务软件包,使用软链接的方式把服务程序目录链接到新安装的软件包目录上。
4.6 卸载
sudo /usr/share/cmf/uninstall-scm-express.sh, 然后删除/var/lib/cloudera-scm-server-db/目录,不然下次安装可能不成功。
4.7 开启postgresql远程访问
CM内嵌数据库被配置成只能从localhost访问,如果需要从外部查看数据,数据修改vim /var/lib/cloudera-scm-server-db/data/pg_hba.conf文件,之后重启数据库。运行数据库的用户为cloudera-scm。
4.8 CDH组件的安装目录
5.Cloudera Manager 安装部署
该压缩包一共有2个文档:
centos7 安装cdh6.0.1&Kerberos:比较新的(公司在用);
大数据技术之CM:学习用的,版本比较老。
6.CDH 5.12.1 自带组件版本
Cluster 1 — CDH 5 | |||
主机 | |||
hadoop[202-204] | |||
组件 | 版本 | 发行版 | CDH 版本 |
Bigtop-Tomcat(仅限 CDH 5) | 0.7.0+cdh5.12.1+0 | 1.cdh5.12.1.p0.3 | CDH 5 |
Crunch(仅限 CDH 5 ) | 0.11.0+cdh5.12.1+101 | 1.cdh5.12.1.p0.3 | CDH 5 |
Flume NG | 1.6.0+cdh5.12.1+166 | 1.cdh5.12.1.p0.3 | CDH 5 |
MapReduce 1 | 2.6.0+cdh5.12.1+2540 | 1.cdh5.12.1.p0.3 | CDH 5 |
Hadoop | 2.6.0+cdh5.12.1+2540 | 1.cdh5.12.1.p0.3 | CDH 5 |
HDFS | 2.6.0+cdh5.12.1+2540 | 1.cdh5.12.1.p0.3 | CDH 5 |
HttpFS | 2.6.0+cdh5.12.1+2540 | 1.cdh5.12.1.p0.3 | CDH 5 |
hadoop-kms | 2.6.0+cdh5.12.1+2540 | 1.cdh5.12.1.p0.3 | CDH 5 |
MapReduce 2 | 2.6.0+cdh5.12.1+2540 | 1.cdh5.12.1.p0.3 | CDH 5 |
YARN | 2.6.0+cdh5.12.1+2540 | 1.cdh5.12.1.p0.3 | CDH 5 |
HBase | 1.2.0+cdh5.12.1+365 | 1.cdh5.12.1.p0.3 | CDH 5 |
Lily HBase Indexer | 1.5+cdh5.12.1+71 | 1.cdh5.12.1.p0.3 | CDH 5 |
Hive | 1.1.0+cdh5.12.1+1197 | 1.cdh5.12.1.p0.3 | CDH 5 |
HCatalog | 1.1.0+cdh5.12.1+1197 | 1.cdh5.12.1.p0.3 | CDH 5 |
Hue | 3.9.0+cdh5.12.1+6507 | 1.cdh5.12.1.p0.3 | CDH 5 |
Impala | 2.9.0+cdh5.12.1+0 | 1.cdh5.12.1.p0.3 | CDH 5 |
Kite(仅限 CDH 5 ) | 1.0.0+cdh5.12.1+144 | 1.cdh5.12.1.p0.3 | CDH 5 |
Llama(仅限 CDH 5 ) | 1.0.0+cdh5.12.1+0 | 1.cdh5.12.1.p0.3 | CDH 5 |
Mahout | 0.9+cdh5.12.1+34 | 1.cdh5.12.1.p0.3 | CDH 5 |
Oozie | 4.1.0+cdh5.12.1+446 | 1.cdh5.12.1.p0.3 | CDH 5 |
Parquet | 1.5.0+cdh5.12.1+187 | 1.cdh5.12.1.p0.3 | CDH 5 |
Pig | 0.12.0+cdh5.12.1+110 | 1.cdh5.12.1.p0.3 | CDH 5 |
sentry | 1.5.1+cdh5.12.1+329 | 1.cdh5.12.1.p0.3 | CDH 5 |
Solr | 4.10.3+cdh5.12.1+519 | 1.cdh5.12.1.p0.3 | CDH 5 |
spark | 1.6.0+cdh5.12.1+530 | 1.cdh5.12.1.p0.3 | CDH 5 |
Sqoop | 1.99.5+cdh5.12.1+46 | 1.cdh5.12.1.p0.3 | CDH 5 |
Sqoop | 1.4.6+cdh5.12.1+113 | 1.cdh5.12.1.p0.3 | CDH 5 |
Whirr | 0.9.0+cdh5.12.1+23 | 1.cdh5.12.1.p0.3 | CDH 5 |
ZooKeeper | 3.4.5+cdh5.12.1+117 | 1.cdh5.12.1.p0.3 | CDH 5 |
Cloudera Manager Management Daemon | 5.12.1 | 1.cm5121.p0.6 | 不适用 |
Supervisord | 3.0-cm5.12.1 | 不可用 | 不适用 |
Java 8 | JAVA_HOME=/opt/module/jdk1.8.0_144 java version "1.8.0_144" Java(TM) SE Runtime Environment (build 1.8.0_144-b01) Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode) | 不可用 | 不适用 |
Cloudera Manager Agent | 5.12.1 | 1.cm5121.p0.6.el6 | 不适用 |
7.CDH 6.0.1 自带组件版本
组件 | 版本 | 发行版 | CDH 版本 |
Supervisord | 3.0 | 不可用 | 不适用 |
Cloudera Manager Agent | 6.0.1 | 610811.el7 | 不适用 |
Cloudera Manager Management Daemon | 6.0.1 | 610811.el7 | 不适用 |
flink | 1.8.1+flink1.8.1 | hadoop_2.8-scala_2.11 | 不适用 |
Flume NG | 1.8.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
Hadoop | 3.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
HDFS | 3.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
HttpFS | 3.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
hadoop-kms | 3.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
MapReduce 2 | 3.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
YARN | 3.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
HBase | 2.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
Lily HBase Indexer | 1.5+cdh6.0.1 | 590678 | CDH 6.0.1 |
Hive | 2.1.1+cdh6.0.1 | 590678 | CDH 6.0.1 |
HCatalog | 2.1.1+cdh6.0.1 | 590678 | CDH 6.0.1 |
Hue | 3.9.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
Impala | 3.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
Java 8 | java version "1.8.0_141" Java(TM) SE Runtime Environment (build 1.8.0_141-b15) Java HotSpot(TM) 64-Bit Server VM (build 25.141-b15, mixed mode) | 不可用 | 不适用 |
Kafka | 1.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
Kite(仅限 CDH 5 ) | 1.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
kudu | 1.6.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
manager | manager-2.0.0.2 |
| 不适用 |
Oozie | 5.0.0-beta1+cdh6.0.1 | 590678 | CDH 6.0.1 |
Parquet | 1.9.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
Pig | 0.17.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
sentry | 2.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
Solr | 7.0.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
spark | 2.2.0+cdh6.0.1 | 590678 | CDH 6.0.1 |
Sqoop | 1.4.7+cdh6.0.1 | 590678 | CDH 6.0.1 |
ZooKeeper | 3.4.5+cdh6.0.1 | 590678 | CDH 6.0.1 |