(一)实验环境
l 实验介质
n CentOS-7-x86_64-Everything-1708.iso
n jdk-8u161-linux-x64.rpm
n cloudera-manager-centos7-cm5.12.1_x86_64.tar.gz
n CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel
n CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha1
n manifest.json

l 准备三台CentOS虚拟机,三个节点:一个Cloudera Manager节点、两个Agent节点

安装如下:

n CDH71:Server GUI、Development Tools、MariaDB

n CDH72、CDH73:Server GUI、Development Tools

(二)安装配置CentOS(每台机器)

注意把下面的两个选项选上

l Server With GUI

l Development Tools

l MariaDB Server(就是MySQL数据库):注意只在cdh71上安装

cdh搭建 容器 cdh测试环境搭建_java


l 关闭防火墙

systemctl stop firewalld.service

systemctl disable firewalld.service

l 配置主机名:编辑/etc/hosts文件
l 配置免密码登录
l 配置ntp服务
Ø 创建目录:mkdir /root/cdroom/
Ø 挂载光盘:mount /dev/cdrom /root/cdroom/
Ø 删除原来的所有repo文件
Ø 创建yum的源文件: vi /etc/yum.repos.d/my.repo
[centos-yum]
baseurl=file:///root/cdroom
enabled=1
gpgcheck=0
Ø 开启NTP服务
yum install ntp
systemctl is-enabled ntpd
systemctl enable ntpd
systemctl start ntpd
l yum -y install psmisc ---> 安装pstree命令

(三)安装JDK(每台机器)
一定注意,这一步跟之前不一样!!!
l 卸载系统原有的Java环境
第一步:使用下面的命令查看当前所有的Java环境的安装包
rpm -qa | grep java
第二步:使用下面的命令删除所有的Java安装包
rpm -e --nodeps 包名

l 安装新的JDK环境
Ø 将jdk-8u161-linux-x64.rpm上传到/opt目录
Ø 安装JDK:rpm -ivh jdk-8u161-linux-x64.rpm
Ø 执行下面的命令,设置环境变量:
echo "JAVA_HOME=/usr/java/latest/" >> /etc/environment

l 验证JDK环境

cdh搭建 容器 cdh测试环境搭建_cloudera_02


(四)配置MariaDB(在cdh71上)

l 启动MariaDB

systemctl start mariadb

systemctl enable mariadb (开机自启动)

l 配置MariaDB
mysql_secure_installation
#首先是设置密码,会提示先输入密码
Enter current password for root (enter for none):<–初次运行直接回车
#设置密码
Set root password? [Y/n] <–是否设置root用户密码,输入y并回车或直接回车
New password: <– 设置root用户的密码
Re-enter new password: <– 再输入一次你设置的密码
#其他配置
Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车
Disallow root login remotely? [Y/n] <–是否禁止root远程登录,回车,
Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车
Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车

l 初始化MariaDB
登录数据库:mysql -uroot -pWelcome_1
create database hive;
create database amon; ---> 这个是CDH的activity monitor
create database oozie;
create database hue;

l 安装数据库驱动
yum install mysql-connector-java
(五)安装配置Clouder Manager(在cdh71上)
l 将cloudera-manager-centos7-cm5.12.1_x86_64.tar.gz上传至/opt目录,并解压
tar -zxvf cloudera-manager-centos7-cm5.12.1_x86_64.tar.gz

l 将mysql的驱动放到/opt/cm-5.12.1/share/cmf/lib/中
cp /usr/share/java/mysql-connector-java.jar /opt/cm-5.12.1/share/cmf/lib/

l 初始化Cloudera Manager的数据库元信息
/opt/cm-5.12.1/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot -pWelcome_1 --scm-host localhost scm scm scm

l 创建cloudera-scm用户
useradd --system --home=/opt/cm-5.12.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

l 将以下文件上传至/opt/cloudera/parcel-repo/目录
CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel
CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha1
manifest.json

l 重命名文件CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha1
改名为:CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha (注意:少了一个1)

l 修改/opt/cm-5.12.1/etc/cloudera-scm-agent/config.ini中的server_host为主节点的主机名。

(六)配置Cloudera Agent(cdh72和cdh73)
l 从主节点cdh71上将Cloudera Manager Agent复制到agent节点(cdh72和cdh73)上
scp -r /opt/cm-5.12.1 root@cdh72:/opt/
scp -r /opt/cm-5.12.1 root@cdh73:/opt/

l 在agent节点(cdh72和cdh73)上创建cloudera-scm用户
useradd --system --home=/opt/cm-5.12.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
(七)部署CDH5
l 在cdh71启动服务Cloudera Manager Server
/opt/cm-5.12.1/etc/init.d/cloudera-scm-server start

l 在cdh72和cdh73上启动的agent
/opt/cm-5.12.1/etc/init.d/cloudera-scm-agent start

l 访问cdh71上的Cloudera Manager:

端口:7180(http://192.168.247.71:7180/cmf/login

cdh搭建 容器 cdh测试环境搭建_java_03


用户名密码:admin/admin

l 接受用户条款

l 选择60天试用版

l 点击“继续”

l 为CDH群集安装指定主机(选择cdh72和cdh73)l 选择存储库(注意:要删除默认的远程库。如果之前没有做这一步,会有错误。需要重新安装)

cdh搭建 容器 cdh测试环境搭建_cdh搭建 容器_04


l 将存储库部署到主机

cdh搭建 容器 cdh测试环境搭建_大数据_05

l 检查主机正确性

cdh搭建 容器 cdh测试环境搭建_大数据_06


在cdh72和cdh73上,执行下面的语句,并“重新运行”

echo 10 > /proc/sys/vm/swappiness

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

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

l 选择您要在群集上安装的 CDH 5 服务。(以HDFS为例)

步骤省略......(因为这一步很简单)

注意:需要在cdh71上创建report数据库,如下:

create database report;

create user 'reportmanager'@'%' identified by 'Welcome_1';

grant all on report. TO 'reportmanager'@'%';
grant all on report.
TO 'reportmanager'@'localhost' identified by 'Welcome_1';

l 部署成功

cdh搭建 容器 cdh测试环境搭建_cdh搭建 容器_07


Cloudera Manager首页

cdh搭建 容器 cdh测试环境搭建_数据库_08

l 检查每台机器上的Java后台进程

cdh搭建 容器 cdh测试环境搭建_大数据_09