CDH大数据——cloudera-manager搭建安装集群CDH

目录

一、基础软件版本信息:

1、CDH对CentOS的版本要求:

2、CDH对数据库版本的要求:

3、CDH对jdk版本的要求:

4、CDH对浏览器的要求:

5、CDH对网络配置的要求:

6、CDH对安全传输协议(TLS)的要求:

7、CDH相关软件下载:

(1)Cloudera Manager(CM)下载地址:

(2)CDH安装包下载地址:

(3)本次采用的CM和CDH版本如下:

二、CDH基本优势:

三、CDH集群安装一般步骤:

1、集群规划:

2、集群内各节点root密码修改:

3、集群内各节点关闭防火墙:

4、集群内各节点关闭selinux:

5、集群内各节点设置主机名:

6、集群内各节点配置host文件:

7、集群内各节点更新yum源:

(1)备份原镜像:

(2)下载新镜像:

(3)清空yum缓存:

(4)生成缓存:

8、集群内各节点安装SSH免密登录:

(1)在CDH141上:

(2)在CDH142上:

(3)在CDH143上:

9、集群内各节点同步时间节点:

(1)关闭集群内防火墙:

(2)集群内各节点下载ntp软件:

(3)ntpd服务端配置ntp的信息:

(4)服务端通过ntpdate手动同步一次时间:

(5)服务端设置ntpd开机自启:

(6)服务端通过ntpd自动同步时间:

(7)其它节点(nptd客户端)配置ntp信息:

10、集群内各节点安装JDK:

(1)下载软件包:

(2)上传软件包:

(3)安装jdk软件:

(4)配置环境变量:

(5)查看jdk版本:

11、集群内某节点安装mysql:

(1)创建mysql用户和组:

(2)创建mysql安装目录:

(3)授权mysql安装目录:

(4)解压mysql软件包;

(5)移动mysql文件:

(6)创建mysql配置文件:

(7)配置mysql信息:

(8)注册Mysql服务:

(9)设置mysql命令环境变量:

(10)设置开机启动mysql:

(11)初始化数据库:

(12)修改初始化密码:

(13)启动和停止mysql服务:

(14)防火墙开放mysql数据库端口:

12、集群各节点下载依赖:

13、安装CM(离线):

(1)下载CM离线软件安装包:

(2)上传CM离线软件安装包:

(3)安装httpd和createrepo:

(4)生成createrepo:

(5)移动CM文件夹:

(6)创建CM的repo:

(7)安装CM软件:

(8)下载CDH的Parcel文件:

(9)上传CDH的Parcel文件:

(10)修改文件所有者:

(11)配置mysql的jdbc驱动:

(12)创建数据库和用户:

(13)设置CM数据库:

(14)操作CM Server服务:

(15)访问CM的web系统:

(16)修改CM系统端口号:

14、管理CM系统用户:

15、操作CM安装CDH集群:

16、启动关闭CDH集群:

(1)启动CDH集群:

(2)关闭CDH集群:


一、基础软件版本信息:

1、CDH对CentOS的版本要求:

本项目采用的是:CentOS6.5 标准版 64位

Operating System

Version

Red Hat Enterprise Linux (RHEL)-compatible

RHEL (+ SELinux mode in available versions)

7.3, 7.2, 7.1, 6.8, 6.7, 6.6, 6.5, 6.4, 5.11, 5.10, 5.7

CentOS (+ SELinux mode in available versions)

7.3, 7.2, 7.1, 6.8, 6.7, 6.6, 6.5, 6.4, 5.11, 5.10, 5.7

Oracle Enterprise Linux (OEL) with Unbreakable Enterprise Kernel (UEK) and Standard Kernel

7.3, 7.2 (UEK R2), 7.1, 6.8 (UEK R3), 6.7 (UEK R3),

6.6 (UEK R3), 6.5 (UEK R2, UEK R3),

6.4 (UEK R2), 5.11, 5.10, 5.7

SLES

SUSE Linux Enterprise Server (SLES)

12 with Service Pack 1,

11 with Service Pack 4,

11 with Service Pack 3,

11 with Service Pack 2

Hosts running Cloudera Manager Agents must use SUSE Linux Enterprise Software Development Kit 11 SP1.

Ubuntu/Debian

Ubuntu

Trusty 14.04 - Long-Term Support (LTS)

Precise 12.04 - Long-Term Support (LTS)

Debian

Jessie 8.4, 8.2

Wheezy 7.8, 7.1, 7.0

2、CDH对数据库版本的要求:

本项目采用的是:mysql-5.7.19-log

Component

MariaDB

MySQL

SQLite

PostgreSQL

Oracle

Derby - see Note 5

Cloudera Manager

5.5, 10

5.7, 5.6, 5.5, 5.1

9.4, 9.3, 9.2, 9.1. 8.4, 8.3, 8.1

12c, 11gR2

See Note 11

 

Oozie

5.5, 10

5.7, 5.6, 5.5, 5.1

9.4, 9.3, 9.2, 9.1. 8.4, 8.3, 8.1

See Note 3

12c, 11gR2

Default

Flume

Default (for the JDBC Channel only)

Hue

5.5, 10

5.7, 5.6, 5.5, 5.1

See Note 6

Default

9.4, 9.3, 9.2, 9.1. 8.4, 8.3, 8.1

See Note 3

12c, 11gR2

Hive/Impala

5.5, 10

5.7, 5.6, 5.5, 5.1

See Note 1

9.4, 9.3, 9.2, 9.1. 8.4, 8.3, 8.1

See Note 3

12c, 11gR2

Default

Sentry

5.5, 10

5.7, 5.6, 5.5, 5.1

See Note 1

9.4, 9.3, 9.2, 9.1. 8.4, 8.3, 8.1

See Note 3

12c, 11gR2

Sqoop 1

5.5, 10

See Note 4

See Note 4

See Note 4

Sqoop 2

5.5, 10

See Note 9

Default

3、CDH对jdk版本的要求:

根据以下描述,建议使用jdk-7-64版本及以上版本,并且使用下载对应版本的CM软件中自带的rpm格式的jdk,这样肯定没问题,如果使用自己找的版本的jdk,有可能再以后安装过程中出现问题。

CDH大数据——cloudera-manager搭建安装集群CDH_第1张图片

4、CDH对浏览器的要求:

CDH大数据——cloudera-manager搭建安装集群CDH_第2张图片

5、CDH对网络配置的要求:

CDH大数据——cloudera-manager搭建安装集群CDH_第3张图片

6、CDH对安全传输协议(TLS)的要求:

Component

Role

Name

Port

Version

Cloudera Manager

Cloudera Manager Server

 

7182

TLS 1.2

Cloudera Manager

Cloudera Manager Server

 

7183

TLS 1.2

Flume

 

 

9099

TLS 1.2

Flume

 

Avro Source/Sink

 

TLS 1.2

Flume

 

Flume HTTP Source/Sink

 

TLS 1.2

HBase

Master

HBase Master Web UI Port

60010

TLS 1.2

HDFS

NameNode

Secure NameNode Web UI Port

50470

TLS 1.2

HDFS

Secondary NameNode

Secure Secondary NameNode Web UI Port

50495

TLS 1.2

HDFS

HttpFS

REST Port

14000

TLS 1.1, TLS 1.2

Hive

HiveServer2

HiveServer2 Port

10000

TLS 1.2

Hue

Hue Server

Hue HTTP Port

8888

TLS 1.2

Impala

Impala Daemon

Impala Daemon Beeswax Port

21000

TLS 1.2

Impala

Impala Daemon

Impala Daemon HiveServer2 Port

21050

TLS 1.2

Impala

Impala Daemon

Impala Daemon Backend Port

22000

TLS 1.2

Impala

Impala StateStore

StateStore Service Port

24000

TLS 1.2

Impala

Impala Daemon

Impala Daemon HTTP Server Port

25000

TLS 1.2

Impala

Impala StateStore

StateStore HTTP Server Port

25010

TLS 1.2

Impala

Impala Catalog Server

Catalog Server HTTP Server Port

25020

TLS 1.2

Impala

Impala Catalog Server

Catalog Server Service Port

26000

TLS 1.2

Oozie

Oozie Server

Oozie HTTPS Port

11443

TLS 1.1, TLS 1.2

Solr

Solr Server

Solr HTTP Port

8983

TLS 1.1, TLS 1.2

Solr

Solr Server

Solr HTTPS Port

8985

TLS 1.1, TLS 1.2

Spark

History Server

 

18080

TLS 1.2

YARN

ResourceManager

ResourceManager Web Application HTTP Port

8090

TLS 1.2

YARN

JobHistory Server

MRv1 JobHistory Web Application HTTP Port

19890

TLS 1.2

7、CDH相关软件下载:

(1)Cloudera Manager(CM)下载地址:

http://archive.cloudera.com/cm5/cm/5/

官网地址:

https://docs.cloudera.com/documentation/enterprise/6/release-notes/topics/rg_cm_6_version_download.html

(2)CDH安装包下载地址:

http://archive.cloudera.com/cdh5/parcels/latest/

官网地址:

https://docs.cloudera.com/documentation/enterprise/6/release-notes/topics/rg_cdh_6_version_packaging_download.html

(3)本次采用的CM和CDH版本如下:

CM:6.2.0

CDH:6.2.0

二、CDH基本优势:

1、CDH比apache在兼容性、安全性、稳定性上有增强;

2、CDH比apache更新速度快;

3、CDH支持kerberos安全认证;

4、CDH文档清晰;

5、CDH支持yum/apt包;

6、CDH可以联网安装、升级比较方便(网上建议下载安装,联网安装有坑);

7、CDH自动下载依赖软件包;

8、CDH自动匹配hadoop生态系统中的包,不需要自己寻找hbase、hive等软件包,也不用考虑兼容性问题,CDH自动匹配相应版本;

9、CDH自动创建相关的目录,并自动创建hdfs、mapred用户;

三、CDH集群安装一般步骤:

1、集群规划:

IP地址 磁盘空间 域名 角色和应用

IP地址

磁盘空间

域名

角色和应用

192.168.1.141

80G

CDH141

cm-server |agent | jdk | mysql

192.168.1.142

40G

CDH142

agent | jdk

192.168.1.143

40G

CDH143

agent | jdk

2、集群内各节点root密码修改:

集群内各节点服务器中的root的明文或密文的密码要保持一致,在CM的web系统中需要配置以便安装各个服务。建议将集群内各节点的root用户密码修改为统一的一个复杂明文密码。

3、集群内各节点关闭防火墙:

集群内各节点服务器中要关闭防火墙,并且防火墙开机自启。

关闭防火墙:service iptables stop;

关闭防火墙开机自启:chkconfig iptables off;

4、集群内各节点关闭selinux:

集群内各节点服务器中要关闭selinux:

修改配置文件/etc/selinux/config,将SELINUX=enforcing 改为SELINUX=disabled,然后重新启动服务器生效。

CDH大数据——cloudera-manager搭建安装集群CDH_第4张图片

5、集群内各节点设置主机名:

编辑/etc/sysconfig/network配置文件,修改hostname,然后重新启动服务器生效。

6、集群内各节点配置host文件:

编辑/etc/hosts配置文件,配置IP与域名映射关系,配置完之后,可以在同一台机器上ping不同的域名,正常是可以ping通的。

7、集群内各节点更新yum源:

(1)备份原镜像:

进入到/etc/yum.repos.d文件夹中,移动文件:CentOS-Base.repo ,名称修改为:CentOS-Base.repo.backup

mv CentOS-Base.repo CentOS-Base.repo.backup

(2)下载新镜像:

进入到/etc/yum.repos.d文件夹中,下载新镜像:

wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

(3)清空yum缓存:

yum clean all

(4)生成缓存:

yum makecache

8、集群内各节点安装SSH免密登录:

(1)在CDH141上:

生成公钥和私钥:

ssh-keygen -t rsa

然后一直回车到出现图形就完成了。

复制公钥到authorized_keys中:

进入到用户目录下的.ssh文件夹:cd ~/.ssh

cat id_rsa.pub >> authorized_keys

复制CDH141中authorized_keys到CDH142上:

scp ~/.ssh/authorized_keys CDH142:~/.ssh/

(2)在CDH142上:

生成公钥和私钥:

ssh-keygen -t rsa

然后一直回车到出现图形就完成了。

复制公钥到authorized_keys中:

进入到用户目录下的.ssh文件夹:cd ~/.ssh

cat id_rsa.pub >> authorized_keys

复制CDH142中authorized_keys到CDH143上:

scp ~/.ssh/authorized_keys CDH143:~/.ssh/

(3)在CDH143上:

生成公钥和私钥:

ssh-keygen -t rsa

然后一直回车到出现图形就完成了。

复制公钥到authorized_keys中:

进入到用户目录下的.ssh文件夹:cd ~/.ssh

cat id_rsa.pub >> authorized_keys

删除CDH141、CDH142上authorized_keys文件:

rm -f ~/.ssh/authorized_keys

复制CDH143中authorized_keys到CDH141、CDH142上:

scp ~/.ssh/authorized_keys CDH141:~/.ssh/

scp ~/.ssh/authorized_keys CDH142:~/.ssh/

因为CDH143上authorized_keys中保存了3台服务器中的所有公钥,这样把该文件复制到其它服务器中,就实现了每台服务器中的authorized_keys文件内都有其它所有服务器的公钥了。

最后在每台服务器中都通过:ssh 域名,登录到集群其它服务器中,第一次登录需要手动输入一下密码,以后就不用了。在通过ssh登录完集群内其它服务器后,在每台服务器的~/.ssh/known_hosts中会显示记忆好的服务器,正常情况下会显示集群内其它服务器所有节点信息,如果没有哪台服务器就表示该服务器一次没有通过ssh登录到那台服务器,就需要手动ssh登录到该服务器上即可。

核心理念就是:在每台服务器中~/.ssh文件夹中有自己的私钥(id_rsa)、公钥(id_rsa.pub),认证key(authorized_keys)中保存了要免登录的其它服务器的公钥,已只hosts(known_hosts)中保存了已经免登录的主机信息。主要是在每台服务器上生成公钥、私钥。然后将所有服务器的公钥信息放在authorized_keys中,最后通过第一次ssh登录到其它服务器信息,让known_hosts记录下该服务器信息即可。

9、集群内各节点同步时间节点:

思路:集群中的linux各个节点,其中一台作为ntpd服务器,与外界时间进行同步,集群中其它节点与该节点上的时间进行同步;

(1)关闭集群内防火墙:

关闭防火墙:service iptables stop

开机自动关闭防火墙:chkconfig iptables off 

(2)集群内各节点下载ntp软件:

yum install ntp

(3)ntpd服务端配置ntp的信息:

下面主要是配置内网的NPTD服务器(192.168.1.135), NTPD服务配置核心/etc/ntp.conf文件,配置好了就OK。需要修改的地方都备注了,一共4处,其他的是默认。

# For more information about this file, see the man pages

# ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5).



driftfile /var/lib/ntp/drift



# Permit time synchronization with our time source, but do not

# permit the source to query or modify the service on this system.

restrict default kod nomodify notrap nopeer noquery

restrict -6 default kod nomodify notrap nopeer noquery



# Permit all access over the loopback interface.  This could

# be tightened as well, but to do so would effect some of

# the administrative functions.

restrict 127.0.0.1

restrict -6 ::1



# Hosts on local network are less restricted.

# 01修改开始---->允许内网其他机器同步时间

restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
# 01修改结束---->允许内网其他机器同步时间



# Use public servers from the pool.ntp.org project.

# Please consider joining the pool (http://www.pool.ntp.org/join.html).

# 02修改开始----->中国这边最活跃的时间服务器 : http://www.pool.ntp.org/zone/cn

server 210.72.145.44 perfer   # 中国国家受时中心

server 202.112.10.36             # 1.cn.pool.ntp.org

server 59.124.196.83             # 0.asia.pool.ntp.org
# 02修改结束----->中国这边最活跃的时间服务器 : http://www.pool.ntp.org/zone/cn



#broadcast 192.168.1.255 autokey        # broadcast server

#broadcastclient                        # broadcast client

#broadcast 224.0.1.1 autokey            # multicast server

#multicastclient 224.0.1.1              # multicast client

#manycastserver 239.255.254.254         # manycast server

#manycastclient 239.255.254.254 autokey # manycast client



# allow update time by the upper server 

# 03修改开始---->允许上层时间服务器主动修改本机时间

restrict 210.72.145.44 nomodify notrap noquery

restrict 202.112.10.36 nomodify notrap noquery

restrict 59.124.196.83 nomodify notrap noquery
# 03修改结束---->允许上层时间服务器主动修改本机时间



# Undisciplined Local Clock. This is a fake driver intended for backup

# and when no outside source of synchronized time is available. 

# 04修改开始----->外部时间服务器不可用时,以本地时间作为时间服务

server  127.127.1.0     # local clock

fudge   127.127.1.0 stratum 10
# 04修改结束----->外部时间服务器不可用时,以本地时间作为时间服务



# Enable public key cryptography.

#crypto



includefile /etc/ntp/crypto/pw



# Key file containing the keys and key identifiers used when operating

# with symmetric key cryptography. 

keys /etc/ntp/keys



# Specify the key identifiers which are trusted.

#trustedkey 4 8 42



# Specify the key identifier to use with the ntpdc utility.

#requestkey 8



# Specify the key identifier to use with the ntpq utility.

#controlkey 8



# Enable writing of statistics records.

#statistics clockstats cryptostats loopstats peerstats

(4)服务端通过ntpdate手动同步一次时间:

ntpdate -u 202.112.10.36

(5)服务端设置ntpd开机自启:

 chkconfig ntpd on

(6)服务端通过ntpd自动同步时间:

service ntpd start

(7)其它节点(nptd客户端)配置ntp信息:

在nptd客户端上配置/etc/ntp.conf文件,信息如下,需要修改的地方有3处,备注了,其它默认:

driftfile /var/lib/ntp/drift

restrict 127.0.0.1

restrict -6 ::1



# 01修改开始----->配置时间服务器为本地的时间服务器

server 192.168.1.135
# 01修改结束----->配置时间服务器为本地的时间服务器


# 02修改开始----->
restrict 192.168.1.135 nomodify notrap noquery
# 02修改结束----->


# 03修改开始------>
server  127.127.1.0     # local clock

fudge   127.127.1.0 stratum 10
# 03修改结束------->



includefile /etc/ntp/crypto/pw



keys /etc/ntp/keys

手动执行nptdate命令,第一次与ntpd服务端手动同步时间:

 ntpdate -u 192.168.0.135

如果执行后提示:no server suitable for synchronization found

那么就执行以下命令,然后重新执行上面同步时间命令:

ntpdate -d 192.168.0.135

客户端启动ntpd服务;

设置ntpd服务为开机自启;

将一个客户端中的/etc/ntp.conf文件复制到集群其它节点的客户端上,分别手动同步时间,启动ntpd服务即可;

10、集群内各节点安装JDK:

本项目使用的是jdk-8u151-linux-x64.gz版本;

(1)下载软件包:

注意使用的jdk要用CM对应版本中自带的jdk的rpm文件。

(2)上传软件包:

将下载好的jdk软件的rpm文件上传到服务器对应文件夹中。

(3)安装jdk软件:

进入到存放jdk的rpm文件夹中,执行命令安装:

rpm -ivh jdk的rpm文件

(4)配置环境变量:

通过jdk的rpm安装的jdk默认安装在了/usr/java文件夹中,进入找到具体的安装jdk文件夹路径。

编辑/etc/profile文件添加如下信息:

export JAVA_HOME=JDK解压后文件路径

export PATH=$PATH:$JAVA_HOME/bin

配置生效:source /etc/profile

(5)查看jdk版本:

java -version

11、集群内某节点安装mysql:

本项目使用的mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz版本,下载软件包并上传到服务器对应文件夹中;

本次在CDH141一个服务器上安装mysql数据库。

(1)创建mysql用户和组:

groupadd mysql

useradd -g mysql mysql

(2)创建mysql安装目录:

mkdir /usr/local/mysql # mysql安装目录

mkdir -p /extdata/mysql/data # mysql数据目录

mkdir -p /extdata/mysql/logs # mysql日志目录

mkdir -p /extdata/tmp # mysql临时目录

说明:由于需要扩容,到时候把扩容的硬盘挂载到extdata;

(3)授权mysql安装目录:

chown -R mysql.mysql /extdata

chown -R mysql.mysql /usr/local/mysql

(4)解压mysql软件包;

将上传的mysql软件包进行解压。

(5)移动mysql文件:

将解压后的文件夹中的所有文件移动到/usr/local/mysql中去;

(6)创建mysql配置文件:

cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf #需要修改配置文件my.cnf

(7)配置mysql信息:

编辑/etc/my.cnf文件,配置以下信息:

[client]

port=3306

socket=/usr/local/mysql/mysql.sock

default-character-set=utf8



[mysqld]

max_connections=2000

skip-name-resolve

datadir=/extdata/mysql/data

socket=/usr/local/mysql/mysql.sock

default_password_lifetime=0

innodb_flush_log_at_trx_commit=0

max_allowed_packet=100M

user=mysql

tmpdir=/extdata/tmp

symbolic-links=0

character-set-server=utf8

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

# 因为配置hive连接数据库问题,暂时停掉GTID模式

gtid_mode = off

enforce_gtid_consistency = off



[mysql]

no-auto-rehash

default-character-set=utf8



[mysqld_safe]

default-character-set = utf8

#日志存放路径

log-error=/wocloud/mysql/logs/mysqld.log

pid-file=/wocloud/mysql/mysqld.pid



[mysql.server]

default-character-set = utf8

(8)注册Mysql服务:

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

(9)设置mysql命令环境变量:

 编辑文件/etc/profile,增加如下信息:

  export PATH=/usr/local/mysql/bin:$PATH

 环境变量生效:source /etc/profile

(10)设置开机启动mysql:

chkconfig mysql on

(11)初始化数据库:

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/extdata/mysql/data

一定要记录最有一行给出的初始密码,记录初始化的密码(如  tagiaMfxN2:K )

(12)修改初始化密码:

使用初始化密码登录mysql数据库;

set password=password('1QAZ2wsx');  -- 重设密码

grant all privileges on *.* to root@'%' identified by '1QAZ2wsx';-- mysql授权

UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE USER='root';-- root用户grant授权

flush privileges; -- 更新权限

(13)启动和停止mysql服务:

 启动mysql服务:service mysql start

 停止mysql服务:service mysql stop

(14)防火墙开放mysql数据库端口:

编辑文件/etc/sysconfig/iptables,复制原有一行,修改开放的端口号:

CDH大数据——cloudera-manager搭建安装集群CDH_第5张图片

本地服务器防火墙都关闭了,因此不需要防火墙开放mysql数据库的端口号。

12、集群各节点下载依赖:

集群内各节点服务器上下载如下依赖,如果不下载这些依赖,使用cdh安装的时候会报各种各样的错误。

yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb

13、安装CM(离线):

(1)下载CM离线软件安装包:

A、找到离线软件下载页面:

访问官网:https://www.cloudera.com/

CDH大数据——cloudera-manager搭建安装集群CDH_第6张图片

CDH大数据——cloudera-manager搭建安装集群CDH_第7张图片

CDH大数据——cloudera-manager搭建安装集群CDH_第8张图片

CDH大数据——cloudera-manager搭建安装集群CDH_第9张图片

CDH大数据——cloudera-manager搭建安装集群CDH_第10张图片

CDH大数据——cloudera-manager搭建安装集群CDH_第11张图片

B、下载离线软件包:

点击上个步骤中找到的离线软件下载页面,然后进入到RPMS/x86_64/中,下载其中除了jdk以外的所有rpm文件:

CDH大数据——cloudera-manager搭建安装集群CDH_第12张图片

还需要在离线软件下载页面下载rpm的url地址后面的几个路径去掉,即:redhat6/yum/RPMS/x86_64,从而进入到该版本软件的根目录下载allkeys.asc文件:

CDH大数据——cloudera-manager搭建安装集群CDH_第13张图片

(2)上传CM离线软件安装包:

在CM的主节点上,将下载好的CM相关的rpm文件上传到服务器中对应文件夹中。

(3)安装httpd和createrepo:

在集群各节点上操作:

yum -y install httpd createrepo

启动httpd服务:service httpd start;

开机自启httpd服务:chkconfig httpd on;

(4)生成createrepo:

在CM的主节点上操作:

进入到上传CM的rpm文件的文件夹中,生成RPM元数据:

执行命令:createrepo .(不要忘记有个空格和点)

CDH大数据——cloudera-manager搭建安装集群CDH_第14张图片

(5)移动CM文件夹:

在CM的主节点上操作:

将存放CM的rpm文件加的目录移动到httpd的html目录下:

mv cm_rpm /var/www/html/

确保可以通过浏览器查看到这些RPM包:

CDH大数据——cloudera-manager搭建安装集群CDH_第15张图片

(6)创建CM的repo:

在集群内各节点上操作:

进入到/etc/yum.repos.d,创建cm6的cloudera-manager.repo文件,文件内容如下:(说明IP为CM主节点就是上传CM的rpm文件的服务器IP地址)

[cloudera-manager]

name=Cloudera Manager 6.0.1

baseurl=http://192.168.66.61/cloudera-repos/

gpgcheck=0

enabled=1

然后执行:yum clean all,清yum缓存;

然后执行:yum makecache,生成缓存;

(7)安装CM软件:

默认自动安装到了/opt/cloudera文件夹中,因此如果/磁盘空间如果不够的话,可以在集群内各个服务器节点上都加一个硬盘挂在到/opt文件夹中。

在CM主节点上操作:

 执行命令:

yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server

(8)下载CDH的Parcel文件:

按照找CM离线软件包下载页面的步骤找到CDH离线软件包下载页面:

CDH大数据——cloudera-manager搭建安装集群CDH_第16张图片

CDH大数据——cloudera-manager搭建安装集群CDH_第17张图片

(9)上传CDH的Parcel文件:

将下载的CDH Parcel文件上传到CM主节点的/opt/cloudera/parcel-repo文件夹中。

修改.sha1格式的文件为.sha,因为.sha1为哈希文件,如果不重命名为.sha后面从本地读取CDH软件包会失败,因为找不到.sha哈希文件。

(10)修改文件所有者:

在CM主节点上操作:

修改/opt/cloudera/parcel-repo文件夹所有者:

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

(11)配置mysql的jdbc驱动:

在CM集群所有节点上操作:

将mysql-connector-java-5.1.47-bin.jar(推荐使用5.1的较高版本的驱动jar包)文件上传至CM Server节点上的/usr/share/java/目录下并重命名为mysql-connector-java.jar(如果/usr/share/java/目录不存在,需要手动创建)。

(12)创建数据库和用户:

根据所需要安装的服务参照下表创建对应的数据库以及数据库用户,数据库必须使用utf8编码,创建数据库时要记录好用户名及对应密码:

服务名

数据库名

用户名

Cloudera Manager Server

scm

scm

Activity Monitor

amon

amon

Reports Manager

rman

rman

Hue

hue

hue

Hive Metastore Server

metastore

hive

Sentry Server

sentry

sentry

Cloudera Navigator Audit Server

nav

nav

Cloudera Navigator Metadata Server

navms

navms

先创建4个数据库及对应用户:scm、amon、rman、metastore;

在mysql数据库中创建CDH需要的各种数据库:

CREATE DATABASE scm DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

CREATE DATABASE amon DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

CREATE DATABASE rman DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

在mysql中创建CDH连接不同数据库对应的用户:

create user 'scm'@'%' identified by '123456';

create user 'amon'@'%' identified by '123456';

create user 'rman'@'%' identified by '123456';

create user 'hive'@'%' identified by '123456';

在mysql中授权CDH不同连接数据库用户对应的数据库:

GRANT ALL ON scm.*  TO  'scm'@'%';

GRANT ALL ON amon.*  TO  'amon'@'%';

GRANT ALL ON rman.* TO  'rman'@'%';

GRANT ALL ON metastore.* TO  'hive'@'%';

(13)设置CM数据库:

CM主节点上包含一个配置数据库的脚本。

mysql数据库与CM Server是同一台主机时命令为

/opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm

不同台时命令为:

/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h192.168.31.249 --scm-host 192.168.31.245 scm scm

说明:mysql-h为mysql所在服务器的IP;--scrm-host为CM主节点所在的服务器IP;第一个scm为数据库;第二个scm为用户名。

(14)操作CM Server服务:

在CM主节点上进行操作:

A、启动服务:

执行命令:service cloudera-scm-server start;

然后等待Cloudera Manager Server启动,需要稍等一会儿,可以通过查看/var/log/cloudera-scm-server/cloudera-scm-server.log去监控服务启动状态。当看到INFO WebServerImpl:com.cloudera.server.cmf.WebServerImpl: Started Jetty server.日志打印出来后,说明服务启动成功,可以通过浏览器访问Cloudera Manager WEB界面了。

CDH大数据——cloudera-manager搭建安装集群CDH_第18张图片

B、关闭服务:

执行命令:service cloudera-scm-server stop;

(15)访问CM的web系统:

在浏览器中访问地址:http://CM主节点IP:7180,默认账号和密码都为admin:

CDH大数据——cloudera-manager搭建安装集群CDH_第19张图片

(16)修改CM系统端口号:

操作见网址:https://www.freesion.com/article/2773236140/

个人建议修改下,只是修改http端口号,即修改后端口号:

CDH大数据——cloudera-manager搭建安装集群CDH_第20张图片

修改端口号完毕后,需要重新启动CM server才会生效的。

14、管理CM系统用户:

通过CM的web管理界面:设置--->Users & Roles进行用户、角色的管理。

CDH大数据——cloudera-manager搭建安装集群CDH_第21张图片

15、操作CM安装CDH集群:

操作见网址:

https://www.cnblogs.com/yinzhengjie/p/10887356.html

需要注意的是在下图中,配置的本地存储库就是上述生成createrepo后移动的CM文件夹,在浏览器中可以访问到的CM的相关rpm文件的地址。并且CDH软件版本就配置自己上传到的CDH的Pacel文件的版本,这样就不用重新从官网下载了,因为自己之前已经下载好上传了,这样安装方便。

CDH大数据——cloudera-manager搭建安装集群CDH_第22张图片

16、启动关闭CDH集群:

(1)启动CDH集群:

A、启动CDH服务端:

在CM主节点上操作:

执行命令:service cloudera-scm-server start;

B、启动CDH客户端:

在CM的agent节点上操作:

执行命令:service cloudera-scm-agent start;

(2)关闭CDH集群:

A、关闭CDH客户端:

在CM的agent节点上操作:

执行命令:service cloudera-scm-agent stop;

B、关闭CDH服务端:

在CM的主节点上操作:

执行命令:service cloudera-scm-server stop;

你可能感兴趣的:(CDH大数据)