使用cloudrea manager管理已有的cdh集群(转)
转自:http://blog.51cto.com/teacheryan/1912116
本文介绍如何搭建cloudera manager去接入已有hadoop组件(cdh)。
一、下载必备文件:
1.cloudera manager:http://archive-primary.cloudera.com/cm5/cm/5/

大部分公司内大数据集群环境都无公网访问权限,针对当前集群系统环境和想要接入的cm版本找到对应版本离线包,对于redhat、centos系统来说el6就是redhat6、centos6系统,之后找到想要安装的cm版本,本文搭建过程采用cloudera-manager-el6-cm5.9.0_x86_64.tar.gz
2.cdh安装包:http://archive.cloudera.com/cdh5/parcels/5.9.0/
本搭建过程采用CDH-5.9.0-1.cdh5.9.0.p0.23-el6.parcel、CDH-5.9.0-1.cdh5.9.0.p0.23-el6.parcel.sha1,parcel文件为cdh压缩包,执行安装过程会进行解压并且上传到各节点;sha1文件内为压缩包的校验码

3.mysql的jdbc驱动jar包:http://dev.mysql.com/downloads/connector/j/

4.mysql5.6:http://dev.mysql.com/downloads/mysql/5.6.html
本搭建过程采用mysql5.6社区版源码包mysql-5.6.35.tar.gz

二、cloudera manager安装:
1.server端安装配置mysql5.6:
解压mysql安装包后执行
yum install cmake ncurses-* -y
其余看编译输出,缺少什么包就再yum安装什么
进入mysql解压目录,执行
cmake -DCMAKE_INSTALL_PREFIX=/export/mysql5.6
make && make install
如果没有报错继续执行
顺利执行过后将/etc/my.cnf删除或移走,在mysql安装目录当中简单编写my.cnf并启动,具体配置请根据自身环境进行设置,本文不对此内容赘述
2.解压cloudera-manager-el6-cm5.9.0_x86_64.tar.gz到安装目录:
默认cloudera和cm-5.9.0目录放置在/opt下,如果想放在其他目录须留意对应配置
3.导入数据,执行完成后会有cm库:
/export/tmp/opt/cm-5.9.0/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot --scm-host 127.0.0.1 scm scm scm
4.登录mysql,进行必要的修改配置:
set global binlog_format='ROW';
grant all on *.* to 'scm'@'%' identified by 'scm';
否则默认binlog格式为statement,cm会启动报错
对scm进行所有主机的授权
5.cloudera manager server端配置:
创建用户
useradd --system --home=/opt/cm-5.9.0/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "cloudera SCM user" cloudera-scm
在之前的cloudera目录下创建parcel-repo目录,将CDH-5.9.0-1.cdh5.9.0.p0.23-el6.parcel和CDH-5.9.0-1.cdh5.9.0.p0.23-el6.parcel.sha1放在此目录下,重命名sha1文件为sha,否则cm找不到sha文件无法进行校验,会重新去公网上下载压缩包
mv CDH-5.9.0-1.cdh5.9.0.p0.23-el6.parcel.sha1 CDH-5.9.0-1.cdh5.9.0.p0.23-el6.parcel.sha
6.mysql jar包放入lib库:
将解压mysql-connector-java-5.1.40.tar.gz得到的文件放在/opt/cm-5.9.0/share/cmf/lib下
7.配置db连接信息:
vim /opt/cm-5.9.0/etc/cloudera-scm-server/db.properties

host由于mysql就装在本机所以写127地址即可,库名、用户名、密码遵循上面创建用户和授权的内容进行填写
8.配置cm启动脚本的java环境:
vim /opt/cm-5.9.0/etc/init.d/cloudera-scm-agent
vim /opt/cm-5.9.0/etc/init.d/cloudera-scm-server
export JAVA_HOME=/usr/java/jdk1.7.0_51
9.agent配置:
vim /export/tmp/opt/cm-5.9.0/etc/cloudera-scm-agent/config.ini

server_host配置server端的ip或者主机名
server_port和port没有修改,使用默认的即可
listening_ip可以不做修改
之后将/opt/cm-5.9.0此目录拷贝到其他agent节点的对应目录
注:须确保/opt/cm-5.9.0/lib/cloudera-scm-agent下的uuid文件删掉,否则会出现cm web中主机显示冲突的情况
10.启动服务:
server端执行
/opt/cm-5.9.0/etc/init.d/cloudera-scm-server start
agent端执行
/opt/cm-5.9.0/etc/init.d/cloudera-scm-agent start
server端启动端口7180 7182
agent端启动端口9000
三、web配置:
1.添加cloudera management service:
浏览器访问server端地址的7180端口,用户名密码默认admin admin
登录后不按照提示进行安装,直接点击左上方主页,然后选择右边添加管理服务

填入管理员登录mysql的连接信息即可

审核更改页不用做任何更改

之后等待安装完成,安装过后会发现集群监控已经有数据,点选所有主机,检查所有主机检查各节点状态


回到主页,点击cluster1右侧的添加服务
2.添加hdfs服务:

选择hdfs继续,根据原有集群情况进行主机选择

审核更改部分可以根据现有集群配置进行填写,左侧会有对应参数名

需要注意的是,datanode数据目录不管原来所有者是谁必须要修改为hdfs,否则无法通过cm启动,并且原有集群对应进程要先停掉
点击继续后不要等待进程进行,直接返回主页,会发现hdfs集群角色已经添加

进入hdfs配置journalnode目录dfs.journalnode.edits.dir

之后启动集群,观察监控数据

注:其余hadoop组件接入原则也是停掉原有进程,修改对应目录属主为组件名称的用户,比如hdfs,yarn,同时修改cm上对应的关键配置。此种做法对程序环境改造很大,很多标准必须遵循cloudera manager的规则,而且有丢失hdfs元数据风险。
四、后记:
此次搭建cm集群遇到一些问题,比如添加hdfs角色后无法启动namenode,报错java.io.IOException: There appears to be a gap in the edit log. We expected txid 1, but got txid 16,可能数据不连续,通过hadoop namenode -recover命令进行修复后可以启动,此命令不敢保证在生产环境执行没有问题;又或者datanode无法启动,遇到以下报错Operation not permitted

之后发现原集群的对应目录所有者为hadoop,而根据其他角色启动进程的所有者hdfs来进行权限修改后datanode可以启动
五、参考资料:
https://www.quora.com/Cloudera-company/Can-we-install-Cloudera-Manager-to-manage-an-existing-cluster 了解新搭建的cm接入现有集群思路
http://www.361way.com/cloudera-manager-cdh-install/5033.html cm离线安装步骤参考
使用cloudrea manager管理已有的cdh集群(转)的更多相关文章
- Cloudera Manager安装_搭建CDH集群
2017年2月22日, 星期三 Cloudera Manager安装_搭建CDH集群 cpu 内存16G 内存12G 内存8G 默认单核单线 CDH1_node9 Server || Agent ...
- Cloudera Manager 4.6 安装部署hadoop CDH集群
Cloudera Manager 4.6 安装详解 1. Cloudera Manager介绍 1.1. 功能介绍 Cloudera Manager是一个针对hadoop集群的管理工具,功能包括:cd ...
- CDH集群搭建部署
1. 硬件准备 使用了五台机器,其中两台8c16g,三台4c8g.一台4c8g用于搭建cmServer和NFS服务端,另外4台作为cloudera-manager agent部署CDH集群. ...
- CDH集群安装&测试总结
0.绪论 之前完全没有接触过大数据相关的东西,都是书上啊,媒体上各种吹嘘啊,我对大数据,集群啊,分布式计算等等概念真是高山仰止,充满了仰望之情,觉得这些东西是这样的: 当我搭建的过程中,发现这些东西是 ...
- 朝花夕拾之--大数据平台CDH集群离线搭建
body { border: 1px solid #ddd; outline: 1300px solid #fff; margin: 16px auto; } body .markdown-body ...
- 使用Cloudera Manager搭建HDFS完全分布式集群
使用Cloudera Manager搭建HDFS完全分布式集群 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 关于Cloudera Manager的搭建我这里就不再赘述了,可以参考 ...
- 基于yum安装CDH集群
一.环境准备 准备至少3台设备:CentOS7系统: 如果是在实验环境下,给虚拟机的内存至少4G,根建议1T,数据盘1T,由于是虚拟机,所以根分区和数据盘放心大胆的给:如果是在生产环境则多多益善:我这 ...
- 管理和维护RHCS集群
导读 管理和维护RHCS集群是一个非常复杂和繁琐的工作,要维护好一个RHCS集群,必须熟悉RHCS的基本运行原理,在集群管理方面,RHCS提供了两种方式:即Luci图形界面方式和命令行方式,这儿重点讲 ...
- 完全关闭及再次启动cdh集群
关闭集群 - 关闭集群所有组件 关闭Cloudera Management Service 关闭cdh所有客户端节点 sudo /opt/cloudera-manager/cm-5.11.1/etc/ ...
随机推荐
- 安装WampServer关闭mysql服务后打不开了
WampServer自带了mysql精简班的数据库了 WampServer自带 的mysql和你独立安装的mysql端口号冲突了 mysql默认的端口号是3306 建议你修改WampServer的数据 ...
- WPF自适应可关闭的TabControl 类似浏览器的标签页(转)
效果如图: 虽然说是自适应可关闭的TabControl,但TabControl并不需要改动,不如叫自适应可关闭的TabItem. 大体思路:建一个用户控件,继承自TabItem,里面放个按钮,点击的时 ...
- 解读ASP.NET 5 & MVC6 ---- 系列文章
本系列的大部分内容来自于微软源码的阅读和网络,大部分测试代码都是基于VS RC版本进行测试的. 解读ASP.NET 5 & MVC6系列(1):ASP.NET 5简介 解读ASP.NET 5 ...
- [深度学习]Python/Theano实现逻辑回归网络的代码分析
2014-07-21 10:28:34 首先PO上主要Python代码(2.7), 这个代码在Deep Learning上可以找到. # allocate symbolic variables for ...
- eclipse导出jar,再转换为exe可执行程序
转自: https://blog.csdn.net/mommomm/article/details/8227876 若只想知道如何把jar转换成exe,直接看第四步即可. 一.导出jar文件: 选中你 ...
- LINUX下多路径的介绍和安装配置(测试未写完)
一.什么是多路径 普通的电脑主机都是一个硬盘挂接到一个总线上,这里是一对一的关系.而到了有光纤组成的SAN环境,或者由iSCSI组成的IPSAN环境,由于主机和存储通过了光纤交换机或者多块网卡及IP来 ...
- NetCore 下集成SignalR并进行分组处理
Tips: 1.注意跟普通版Net.MVC的前端处理方式不一样,以前可以connection.start()后直接done里面再做逻辑处理,现在不行了 建议做法是在具体的业务Hub里重写OnConne ...
- AT命令控制上网 PDP
1. AT+CGATT=1 (Attach or detach from GPRS service, GPRS 附着状态) 说的简单点,这一步就是让SGSN (服务GPRS节点,你可以把它理解成与基站 ...
- 竖屏拍照,但是sd卡中却是横屏解决方法
protected void onActivityResult(int requestCode, int resultCode, Intent data) { switch (resultCode) ...
- 重载(overload),覆盖(override),隐藏(hide)的区别
写正题之前,先给出几个关键字的中英文对照,重载(overload),覆盖(override),隐藏(hide).在早期的C++书籍中,可能翻译的人不熟悉专业用语(也不能怪他们,他们不是搞计算机编程的, ...