CentOS7 离线安装 CDH5

参考文章: CentOS7安装CDH 第五章:CDH的安装和部署-CDH5.7.0

CentOS7安装CDH 第四章:CDH的版本选择和安装方式

CentOS7安装CDH5.14.0过程全纪录

------------------------------------------------------------------------------------------------

CDH和HDP下载地址

CDH6.2离线安装(整理版)

CDH 6 安装

CDH 6系列(CDH 6.0.0、CDH 6.1.0、CDH 6.2.0等)安装和使用

1. CDH版本选择

CDH版本选择:建议5.4.8和5.8.0版本,如需要版本较高可以选择5.12版本,目前6.x版本还没有使用过,请注意,千万不要选择5.11.0版本。

在CDH5版本中,JDK一般安装为JDK8,还需要安装python环境,可以选择python2.6.X或者python2.7.x都可以。

最新版本为:Index of cm6/6.3.1/redhat7/yum/RPMS/x86_64/

2. CDH的安装方式选择

  • rpm包安装:
    • 先离线下载rpm文件,再进行安装,安装过程中会下载相应的依赖,比较稳定,但安装要求较高。
    • 此安装方式开始配置时较麻烦,但之后安装很方便,建议使用,具体安装方式请参考上述相关文章链接中的第五章CDH的安装和部署。
  • bin文件安装:
    • 通过bin文件安装一般用于在线安装,对网络要求比较高,如果现在过程中网络中断会造成安装失败,但此方法安装简单,全程傻瓜式安装。
    • bin文件安装参考网址:https://www.cnblogs.com/ljy2013/p/4662191.html        https://www.cnblogs.com/leocook/p/cdh_management.html
    • 此方法为去http://archive.cloudera.com/cm5/installer/latest/cloudera-manager-installer.bin 中下载bin文件,再执行bin文件进行安装。 
  • tar包安装:不是很了解tar包的安装方式,但使用tar包安装会有依赖未安装而造成安装失败的异常,不建议使用。

3. CDH的下载

以CentOS7.5和CDH5.7.0举例:

3.1. cm的tar包下载

cm5.7.0下载地址:http://archive.cloudera.com/cm5/repo-as-tarball/5.7.0/

----------------------------------------------------- 

  cm6.3.1下载地址:https://archive.cloudera.com/cm6/6.3.1/repo-as-tarball/

 

请选择需要的版本。

3.2. parcels包下载

cdh5.7.0 下载地址:http://archive.cloudera.com/cdh5/parcels/5.7.0/

CentOS7 离线安装 CDH5_第1张图片

请选择对应的版本,el7,并将后缀.sha1更改为.sha。

----------------------------------------------------------------------------------------------------------------

cdh6.3.2下载地址:https://archive.cloudera.com/cdh6/6.3.2/parcels/

CentOS7 离线安装 CDH5_第2张图片

 

4. 安装CDH的准备工作(所有节点都要执行)

4.1. 安装好JDK

4.2. 更改主机名和hosts

# 更改3台主机hostname,每个主机上按ip递增的顺序,分别执行下面一条命令:

# echo "bigdata01.dpkg.com" > /etc/hostname
# echo "bigdata02.dpkg.com" > /etc/hostname
# echo "bigdata03.dpkg.com" > /etc/hostname

# 在3台机器中分别执行如下命令:
# echo "10.101.15.229    bigdata01.dpkg.com    bigdata01" >> /etc/hosts
# echo "10.101.15.230    bigdata02.dpkg.com    bigdata02" >> /etc/hosts
# echo "10.101.15.231    bigdata03.dpkg.com    bigdata03" >> /etc/hosts


#-------------------- old -------------------#
# echo "bigdata0*.tfpay.com" > /etc/hostname
# echo "172.17.28.1    bigdata01.tfpay.com    bigdata01" >> /etc/hosts
# echo "172.17.28.2    bigdata02.tfpay.com    bigdata02" >> /etc/hosts
# echo "172.17.28.3    bigdata03.tfpay.com    bigdata03" >> /etc/hosts
# echo "172.17.28.4    bigdata04.tfpay.com    bigdata04" >> /etc/hosts

4.3. 关闭防火墙,并重启服务器使hostname和selinux的配置生效

# systemctl stop firewalld
# systemctl disable firewalld
# systemctl status firewalld
# sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
# reboot
# getenforce
# sestatus -v

4.4. 安装NTP服务

#在所有节点
yum -y install ntp

# 在master节点,注释掉原有的server指向把时间服务器的域名地址指向一个靠谱可连的时间服务器,
# 我选择的是ntp.api.bz.
# vim /etc/ntp.conf
    ……
     #server 0.centos.pool.ntp.org iburst
    #server 1.centos.pool.ntp.org iburst
    #server 2.centos.pool.ntp.org iburst
    #server 3.centos.pool.ntp.org iburst
    server ntp.api.gz iburst
......

# 在其余的节点上,把时间服务器的server指向master namenode节点
# vi /etc/ntp.conf
     ……
     #server 0.centos.pool.ntp.org iburst
    #server 1.centos.pool.ntp.org iburst
    #server 2.centos.pool.ntp.org iburst
    #server 3.centos.pool.ntp.org iburst
    server 172.17.28.1 iburst
......

# 在所有节点
systemctl start ntpd
systemctl enable ntpd

4.5. 配置SSH无密码登录,如上配置免密登录所示

4.6. 安装MySQL数据库,能进入MySQL数据库即为安装完成

5. 配置CDH的离线安装

目的:将上述下载的4个文件上传到centos7服务器中,并配置好离线服务,安装时即可以从该离线服务中下载,不需要再从官网中去下载,防止网络错误。

5.1 在master节点上安装httpd

# 查看该centos7是否存在httpd服务
rpm -qa|grep httpd

# 如果不存在该服务就安装
yum install -y httpd

# 启动该服务
systemctl start httpd.service #启动
systemctl stop httpd.service #停止
systemctl restart httpd.service #重启

# 设置该服务是否开机启动
systemctl enable httpd.service #开机启动
systemctl disable httpd.service #开机不启动

# 查看该服务的状态
systemctl status httpd.service

 

当访问该服务器的80端口出现如下画面即为安装和启动成功

CentOS7 离线安装 CDH5_第3张图片

5.2 创建 parcels文件

# 在/var/www/html下创建一个parcels文件夹,并将上述下载的3个文件上传到该目录下
cd /var/www/html/
mkdir parcels
# 上传如下3个文件
CDH-5.7.0-1.cdh5.7.0.p0.45-el7.parcel
CDH-5.7.0-1.cdh5.7.0.p0.45-el7.parcel.sha
manifest.json

# 校验文件下载未损坏
/usr/bin/sha1sum CDH-5.7.0-1.cdh5.7.0.p0.45-el7.parcel
cat CDH-5.7.0-1.cdh5.7.0.p0.45-el7.parcel.sha

 如果2个验证码一样,证明该文件未损坏,可以使用:

在浏览器中能打开如下网址,证明配置成功:

CentOS7 离线安装 CDH5_第4张图片

5.3 创建cm文件

# 在/var/www/html创建cm5/redhat/7/x86_64/文件夹(和官网一样的路径)
cd /var/www/html/
# mkdir -p cm5/redhat/7/x86_64/
mkdir -p cm6/redhat/7/x86_64/ 

# 上传cm5.7.0-centos7.tar.gz包到/var/www/html目录下,并解压
tar -zxf cm5.7.0-centos7.tar.gz

# 将解压好的文件夹移动到上述创建的文件夹下
# mv cm /var/www/html/cm5/redhat/7/x86_64/
mv cm /var/www/html/cm6/redhat/7/x86_64/

# 配置本地的yum源,cdh集群在安装时会就从本地down包,不会从官网了,所有节点都要执行
vim /etc/yum.repos.d/cloudera-manager.repo

#在该文件下插入如下数据
#[cloudera-manager]
#name = Cloudera Manager, Version 5.7.0
#baseurl = http://192.168.12.131/cm5/redhat/7/x86_64/cm/5/
#gpgcheck = 0
[cloudera-manager]
name = Cloudera Manager, Version 6.3.1
baseurl = http://10.101.15.229/cm6/redhat/7/x86_64/cm6.3.1/
gpgcheck = 0

  在浏览器中出现如下界面:

CentOS7 离线安装 CDH5_第5张图片

5.4 安装CM的server+agent

# 进入上述创建的CM的文件目录下
# cd /var/www/html/cm5/redhat/7/x86_64/cm/5.7.0/RPMS/x86_64/
cd /var/www/html/cm6/redhat/7/x86_64/cm6.3.1/RPMS/x86_64/

# 安装cloudera-manager-daemons-5.7.0-1.cm570.p0.76.el7.x86_64.rpm
# yum install cloudera-manager-daemons-5.7.0-1.cm570.p0.76.el7.x86_64.rpm
yum install cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm

# 安装cloudera-manager-server-5.7.0-1.cm570.p0.76.el7.x86_64.rpm,
# 请注意,不用安装db版本的,那是使用默认数据库的,在生产环境中一般不使用,
# 生产环境中是使用MySQL数据库的
# yum -y install cloudera-manager-server-5.7.0-1.cm570.p0.76.el7.x86_64.rpm
yum -y install cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm

5.5 在MySQL中创建元数据库并上传jar包

# 在MySQL中创建元数据库
create database cmf DEFAULT CHARACTER SET utf8;
create database amon DEFAULT CHARACTER SET utf8;
create database hive DEFAULT CHARACTER SET utf8;
create database oozie DEFAULT CHARACTER SET utf8;
create database hue DEFAULT CHARACTER SET utf8;

grant all on cmf.* TO 'cmf'@'%' IDENTIFIED BY '123456';
grant all on amon.* TO 'amon'@'%' IDENTIFIED BY '123456';
grant all on hive.* TO 'hive'@'%' IDENTIFIED BY '123456';
grant all on oozie.* TO 'oozie'@'%' IDENTIFIED BY '123456';
grant all on hue.* TO 'hue'@'%' IDENTIFIED BY '123456';

# 创建cmf用户,并创建cmf数据库,此数据库需在CDH的数据库配置文件中配置
create database cmf DEFAULT CHARACTER SET utf8;
grant all on cmf.* TO 'cmf'@'%' IDENTIFIED BY '123456';
flush privileges;

# 创建其他数据库,并授权
create database amon DEFAULT CHARACTER SET utf8;
grant all on amon.* TO 'amon'@'%' IDENTIFIED BY '123456';
flush privileges;
    
create database hive DEFAULT CHARSET SET utf8;
grant all on hive.* TO 'hive'@'%' IDENTIFIED BY '123456';
flush privileges;
    
create database oozie DEFAULT CHARSET SET utf8;
grant all on oozie.* TO 'oozie'@'%' IDENTIFIED BY '123456';
flush privileges;

create database hue DEFAULT CHARACTER SET utf8;
grant all on hue.* TO 'hue'@'%' IDENTIFIED BY '123456';
flush privileges;

#给MySQL授权时会出现密码问题,可以执行如下命令
set global validate_password_policy=LOW;
set global validate_password_length=6;

#修改CDH关于数据库的配置文件(如下图所示)
vim /etc/cloudera-scm-server/db.properties

# 上传与MySQL连接的jar包(注:jar包需要放入如下目录,没有就创建)
# 所有节点都需要执行
cd /usr/share/java

# 上传jar包,并修改jar包的名字(此jar包不需要版本号)
mv mysql-connector-java-8.0.15.jar mysql-connector-java.jar

  CDH数据库配置文件如下图所示:

CentOS7 离线安装 CDH5_第6张图片

在CDH5.8.4版本之后又如下配置,请修改:

5.6 启动cloudera-scm-server服务并查看日志

#启动
service cloudera-scm-server start
service cloudera-scm-server status

# 在启动时有可能碰到The server time zone value 'EDT' is unrecognized异常,
# 这是mysql的时区和系统的时区不匹配,可以参考如下网站解决
https://blog.csdn.net/u010003835/article/details/88974898

#查看日志
cd /var/log/cloudera-scm-server/
tail -f cloudera-scm-server.log
# 出现如下7180即证明启动成功
WebServerImpl:org.mortbay.log: Started [email protected]:7180

 成功图片如下所示:

CentOS7 离线安装 CDH5_第7张图片

此时查看MySQL数据库,会发现cmf数据库下回自动创建表:

CentOS7 离线安装 CDH5_第8张图片

使用命令会查看到连接cmf的用户的具体信息:

show processlist;

CentOS7 离线安装 CDH5_第9张图片

5.7 在浏览器的web页面上安装CM

当service cloudera-scm-server start启动成功后,即可以在浏览器上服务7180端口(需开放防火墙)。

1. 在浏览器中输入http://bigdata01.ouyang.com:7180 ,登录CM的web界面,账号和密码均为admin:

CentOS7 离线安装 CDH5_第10张图片

2. 点击同意许可:

CentOS7 离线安装 CDH5_第11张图片

3. 选择CM的版本:

CentOS7 离线安装 CDH5_第12张图片

4. 使用搜索模式,搜索需要安装CDH的主机:

CentOS7 离线安装 CDH5_第13张图片

5.8 在浏览器的web页面上安装CDH集群

1.  选择存储库

点击更多选项,将其他远程Parcel删除,并输入先前配置好的Parcel:

CentOS7 离线安装 CDH5_第14张图片

CentOS7 离线安装 CDH5_第15张图片

选择CDH的版本,并选择自定义存储库:

地址:http://bigdata01.ouyang.com/cm5/redhat/7/x86_64/cm/5/

CentOS7 离线安装 CDH5_第16张图片

2.  是否需要安装JDK,默认不进行安装,直接下一步:

CentOS7 离线安装 CDH5_第17张图片

3. 是否启用单用户模式,可以自由选择:

CentOS7 离线安装 CDH5_第18张图片

4. 提供 SSH 登录凭据,可以自由选择,这里直接使用root用户:

CentOS7 离线安装 CDH5_第19张图片

5.  进行集群安装,如果安装失败可以点击详细信息查看失败原因,解决后再重新安装:

CentOS7 离线安装 CDH5_第20张图片

6. 安装选定Parcel,先前配置的Parcel就作用于此处,如果不进行此配置会去官网进行下载,对网络要求很高,并网络中断后会重新下载,较麻烦,使用此配置可以直接下载成功,并速度很快:

CentOS7 离线安装 CDH5_第21张图片

7. 检查主机正确性,一般来说此步会存在swap设置和大页面2个问题,可以使用如下代码在每个主机上进行配置,然后重新检测即可:

#关闭大页面
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag'>>  /etc/rc.local
echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled'>>  /etc/rc.local

#设置swap
echo 'vm.swappiness = 10' >> /etc/sysctl.conf
sysctl -p

 

CentOS7 离线安装 CDH5_第22张图片

5.9 在浏览器的web页面上进行CDH集群的配置

1. 选择要在集群上安装的CDH5服务:

CentOS7 离线安装 CDH5_第23张图片

2. 自定义角色分配,一般将主色分配到master节点,所以该节点内存要大,zookeeper需要安装奇数台,这里是只安装了一台,不合理,请安装3台以上的奇数台:

CentOS7 离线安装 CDH5_第24张图片

CentOS7 离线安装 CDH5_第25张图片

CentOS7 离线安装 CDH5_第26张图片

3. 进行数据库设置,此步骤中用到的数据库在上述的MySQL数据库中均进行了创建和授权:

CentOS7 离线安装 CDH5_第27张图片

4. 审核更改,此步骤中不管是开发测试还是生产环境,均不需要更改,直接点击继续,进行下一步:

CentOS7 离线安装 CDH5_第28张图片

5. 首次运行,会自动运行,运行之后点击继续按钮即可:

CentOS7 离线安装 CDH5_第29张图片

6. 安装成功:

CentOS7 离线安装 CDH5_第30张图片

CentOS7 离线安装 CDH5_第31张图片

此状态为主机配置较低,运行不良,对集群无影响,可以正常工作。

你可能感兴趣的:(CDH)