本案例基于centos6.5安装CDH5.8.2分布式集群环境,都是在root用户下进行操作。
到官网下载相应的安装包与校验文件
集群环境:192.168.168.124 master;192.168.168.125 slaver1;192.168.168.126 slaver2
一、准备工作
1、卸载原jdk并安装jdk1.7.0_45,然后配置环境变量
2、关闭防火墙和关闭selinux
3、修改主机名称及ip映射文件
4、ssh无密登录
5、在主节点安装mysql数据库(可以在其他节点或机器安装)并把jdbc驱动放在/usr/share/java下
6、ntp服务时间同步
ntp时间同步,注意步骤
6.1、所有机器同步一下外网时间,避免时差多大造成ntp同步缓慢或不成功
# ntpdate -u 202.112.10.36
6.2、master(主机)修改配置 # vi /etc/ntp.conf
6.3、其他从节点修改配置 # vi /etc/ntp.conf
6.4、所有节点重启ntp服务,然后从节点与主节点master时间同步
# service ntpd restart
# chkconfig ntpd on # 开机启动
# ntpdate -u master
安装好mysql后,为hadoop各组件创建数据库
-- 创建hive数据元数据库
create database metastore DEFAULT CHARACTER SET latin1;
-- 创建scm数据库
create database scm DEFAULT CHARACTER SET utf8;(在下面初始化,此处可不创建!)
-- 创建amon数据库
create database amon DEFAULT CHARACTER SET utf8;
-- 创建rmon数据库
create database rmon DEFAULT CHARACTER SET utf8;
-- 创建sentry数据库
create database sentry DEFAULT CHARACTER SET utf8;
-- 创建hue数据库
create database hue CHARACTER SET utf8;
-- 创建oozie数据库
create database oozie CHARACTER SET utf8;
最后统一赋予权限root-帐号 root123-密码master 主机名
grant all on *.* TO 'root'@'master' IDENTIFIED BY 'root123';
二、ClouderaManager 5安装
在master机器上执行
安装包上传在root目录下,解压到/opt目录
# tar -zxvf cloudera-manager-el6-cm5.8.3_x86_64.tar.gz -C /opt
修改CM5的配置文件
# vi /opt/cm-5.8.3/etc/cloudera-scm-agent/config.ini
将/usr/share/java下的驱动复制到/opt/cm-5.8.3/share/cmf/lib目录下(如果没有mysql jdbc驱动注意加上)
# cp /usr/share/java/* /opt/cm-5.8.3/share/cmf/lib
将cm-5.8.3分发到各从节点的/opt目录
# scp -r /opt/cm-5.8.3 root@slaver1:/opt
每个节点都创建scm用户:
# sudo useradd --system --home=/opt/cloudera-manager/cm-5.8.3/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
在master上为Cloudera Manager 5建立数据库:
# /opt/cm-5.8.3/share/cmf/schema/scm_prepare_database.sh mysql scm -hlocalhost -uroot -proot123 --scm-host localhost scm scm scm
三、CDH5.8.2安装
上传安装包文件到主节点/opt/cloudera/parcel-repo目录
CDH-5.8.2-1.cdh5.8.2.p0.3-el7.parcel
CDH-5.8.2-1.cdh5.8.2.p0.3-el7.parcel.sha
manifest.json
启动服务
# cd /opt/cm-5.8.3/etc/init.d
# ./cloudera-scm-server start # 主节点
# ./cloudera-scm-agent start # 所有节点!
打开网页,同意协议,选择免费版本
不要选择太高版本
安装所有服务(个人根据需要)
开始漫长的等待
如果用到hive和hue,依赖mysql,注意添加驱动包!
# cp /opt/cm-5.8.3/share/cmf/lib/mysql-connector-java.jar /opt/cloudera/parcels/CDH-5.8.2-1.cdh5.8.2.p0.3/lib/oozie/lib/
# cp /opt/cm-5.8.3/share/cmf/lib/mysql-connector-java.jar /opt/cloudera/parcels/CDH-5.8.2-1.cdh5.8.2.p0.3/lib/hive/lib/
# cp /opt/cm-5.8.3/share/cmf/lib/mysql-connector-java.jar /var/lib/oozie/
# cp /opt/cm-5.8.3/share/cmf/lib/mysql-connector-java.jar /var/lib/hive/
===================新增节点分割线=================
最后,在简单说一下CDH新增节点的操作流程:
1、修改主机名称
2、安装jdk并配置环境变量
3、关闭防火墙
4、ntp时间与主机同步
5、ssh无密登录,即主机无密登录到新的节点
6、把其中一节点的cm文件夹打包并发送到新的节点,
把对应的[/opt/cm-5.8.3/lib/cloudera-scm-agent]下的文件全部删除;同时删除[/opt/cm-5.8.3/log/cloudera-scm-agent]目录下的所有内容。
7、创建scm用户
# sudo useradd --system --home=/opt/cloudera-manager/cm-5.8.3/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
(#userdel -r cloudera-scm #变更后先删除用户再创建)
启动:# cd /opt/cm-5.8.3/etc/init.d # ./cloudera-scm-agent start
8、启动后在主页主机——所有主机当中会显示新的机器(如果没有,点击向集群加入新机器)
至此,新节点加入集群完成。