Hadoop cdh版本搭建

cdh版本下载地址

1 概述

本文是针对LinuxCentos7服务器与CDH5.11的安装手册。

1.2 关于CDH和ClouderaManager

CDH(Cloudera's Distribution, includingApache Hadoop),是Hadoop众多分支中的一种,由Cloudera维护,基于稳定版本的Apache Hadoop构建,并集成了很多补丁,可直接用于生产环境。

ClouderaManager(本文以下简称为CM)则是为了便于在集群中进行Hadoop等大数据处理相关的服务安装和监控管理的组件,对集群中主机、Hadoop、Hive、Spark等服务的安装配置管理做了极大简化。架构图如图1所示。

图1

1.3 术语介绍

CM: Cloudera Manager (Cloudera公司专有的Hadoop集群管控平台);

CDH: Cloudera Distributed Hadoop(Cloudera公司重新打包发布的Hadoop版本);

HDFS:分布式文件系统;

HBASE: 基于HADOOP的分布式、列式存储数据库;

HIVE: 基于大数据技术(文件系统+运算框架)的SQL数据仓库工具;

MAPREDUCE: 分布式运算程序开发框架;

SPARK:为大规模数据处理而设计的快速通用的计算引擎;

ZOOKEEPER: 分布式协调服务基础组件;

YARN: 负责集群资源的统一管理和调度,分配系统资源给各个应用程序。

2  环境要求

2.1 环境要求

Cloudera Manager5安装遇到很多的问题,安装ClouderaManager如果不注意,会成为一部血泪史。为了避免多次、重复安装不成功,所以你需要具备以下条件。

1.  内存要足够大,主机必须至少有10 GB的RAM;

2.  必须具有root或无密码sudo访问主机;

3.  如果使用root,则主机必须接受相同的root密码;

4.  主机必须具有Internet访问权限才能使向导从中安装软件 archive.cloudera.com;

5.  运行支持的操作系统:

RHEL兼容系统

   Red Hat Enterprise Linux和 CentOS 5.7, 64位;

   Red Hat Enterprise Linux和CentOS 6.4, 64位;

   Red Hat Enterprise Linux和 CentOS 6.4 in SE Linux Mode;

   Red Hat Enterprise Linux和 CentOS 6.5, 64位;

   Oracle Enterprise Linux5.6(UEK R2),64位;

   Oracle Enterprise Linux6.4(UEK R2),64位;

   Oracle Enterprise Linux6.5(UEK R2,UEK R3),64位。

SLES - SUSE Linux Enterprise Server 11,64位。

Debian - Debian 7.0和7.1,64位。

Ubuntu - Ubuntu 12.04,64位。

2.1   主机规划

本次我设定安装5个节点的集群环境,所以我们分配好ip地址和主机功能。以下是我的服务器信息,仅供参考:

序号

环境类型

具体名称

数量

IP地址

用途

规格详细

备注

1

硬件

Centos7-01

1

192.168.31.24

作为cloudera  agent

内存:8G

CPU:4核

硬盘:100G

可支持虚拟环境

Centos7-02

1

192.168.31.25

作为cloudera agent

内存:8G

CPU:4核

硬盘:100G

可支持虚拟环境

Centos7-03

1

192.168.31.26

作为cloudera  agent

内存:8G

CPU:4核

硬盘:100G

可支持虚拟环境

cmserver

1

192.168.31.28

作为cloudera  Server

内存:16G

CPU:4核

硬盘:100G

可支持虚拟环境

Centos7-06

1

192.168.31.29

作为cloudera  agent,和mysql数据库

内存:8G

CPU:4核

硬盘:100G

可支持虚拟环境

2.2  软件下载与安装

CM下载地址:http://archive.cloudera.com/cm5/cm/5/

CDH下载地址:http://archive.cloudera.com/cdh5/parcels/5.11/

将以上安装包上传至服务器/tooles/目录下。

3 服务器集群准备

3.1 JDK安装

略,

注:每台都需要安装,并配置环境变量。

3.2 Mysql安装

注:主服务器上安装,也可以安装在其他主机上。

3.3 关闭防火墙

每台主机执行以下命令:

1. 修改vi /etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled。

2. systemctl stop firewalld  #停止firewall

3. systemctl disable firewalld  #禁止firewall开机启动

4. systemctl status firewalld  #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)。

3.4 配置hosts

每台主机执行以下命令修改配置文件,如图2所示。

vi /etc/hosts

图2

3.5 配置ntp时间同步

在每一台服务器执行以下命令:

1. 下载ntp服务:yum -y installntp

2. Server端修改配置文件:vi /etc/ntp.conf

restrictdefault kod nomodify notrap nopeer noquery    

restrict-6 default kod nomodify notrap nopeer noquery 

restrict220.130.158.71  

restrict59.124.196.83   

restrict59.124.196.84   

restrict127.0.0.1      

restrict-6 ::1

restrict192.168.100.0 mask 255.255.255.0 nomodify

 

servertime1.aliyun.com prefer

server220.130.158.71

server59.124.196.83

server59.124.196.84

 

driftfile/var/lib/ntp/drift

keys  /etc/ntp/keys

3. 在Agent端修改配置文件:vi/etc/ntp.conf

ftfile/var/lib/ntp/drift

restrict127.0.0.1

restrict-6 ::1

 

#配置时间服务器为本地的时间服务器

server192.168.31.28 #ip为服务器端的ip

restrict192.168.31.28 nomodify notrap noquery #ip同上

 

server  127.127.1.0     # local clock

fudge   127.127.1.0 stratum 10

includefile/etc/ntp/crypto/pw

keys/etc/ntp/keys

输入地址进行测试:ntpdate -u 192.168.31.28,如图3所示。

图3

4. 重启服务:service ntpd start 

5. 查看同步状态:ntpstat

3.6 ssh免密码登录配置(每一台)

1. 每台主机配置免密,分别执行以下命令:

ssh-keygen -t rsa

2. 主服务器与其它服务器免密码,在主节点上编辑以下命令发送到其他对应服务器:

ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.31.28(每台服务器对应ip)

4  Cloudrea Manager安装

4.1  Server端安装

1.  创建目录:mkdir /opt/cloudera-manager

2.  解压CM到/opt/cloudera-manager目录下:

tar -zxvf /tooles/cloudera-manager-centos7-cm5.11.1_x86_64.tar.gz-C   /opt/cloudera-manager

3.  创建cloudera-scm用户

useradd --system--home=/opt/cloudera-manager/cm-5.11.1/run/cloudera-scm-server --no-create-home--shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

4.  创建本地元数据存放的目录

mkdir /var/cloudera-scm-server

5.  改变 cloudera-scm-server和cloudera-manager文件夹的属主

chown cloudera-scm:cloudera-scm/var/cloudera-scm-server

chown cloudera-scm:cloudera-scm/opt/cloudera-manager

6.  修改配置文件,将本机做为一个服务端(注:只能写主机名,不能写ip)

vi/opt/cloudera-manager/cm-5.11.1/etc/cloudera-scm-agent/config.ini

图4

7.  创建parcel-repo仓库目录:

mkdir -p /opt/cloudera/parcel-repo

chown cloudera-scm:cloudera-scm/opt/cloudera/parcel-repo

8.  需要将CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha1改成CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha,否则安装时会重新下载,很重要!!

mv / tooles /CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel.sha1 / tooles/CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel.sha

9.  将tooles下的其余三个文件都复制到parcel-repo目录下:

cp / tooles /CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel/opt/cloudera/parcel-repo

cp / tooles /CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel.sha/opt/cloudera/parcel-repo

cp / tooles /manifest.json/opt/cloudera/parcel-repo

10.创建parcels存放目录并改变属主权限

mkdir -p /opt/cloudera/parcels

chown cloudera-scm:cloudera-scm/opt/cloudera/parcels

11.加入mysql的包

mkdir -p /usr/share/java

修改mysql的文件名:mv mysql-connector-java-5.1.25-bin.jar mysql-connector-java.jar

将包拷贝到:cp/keduox/5.11/mysql-connector-java.jar /usr/share/java/

12.初始化mysql

/opt/cloudera-manager/cm-5.11.1/share/cmf/schema/scm_prepare_database.shmysql –hcentos7-06 -uroot -p1234 --scm-host cmserver scmdbn root 1234

说明:这个脚本就是用来创建和配置CMS需要的数据库的脚本。

各参数是指:

mysql:数据库用的是mysql,如果安装过程中用的oracle,那么该参数就应该改为oracle。

–hcentos7-06:数据库建立在centos7-06主机上面。

-uroot:root身份运行mysql。

-p1234:mysql的root密码是1234。

--scm-host cmserver:CMS的主机,一般是和mysql安装的主机是在同一个主机上,也可指定其他主机。

最后三个参数是:数据库名,数据库用户名,数据库密码。

10、启动

cd/opt/cloudera-manager/cm-5.11.1/etc/init.d

./cloudera-scm-server start

./cloudera-scm-agent start

11、访问  http://ip:7180

4.2  Agent端安装

1.  创建目录:mkdir /opt/cloudera-manager

2.  解压CM到/opt/cloudera-manager目录下:

tar -zxvf /tooles/cloudera-manager-centos7-cm5.11.1_x86_64.tar.gz-C   /opt/cloudera-manager

3.  创建cloudera-scm用户

useradd --system--home=/opt/cloudera-manager/cm-5.11.1/run/cloudera-scm-server --no-create-home--shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

4.  修改配置文件,指向服务端主机名(注:只能写主机名,不能写ip)

vi/opt/cloudera-manager/cm-5.11.1/etc/cloudera-scm-agent/config.ini

图5

5.  创建parcels存放目录并改变属主权限

mkdir -p /opt/cloudera/parcels

chown cloudera-scm:cloudera-scm/opt/cloudera/parcels

6.  进入到init.d文件夹启动

cd/opt/cloudera-manager/cm-5.11.1/etc/init.d

./cloudera-scm-agent start

 

5  CDH集群安装

5.1  配置集群主机

ClouderaManager浏览器默认管理账号:

http://192.168.31.28:7180

User:admin

Password:admin

首次登陆进入集群安装向导:



出现以上警告在所有主机上执行以下命令:

echo 10 > /proc/sys/vm/swappiness

echo never > /sys/kernel/mm/transparent_hugepage/defrag

echo never > /sys/kernel/mm/transparent_hugepage/enabled

5.2  安装服务,包括hadoop,yarn,hbase等

检查主机正确性后,点击完成,进入集群配置。

选择要安装的服务,可以选择组合或自定义。


配置各节点间如何分配(注意: HDFS的Data Node 最少3个)



出现此页面,表示安装完成。

6  安装时遇到的问题

6.1  节点启动时找不到pstree命令


解决方法:安装pstree

yum install -y psmisc

6.2  数据库初始化时失败

解决方法:在mysql数据库下执行以下命令,给操作的用户向下授权的权限。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY'1234' WITH GRANT OPTION; 

重启mysql服务:service mysqld restart


  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值