CDH5上安装Hive,HBase,Impala,Spark等服务

Apache Hadoop的服务的部署比较繁琐,需要手工编辑配置文件、下载依赖包等。Cloudera Manager以GUI的方式的管理CDH集群,提供向导式的安装步骤。由于需要对Hive,HBase,Impala,Spark进行功能测试,就采用了Cloudera Manager方式进行安装。

Cloudera Manager提供两种软件包安装源,Package 和 Parcel:

Package就是一个个rpm文件,以yum的方式组织起来。

Parcel是rpm包的压缩格式,以.parcel结尾,所有的rpm压缩在一个文件中,方便下载和分发,使用manifest.json文件对parcel文件进行描述,将parcel文件保存到局域网内的Web服务器上,安装过程中就不需要从互联网上下载文件了,实现了离线安装。

一、安装前准备工作

安装Hive,HBase,Impala,Spark之前,Cloudera Manager应该已经安装好了,参见:本地Yum软件源安装Cloudera Manager 5 这篇文章,使用的操作系统为 CentOS-6.5-x86_64,CM版本为 5.0.2 ,采用parcel包方式安装,

1、下载安装中需要的文件:

从 http://archive.cloudera.com/cdh5/parcels/5.0.2.13/ 下载如下的文件,保存到Web服务器的 /var/www/html/cdh5/parcels/latest 目录 :

[root@localhost latest]# pwd
/var/www/html/cdh5/parcels/latest
[root@localhost latest]# ll
total 1793948
-rw-r--r-- 1 root root 1836961055 Jun 15 06:51 CDH-5.0.2-1.cdh5.0.2.p0.13-el6.parcel
-rw-r--r-- 1 root root      33190 Jun 15 09:04 manifest.json

从 http://archive-primary.cloudera.com/redhat/cdh/ 下载:RPM-GPG-KEY-cloudera,这是对rpm包进行校验的文件,保存到Web服务器的 /var/www/html/redhat/cdh 目录:

[root@localhost cdh]# pwd
/var/www/html/redhat/cdh
[root@localhost cdh]# ll
total 4
-rw-r--r-- 1 root root 1690 Jun 16 07:32 RPM-GPG-KEY-cloudera
[root@localhost cdh]# 

2、准备安装的服务器

测试环境一共使用了六台服务器,列表如下:

服务器列表
ip地址 hostname 描述信息
172.16.230.140 archive.cloudera.com 本地web服务器
172.16.230.141 cm.worker.com CM,管理节点
172.16.230.151 h1.worker.com 节点1
172.16.230.152 h2.worker.com 节点2
172.16.230.153 h3.worker.com 节点3
172.16.230.154 h4.worker.com 节点4

所有的服务器上安装CentOS-6.5-x86_64,并关闭防火墙、selinux、保持时间一致。保持所有的root用户密码一致。一个Hadoop集群中的节点最少为三台,本测试环境的节点为四台,上面的ip地址需要根据自已的网络情况进行调整,这是我搭建的虚拟机的IP。

3、在web服务器上发布CentOS-6.5-x86_64安装盘文件

安装过程中,需要从CentOS-6.5-x86_64安装盘上读取一些rpm包,需要将安装盘发布为本地yum源。将安装盘挂载到web服务器,并添加软连接到web目录,web服务器上的web根目录如下:

[root@localhost html]# pwd
/var/www/html
[root@localhost html]# ll
total 12
drwxr-xr-x 3 root root 4096 Jun 15 06:48 cdh5
lrwxrwxrwx 1 root root   24 Jun 20 08:12 centos_media -> /media/CentOS_6.5_Final/
drwxr-xr-x 3 root root 4096 Jun 14 10:04 cm5
drwxr-xr-x 3 root root 4096 Jun 16 07:29 redhat

4、创建 hosts 和 yum配置文件

创建hosts文件,保存到所有服务器的 /etc/hosts ,内容如下:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

172.16.230.140 archive.cloudera.com
172.16.230.141 cm.worker.com
172.16.230.151 h1.worker.com
172.16.230.152 h2.worker.com
172.16.230.153 h3.worker.com
172.16.230.154 h4.worker.com

创建 myrepo.repo 文件,保存到所有服务器的 /etc/yum.repos.d 目录,内容如下:

[myrepo]
name=myrepo
baseurl=http://172.16.230.140/cm5/redhat/6/x86_64/cm/5/
enabled=1
gpgcheck=0

创建 CentOS-Media.repo 文件,保存到所有服务器的 /etc/yum.repos.d 目录,内容如下:

[c6-media]
name=CentOS-$releasever - Media
baseurl=http://172.16.230.140/centos_media
gpgcheck=0
enabled=1
exclude = jdk*

注意, /etc/yum.repos.d 目录,仅存在  myrepo.repo 和  CentOS-Media.repo  两个文件.

5、cm.worker.com 上安装 PostgreSQL

Hive需要使用一个关系数据库作为Metastore数据库,使用嵌入式数据库存在性能问题,需要在cm.worker.com 上安装一个PostgreSQL数据库,创建用户hiveuser,创建数据库 hivedb,指定数据库拥有者为hiveuser,详细过程可以参见这篇文章:PostgreSQL新手教程

二、图解Hive,HBase,Impala,Spark 的安装和配置

做了上面的准备工作后,登录CM5就可以开始安装了,安装过程大部分情况下都不需要修改默认值,需要修改的地方会以文字说明,下面是安装过程的截图,

1、登录CM5

登录CM5


2、选择Cloudera Express

选择Cloudera Express


3、可供选择的安装包列表

可供选择的安装包列表


4、为CDH集群指定主机

输入 172.16.230.[151-154] ,根据自已网络情况进行调整,然后点击搜索。

为CDH集群指定主机

5、进入添加主机向导

使用parcel安装方式,parcel下载路径不用修改,已经发布在本地web服务器中了。

添加主机向导1

不需要java加密,保留默认值:

添加主机向导2


输入root的密码,所有节点的root密码是一致的。同时安装的数据默认为10,考虑到是虚拟机,修改为2。如果是真实服务器,请保留默认值为10.

添加主机向导3


进行节点CM管理程序安装,如果出现问题,请检查hostname与ip地址配置是否正确。

添加主机向导4


下载和分配parcel包,由于parcel包有1.8G大小,执行时间较长,可以喝杯咖啡再回来。

添加主机向导5


主机安装完成:会对主机进行检查,有个 swappness 需要调整,如果是真实服务器,请将 swappness修改为0,尽量不使用交换分区。

添加主机向导6


6、进入添加服务向导:

选饿所有服务

添加服务向导01

保持默认的节点角色配置:

添加服务向导02

添加服务向导03

添加服务向导04

选择自定义数据库,填写连接信息,并点击测试连接按钮:

添加服务向导05

添加服务的详细配置,保留默认值:

添加服务向导06

添加服务向导07

添加服务向导08

添加服务向导09

首次启动服务的时间比较长,大概二十分钟:

添加服务向导10

添加服务完成:

添加服务向导11

点击完成后,就进入了CM管理的首页了。

7、进入CM首页

cm hmoe page


三、小结

本文描述的hadoop安装方式是一种离线方式,通过CM5加快了环境搭建的速度,CM5将hadoop集群管理的复杂度大大降低。后面在测试中学习hadoop集群的调优。

原创作品,转载请注明出处:http://blog.csdn.net/yangzhaohui168/article/details/33403555




你可能感兴趣的:(Cloudera)