Cloudera Manager(简称CM)+CDH构建大数据平台

2019-07-30 18:35:19 浏览数 (1)

原文点此处:mantch(简书博客)

一、Cloudera Manager介绍

    Cloudera Manager(简称CM)是Cloudera公司开发的一款大数据集群安装部署利器,这款利器具有集群自动化安装、中心化管理、集群监控、报警等功能,使得安装集群从几天的时间缩短在几小时以内,运维人员从数十人降低到几人以内,极大的提高集群管理的效率。所以为了同学们能够快速搭建该平台,写出以下教程仅供参考,有什么不足之处请提出,加以改正。     开始之前其实有很多的工作要做,比如配置IP地址、关闭防火墙、配置SSH免密登录等,这些都是比较常规的环境配置,这里不再赘述,不懂者自行百度。     附上大数据“前世今生”的一篇文章给大家,希望大家对大数据有更多的了解,大数据的前世今生:诞生、发展、未来?

1.CM技术架构

Agent:安装在每台主机上。该代理负责启动和停止的过程,拆包配置,触发装置和监控主机。 Management Service:由一组执行各种监控,警报和报告功能角色的服务。 Database:存储配置和监视信息。通常情况下,多个逻辑数据库在一个或多个数据库服务器上运行。例如,Cloudera的管理服务器和监控角色使用不同的逻辑数据库。 Cloudera Repository:软件由Cloudera 管理分布存储库。 Clients:是用于与服务器进行交互的接口: Admin Console :基于Web的用户界面与管理员管理集群和Cloudera管理。 API :与开发人员创建自定义的Cloudera Manager应用程序的API。

2.CM四大功能

1.管理:对集群进行管理,如添加、删除节点等操作。 2.监控:监控集群的健康情况,对设置的各种指标和系统运行情况进行全面监控。 3.诊断:对集群出现的问题进行诊断,对出现的问题给出建议解决方案。 4.集成:对hadoop的多组件进行整合。

3.分析表格
4.本教程使用虚拟机配置

(根据自己的PC进行配置,CPU核心总数要等于PC总核心数,否则会出现线程串线的问题)

.

192.168.1.10(mini1)

192.168.1.11(mini2)

192.168.1.12(mini3)

角色

Server

Agent

Agent

cpu

双核

单核

单核

内存

4G

3G

3G

.

二.服务器集群时间同步

    之所以要做服务器集群的时间同步,我想大家应该不言而喻了吧,CM要求各个节点之间的时间不能够相差太多,为的就是保证集群的统一管理和减少不必要的错误、麻烦。还有一个原因就是一般企业里用到的服务器是不能够连接外网的,所以第一步我们就开始做服务器集群时间同步。

1.配置时间为中国的时区

EST是美国东部标准时间,不符合中国的时间,所以要把所有的服务器都改为CST中部标准时间。

2.ntp时间同步服务器安装

    这里需要安装一个时间主服务器,其它节点的时间分别去同步这台时间主服务器,这样就可以统一去管理时间了,ntp刚好提供了这一功能,其它的节点按照时间间隔进行不断同步,达到时间一致的效果。     每台服务器都需要安装ntp,通过yum进行安装。

代码语言:javascript复制
yum install -y ntp
3.配置ntp
  • 配置文件在**/etc/ntp.conf**,并进行编辑,修改以下三处:
  1. 把第一处的注释给去掉,并修改ip地址为时间主服务器的地址。
  2. 把第二处的这几行注释掉,因为不需要连接互联网进行时间同步。
  3. 第三处是增加的两行命令,需要本地与本地进行同步时间。
  • 配置**/etc/sysconfig/ntpd**:     在文件末尾增加一条命令SYNC_CLOCK=yes
4.启动ntp服务

执行以上命令后,ntp服务就会启动成功,并开启了自启动。

5.其它节点进行时间同步

其它节点也需要安装ntp,然后执行命令:

代码语言:javascript复制
crontab -e

添加一条命令:

    这条命令的意思是在0到59分钟之间间隔1分钟向ip地址服务器进行时间同步,*号代表任意小时、任意天、任意月、任意星期都执行。然后等待1分钟后进行时间查看,看时间是否已经同步。 .

三、构建本地Cloudera yum源

    因为大部分公司的大数据服务器都是不允许连接外网的,所以需要建立本地的yum源来进行安装CM。

1.主节点安装http服务
  • 执行命令yum install -y httpd
  • 启动httpd 执行命令service httpd start
  • 在浏览器输入网址:192.168.1.10回车,看是否启动成功!
2.CM的tar包
  • 下载CM的tar包,地址为:链接 下载CM最新版本和对应的系统,本例下载的文件为:
  • 在**/var/www/html文件目录下创建一个文件夹cm-5.15.0**
  • 把下载下来的tar包放到该文件夹中,并进行解压操作,解压完成后删除tar包。
3.创建本地源
  • 安装创建本地源的工具:yum install yum-utils createrepo
  • 创建repo文件夹:createrepo /var/www/html/cm-5.15.0/
  • 创建yum源映射文件:切换到**/etc/yum.repos.d**目录下。 创建repo映射文件并进行编辑:touch myrepo.repo
  • 复制该文件到所有的节点上。

四、设置SELINUX

编辑**/etc/sysconfig/selinux文件,把把里边的一行改为SELINUX=disabled**,然后重启就可以了。 .

五、安装mysql数据库

mysql数据安装在哪都可以,只要能够访问到这个数据库就可以,这里不再详细介绍如何安装了,给个链接自行百度吧!链接 .

六、安装Cloudera Manager

1.下载CM安装文件并且进行配置(每台服务器都要操作)
  • 下载安装文件并上传到服务器**/opt**目录下,并解压:链接
  • 修改文件**/opt/cm-5.15.0/etc/cloudera-scm-agent/config.ini**,指向server所在的服务器地址: server_host=192.168.1.10
  • 配置mysql数据库(Server服务器操作),进入**/opt/cm-5.15.0/share/cmf/schema**目录下,执行以下命令: ./scm_prepare_database.sh mysql temp -h 192.168.1.3:3306 -uroot -proot --scm-h mini1 root root root 格式:数据库类型、数据库、数据库服务器、用户名、密码、cm server服务器 登录名 登录密码
2.下载CDH文件(Server服务器操作)

    下载CDH安装文件到CM的parcel包里,就可以通过parcel包进行安装CDH了,安装和升级都更加的方便了。把下载好的2个文件放入到**/opt/cloudera/parcel-repo**目录下。链接

文件名中的el7代表CentOS7版本,如果是别的版本请下载其它的版本。

  • CM只能识别比自身版本低的CDH。
  • 修改**.sha1结尾的文件名为.sha**,这才能够被CM识别。
3.检查cloudera-manager-agent的yum安装版本

    执行yum info cloudera-manager-agent命令可以查看agent的版本,一定要与安装CM的文件版本相一致,否则会安装失败。每台机器上都要进行检查。

    如果发现版本不一致,那就是制作本地yum仓库的时候下载的文件版本不一致,重新安装本地yum仓库,并进行yum清除缓存,执行以下2条命令: yum clean all yum list 然后再次进行agent版本校验(如果是已经安装了agent,请先卸载掉)。

4.修改hosts文件

每台机器上的hosts文件加上一个server机器的bogon映射,CDH安装时会用上,否则会报错:

5.启动server进行安装CM

进入**/opt/cm-5.15.0/etc/init.d目录下,执行: ./cloudera-scm-server start 命令会很快执行完,但需要等比较久的时间才会启动完成,可以通过端口7180是否启动或者通过浏览器输入192.168.1.10:7180看是否能够访问,能够弹出登录界面就说明安装CM成功了。用户名和密码初始都是admin**

六、CM里安装CDH

1.登录CM并按照步骤进行安装
  • 指定主机就是集群的所有机器了。可以通过模式匹配来进行搜索。

-选择CDH版本为自己下载的parcel版本

  • 自定义存储库为本地yum源。
  • 按照提示勾选安装jdk和启用单用户模式,输入root用户登录密码等,等待安装完成(这里需要的内存比较大,也比较卡,请耐心等待)。注意!!!这里很容易发生错误,可以通过查看详细信息定位错误位置,并根据该信息进行解决。
  • 下步进行安装parcel,这一步也要蛮久的时间去执行,请耐心等待,如果服务器满负荷运行,需要进行清理后再查看状态。
  • 直到出现安装成功页面,并进入CM主页,表示CM CDH已经安装成功!

0 人点赞