1.CM(Cloudera Manager)介绍
1.1 简介
Cloudera Manager是一个拥有集群自动化安装、中心化管理、集群监控、报警功能的一个工具,使得安装集群从几天的时间缩短在几个小时内,运维人员从数十人降低到几人以内,极大的提高集群管理的效率。
对比Apache / CDH / HDP:
(1)Apache:运维麻烦,组件间兼容性需要自己调研。(一般大厂使用,技术实力雄厚,有专业的运维人员)
(2)CDH:国内使用最多的版本,但CM不开源,但其实对中、小公司使用来说没有影响(建议使用)
(3)HDP:开源,可以进行二次开发,但是没有CDH稳定,国内使用较少
1.2 CM架构
1)Cloudera Repository:软件由Cloudera管理分布存储库。(有点类似Maven的中心仓库)
2)Server:负责软件安装、配置,启动和停止服务,管理服务运行的群集。
3)Management Service:由一组执行各种监控,警报和报告功能角色的服务。
4)Database:存储配置和监视信息。
5)Agent:安装在每台主机上。负责启动和停止的过程,配置,监控主机。
6)Clients:是用于与服务器进行交互的接口(API和Admin Console)
2.环境准备
2.1 集群规划
项目中采用3台虚拟机作为测试集群进行部署:hadoop101、hadoop102、hadoop103(对应内存分别是:16G、4G、4G)
集群规划参考:https://blog.51cto.com/12445535/2366197?tdsourcetag=s_pcqq_aiomsg
2.2 虚拟机准备
操作系统:CentOS 7
2)安装JDK:1.8(所有节点)
CentOS自带OpenJdk,不过运行CDH5需要使用Oracle的JDK
3)克隆三台虚拟机,设置hostname、hosts、静态IP、关闭防火墙(所有节点)
设置hadoop101、hadoop102、hadoop103的主机对应内存分别是:16G、4G、4G
6)在hadoop101节点安装MySQL5.6(主节点)
8)设置swap空间(所有节点)
(Cloudera建议将交换空间设置为0,过多的交换空间会引起GC耗时的激增,所以还是关闭的为好)
echo "vm.swappiness = 0" >> /etc/sysctl.conf
9)关闭大页面压缩执行命令 (所有节点)
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
10)创建CM用的数据库(主节点)
在MySQL中依次创建监控数据库、Hive数据库、Oozie数据库、Hue数据库
[root@hadoop101 ~]# mysql -uroot -p000000 # 启