Cloudera-manager搭建安装集群CDH6.2.0

一、基础软件版本信息:

1、CDH对CentOS的版本要求:

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

Operating SystemVersion
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 Kernel7.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
UbuntuTrusty 14.04 - Long-Term Support (LTS)Precise 12.04 - Long-Term Support (LTS)
DebianJessie 8.4, 8.2Wheezy 7.8, 7.1, 7.0

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

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

ComponentMariaDBMySQLSQLitePostgreSQLOracleDerby - see Note 5
Cloudera Manager5.5, 105.7, 5.6, 5.5, 5.19.4, 9.3, 9.2, 9.1. 8.4, 8.3, 8.112c, 11gR2See Note 11
Oozie5.5, 105.7, 5.6, 5.5, 5.19.4, 9.3, 9.2, 9.1. 8.4, 8.3, 8.1See Note 312c, 11gR2Default
FlumeDefault (for the JDBC Channel only)
Hue5.5, 105.7, 5.6, 5.5, 5.1See Note 6Default9.4, 9.3, 9.2, 9.1. 8.4, 8.3, 8.1See Note 312c, 11gR2
Hive/Impala5.5, 105.7, 5.6, 5.5, 5.1See Note 19.4, 9.3, 9.2, 9.1. 8.4, 8.3, 8.1See Note 312c, 11gR2Default
Sentry5.5, 105.7, 5.6, 5.5, 5.1See Note 19.4, 9.3, 9.2, 9.1. 8.4, 8.3, 8.1See Note 312c, 11gR2
Sqoop 15.5, 10See Note 4See Note 4See Note 4
Sqoop 25.5, 10See Note 9Default

3、CDH对jdk版本的要求:

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

img

4、CDH对浏览器的要求:

img

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

img

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

ComponentRoleNamePortVersion
Cloudera ManagerCloudera Manager Server7182TLS 1.2
Cloudera ManagerCloudera Manager Server7183TLS 1.2
Flume9099TLS 1.2
FlumeAvro Source/SinkTLS 1.2
FlumeFlume HTTP Source/SinkTLS 1.2
HBaseMasterHBase Master Web UI Port60010TLS 1.2
HDFSNameNodeSecure NameNode Web UI Port50470TLS 1.2
HDFSSecondary NameNodeSecure Secondary NameNode Web UI Port50495TLS 1.2
HDFSHttpFSREST Port14000TLS 1.1, TLS 1.2
HiveHiveServer2HiveServer2 Port10000TLS 1.2
HueHue ServerHue HTTP Port8888TLS 1.2
ImpalaImpala DaemonImpala Daemon Beeswax Port21000TLS 1.2
ImpalaImpala DaemonImpala Daemon HiveServer2 Port21050TLS 1.2
ImpalaImpala DaemonImpala Daemon Backend Port22000TLS 1.2
ImpalaImpala StateStoreStateStore Service Port24000TLS 1.2
ImpalaImpala DaemonImpala Daemon HTTP Server Port25000TLS 1.2
ImpalaImpala StateStoreStateStore HTTP Server Port25010TLS 1.2
ImpalaImpala Catalog ServerCatalog Server HTTP Server Port25020TLS 1.2
ImpalaImpala Catalog ServerCatalog Server Service Port26000TLS 1.2
OozieOozie ServerOozie HTTPS Port11443TLS 1.1, TLS 1.2
SolrSolr ServerSolr HTTP Port8983TLS 1.1, TLS 1.2
SolrSolr ServerSolr HTTPS Port8985TLS 1.1, TLS 1.2
SparkHistory Server18080TLS 1.2
YARNResourceManagerResourceManager Web Application HTTP Port8090TLS 1.2
YARNJobHistory ServerMRv1 JobHistory Web Application HTTP Port19890TLS 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.14180GCDH141cm-server |agent | jdk | mysql
192.168.1.14240GCDH142agent | jdk
192.168.1.14340GCDH143agent | jdk

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

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

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

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

关闭防火墙:service iptables stop;

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

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

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

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

img

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

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

img

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

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

img

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= P A T H : 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,复制原有一行,修改开放的端口号:

img

本地服务器防火墙都关闭了,因此不需要防火墙开放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/

img

img

img

img

img

img

img

img

B、下载离线软件包:

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

img

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

img

(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 .(不要忘记有个空格和点)

img

(5)移动CM文件夹:

在CM的主节点上操作:

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

mv cm_rpm /var/www/html/

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

img

(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离线软件包下载页面:

img

img

(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 Serverscmscm
Activity Monitoramonamon
Reports Managerrmanrman
Huehuehue
Hive Metastore Servermetastorehive
Sentry Serversentrysentry
Cloudera Navigator Audit Servernavnav
Cloudera Navigator Metadata Servernavmsnavms

先创建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界面了。

img

B、关闭服务:

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

(15)访问CM的web系统:

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

img

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

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

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

img

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

14、管理CM系统用户:

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

img

15、操作CM安装CDH集群:

操作见网址:

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

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

img

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;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值