分享

CDH5.7快速离线安装教程

PeersLee 发表于 2016-4-20 15:11:51 [显示全部楼层] 只看大图 回帖奖励 阅读模式 关闭右栏 9 85592
本帖最后由 PeersLee 于 2016-4-20 16:35 编辑
问题导读:

1.什么是CDH?
2.搭建CDH集群 需要的基本环境是什么?
3.如何对集群进行基本的配置?
4.怎样进行Cloudera Manager安装?
5.怎样进行CDH服务安装?





解决方案:

一、简介

CDH是cloudera公司开发的一个快速部署、高效管理Hadoop和其各种组件的一个商业化产品。主要分为两部分,分别为Cloudera Manager和CDH软件包。其中Cloudera Manager负责集群的部署与管理。CDH软件包囊括了hdaoop各类的组件的安装包,例如hive、hdfs、Spark等等。

由于实验室服务器集群实现了硬件虚拟化,要在虚拟资源重新搭建CDH集群。cloudera的搭建官方提供了三种安装方式。分别是在线安装、yum安装和离线安装,我首先是采用离线安装的方式,这种方式也是目前大部分博客教程所采用的方式。但是照着这种方式我每次到最后安装服务的时候总是在部署配置文件的时候出错,提示错误如图所示:


2016-04-20_140823.png

猜测原因是权限问题,但是在网上寻找办法也一直没有解决。这里吐槽一下cloudera官方社区,没有几个人。因此舍弃到这种安装方式采用在线安装,但是在线安装需要耗费大量时间在软件包的下载上,不过我们可以手动下载安装,这样可以大大提高安装速度。



二、基础环境

软件环境


[mw_shl_code=bash,true]1.操作系统:Centos6.5
2.CDH软件包版本5.6、Cloudra Manager版本5.7
3.JDK版本oracle jdk1.7.0_67[/mw_shl_code]

硬件环境

9台虚拟机节点,硬件配置如下:


2016-04-20_140959.png



三、基础配置

以下所有操作均在root下进行

1.host配置

1)修改主机名
[mw_shl_code=bash,true]vim /etc/sysconfig/network,各台主机honstname改名为对应的名称,service network restart重启网卡生效。
[/mw_shl_code]

2)添加hostname与ip的对应关系如下图所示:


2016-04-20_141033.png

3)将host从主节点master分发到各个从节点。:
[mw_shl_code=bash,true]scp /etc/hosts root@slave1:/etc[/mw_shl_code]

2.关闭防火墙和selinux

1)关闭防火墙(每个节点)
[mw_shl_code=bash,true]service iptables stop
chkconfig iptables off[/mw_shl_code]

2)关闭selinux(重启生效)
[mw_shl_code=bash,true]vim /etc/selinux/config[/mw_shl_code]


2016-04-20_141100.png

3.ssh无密码登录

1)各个节点安装ssh
[mw_shl_code=bash,true]ssh-keygen -t rsa 一路回车结束[/mw_shl_code]

2)将公钥加入到authorized_keys(只需master操作)
[mw_shl_code=bash,true]cat id_rsa.pub >authorized_keys[/mw_shl_code]

3) 修改权限
[mw_shl_code=bash,true]chmod 600 authorized_keys[/mw_shl_code]

4)将authorized_keys从master分发到各个slave
[mw_shl_code=bash,true]scp authorize_keys root@slave1:~/.ssh/[/mw_shl_code]

4.jdk安装

1)卸载自带java
[mw_shl_code=bash,true]rpm -qa |grep java
yum remove java*(删除自带的java)[/mw_shl_code]

2)安装jdk(每个节点rpm安装)
[mw_shl_code=bash,true]rpm -ivh jdk1.7.0_67.rpm[/mw_shl_code]

3)配置java环境(每个节点配置,当然可以一个节点配置完了使用scp分发)
在/etc/profile中加入:
[mw_shl_code=bash,true]export JAVA_HOME=/usr/java/jdk1.7.0_67
export CLASSPATH=.:$CLASSPTAH:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin[/mw_shl_code]

4)使配置生效(每个节点)
[mw_shl_code=bash,true]source /etc/profile[/mw_shl_code]

5.ntp时间同步

1)安装NTP(每个节点)
[mw_shl_code=bash,true]yum install ntp[/mw_shl_code]

2)配置NTP
[mw_shl_code=bash,true]vim /etc/ntp.conf[/mw_shl_code]
master配置:(选用复旦大学ntp服务器)


2016-04-20_141134.png

slave配置:(同步master)

2016-04-20_141200.png

3)开启NTP服务
[mw_shl_code=bash,true]service ntpd start
chkconfig ntpd off[/mw_shl_code]

4)查看同步效果
命令:ntpstat


2016-04-20_141230.png



四、Cloudera Manager安装

1.下载rpm安装包

rpm安装包下载地址:其中jdk如果自己安装好了可以不用下载。
http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.7/RPMS/x86_64/

包含软件:

2016-04-20_141307.png


2.master节点安装

将下载好的rpm包放到一个文件夹中,任意命名,进入到这个文件夹手动安装:
yum localinstall --nogpgcheck *.rpm
使用yum安装会同时安装相关的依赖,非常方便
如果要卸载使用
yum --setopt=tsflags=noscripts remove xxxx

3.slave节点安装

slave中不需要安装server的包,只需要安装cloudera-manager-agent.rpm和cloudera-manager-daemons.rpm。先将两个rpm包拷贝到slave节点上,剩下安装方法和master一样。

4.安装cloduera manager二进制安装包

[mw_shl_code=bash,true]1)wget http://archive.cloudera.com/cm5/ ... nager-installer.bin

2)chmod u+x cloudera-manager-installer.bin

3)./cloudera-manager-installer.bin[/mw_shl_code]

4)根据安装向导一路next。注意,如果之前master上没有手动安装rpm包此时就会联网下载,下载速度一般都较慢,太费时间。

5)安装结束以后会提示登录7180端口。



五、CDH服务安装

1.制作本地parcel

1)下载CDH软件包,下载地址:
http://archive.cloudera.com/cdh5/parcels/5.6/

下载对应版本的CDH:下载图中标红的三个资源(el6代表centos6)

2016-04-20_141359.png

之前完成CM安装之后master节点会在/opt目录下生成cloudera文件夹,将刚才下载的三个文件移动到parcel-repo文件夹中并将
CDH-5.6.0-1.cdh5.6.0.p0.45-el6.parcel.sha1更名为
CDH-5.6.0-1.cdh5.6.0.p0.45-el6.parcel.sha如不更名会在线重新下载。


2.配置软件

1)登录7180端口:http://master:7180

2016-04-20_145510.png

初始用户名与密码均为admin

2)同意协议一路continue


2016-04-20_145551.png

输入集群中各个主机名或者ip,可以用空格分隔,点击search,然后continue
3)选择parcel版本,由于我们下载的是CDH5.6,所以选择CDH5.6。这里可能没有CDH5.6的选项,这是由于我们是在cloudera-server开启之后才将CDH5.6的三个文件放入parcel-repo文件夹中,重启一下cloudera-scm-server就行了:
/etc/init.d/cloudera-scm-server restart

4)安装jdk,我们之前已经在每个节点都安装了jdk,所以这步可以跳过。

5)设置ssh登录,选择全部主机使用统一ssh密码,输入密码点击continue。
6)安装cloudera-manager-agent相关软件。由于我们之前在每个节点手动安装了相应的rpm包,所以这里很快就会完成。如果之前各个节点没有手动安装,这一步会在线下载rpm包,速度非常慢,并且如果错误还会中断。强烈建议不要使用在线下载。
大概十分钟左右安装完成(这里只有7个节点,第一次安装的时候我只安装了7个节点,剩下两个节点是后来添加到集群中的),然后继续Continue。


2016-04-20_145633.png

7)主机检测:

2016-04-20_145659.png

会提示错误,解决办法
[mw_shl_code=bash,true]echo 0 >/proc/sys/vm/swappiness(临时生效)
echo never >/sys/kernel/mm/redhat_transparent_hugepage/defrag(临时生效)[/mw_shl_code]

重启永久生效:
编辑vim /etc/sysctl.conf


2016-04-20_145743.png

编辑vim /etc/rc.local

2016-04-20_145816.png

8)安装parcel包
    接下来CM安装parcel包,图中提示host is in bad health,这个可以忽略,多等一会就会恢复正常。


2016-04-20_145847.png

9)安装服务
如没有特殊需求可以默认


2016-04-20_145918.png

10)一路continue完成安装

2016-04-20_150000.png

已有(9)人评论

跳转到指定楼层
yangxy 发表于 2016-4-21 09:58:08
非常好 感谢楼主
回复

使用道具 举报

Pengjx2015 发表于 2016-4-21 17:11:38
非常好 感谢楼主
回复

使用道具 举报

zype800 发表于 2016-4-22 09:33:48
楼主,可以留下QQ或者其他联系方式吗,遇到一个问题请教
回复

使用道具 举报

xuejianjun 发表于 2016-7-18 18:01:49
mark ,暂时用的5.4.7 。计划升级为5.7
回复

使用道具 举报

cloudera 发表于 2016-7-20 20:36:20
5.7.1离线安装好后,yarn服务的resourceManager和NodeManager角色都启动不了,网上说是个bug,怎么解决啊。楼主可以启动?、错误信息,Error found before invoking supervisord: dictionary update sequence element #105 has length 1; 2 is required  
回复

使用道具 举报

benhui 发表于 2016-10-17 10:41:49
楼主你好,按照你的方法安装 CM 的时候遇到了一个问题
---> Package cloudera-manager-agent.x86_64 0:5.7.2-1.cm572.p0.17.el6 will be 安装
--> 处理依赖关系 cloudera-manager-daemons = 5.7.2,它被软件包 cloudera-manager-agent-5.7.2-1.cm572.p0.17.el6.x86_64 需要
---> Package cloudera-manager-server.x86_64 0:5.7.2-1.cm572.p0.17.el6 will be 安装
--> 处理依赖关系 cloudera-manager-daemons = 5.7.2,它被软件包 cloudera-manager-server-5.7.2-1.cm572.p0.17.el6.x86_64 需要
---> Package crontabs.noarch 0:1.10-33.el6 will be 安装
--> 完成依赖关系计算
错误:Package: cloudera-manager-agent-5.7.2-1.cm572.p0.17.el6.x86_64 (/cloudera-manager-agent-5.7.2-1.cm572.p0.17.el6.x86_64)
          Requires: cloudera-manager-daemons = 5.7.2
错误:Package: cloudera-manager-server-5.7.2-1.cm572.p0.17.el6.x86_64 (/cloudera-manager-server-5.7.2-1.cm572.p0.17.el6.x86_64)
          Requires: cloudera-manager-daemons = 5.7.2
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest



这是什么原因啊
回复

使用道具 举报

mind 发表于 2016-12-28 23:54:50
cloudera 发表于 2016-7-20 20:36
5.7.1离线安装好后,yarn服务的resourceManager和NodeManager角色都启动不了,网上说是个bug,怎么解决啊。 ...

遇到同样问题。你解决了吗?求助
回复

使用道具 举报

cloudera 发表于 2017-1-4 02:02:00
mind 发表于 2016-12-28 23:54
遇到同样问题。你解决了吗?求助

我换了5.9版本
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条