Hadoop cdh版本搭建

原文档:https://blog.csdn.net/liangzelei/article/details/80359461
添加链接描述
![在这里插入图片描述](https://blog.csdn.net/liangzelei/article/details/80359461

本文是针对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

  1. 在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

  1. 重启服务:service ntpd start

  2. 查看同步状态:ntpstat

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

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

ssh-keygen -t rsa

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

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

  1. 创建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

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

mkdir /var/cloudera-scm-server

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

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

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

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

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

图4

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

mkdir -p /opt/cloudera/parcel-repo

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

  1. 需要将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

  1. 将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

  1. 创建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

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

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

图5

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

mkdir -p /opt/cloudera/parcels

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

  1. 进入到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

你可能感兴趣的:(大数据,Hadoop,cdh版本搭建)