美文网首页
在CentOS7中安装CDH

在CentOS7中安装CDH

作者: Bigdata234 | 来源:发表于2018-10-22 00:09 被阅读0次
    • 2018年9月7日 截至到今天,CDH已经更新到6.0.0了。

    本文介绍的CDH的安装是在本机上搭建的三个虚拟机中的,我的物理机配置如下:


    物理机配置.png

    通常说的CDH主要分为两个部分:CDH 和 CDH Manager。CDH主要就是包含了Hadoop等的一些大数据组件的安装包,而CDH Manager就是管理和监控这些的一个系统。

    2 基础环境配置

    JDK的安装

    虚拟机安装成功后,
    配置JDK环境,CDH对JDK有严格的要求,在CentOS中,必须放在/usr/java/ 目录下面;

    防火墙关闭

    使用systemctl stop firewalld.service指令检查防火墙状态;
    使用systemctl disable firewalld.service指令关闭防火墙开机启动;

    防火墙操作.png

    NTP 服务的安装

    具体的思路为:主节点安装了NTP服务,然后作为NTP服务器,对所有的从节点提供时间同步服务。具体的安装流程如下:
    在所有的节点上安装NTP服务:

    sudo yum install ntp –y;
    

    配置开机启动:

    sudo systemctl enable ntpd.service;
    # 或者 
    sudo chkconfig ntpd on;  
    #(现在新的开机启动走的是第一条指令了。)
    

    最好重启机器,检查是否生效:

    sudo reboot;
    systemctl status ntpd.service
    

    也可以通过指令检查是否设置成功:

    chkconfig –list ntpd ;
    #如果2-5都是on,则成功配置了。
    

    从节点配置,如果从节点也能联网的话,把所有的节点的时区设置为同一个即可,具体设置指令为:
    查看当前的时区信息:

    [bigdata@mini00 ~]$ timedatectl status
          Local time: Sun 2017-07-23 14:45:23 CST
      Universal time: Sun 2017-07-23 06:45:23 UTC
            RTC time: Sun 2017-07-23 06:45:23
           Time zone: Asia/Shanghai (CST, +0800)
         NTP enabled: no
    NTP synchronized: yes
     RTC in local TZ: no
          DST active: n/a
    

    设置亚洲上海时区:

    sudo timedatectl set-timezone Asia/Shanghai
    

    安装包的下载

    此次安装是基于CDH5.10.0版本。
    CDH Manager的下载地址如下:
    http://archive.cloudera.com/cm5/cm/5/

    CDH Manager下载页面.png
    CDH 的下载地址如下:
    http://archive.cloudera.com/cdh5/parcels/5.10.0/

    具体如下图所示:


    CDH5.10.0的下载.png

    以上的配置和CDH没有关系的,是CentOS7的基本环境的配置

    CDH 安装环境配置

    复制虚拟机

    重新打开虚拟机的时候,都选择我已经复制该虚拟机,这样的话,VMare会为该虚拟机重新生成一个网卡,不然的话,会依然使用以前的网卡,造成IP冲突。


    复制虚拟机.png

    修改域名

    #查看域名
    hostnamectl
    #修改域名
    hostnamectl set-hostname cdh01
    

    注销当前用户之后,新域名即可生效。

    设置IP

    
    [bigdata234@cdh03 ~]$ sudo vi /etc/hosts
    [sudo] password for bigdata234:
    
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    192.168.225.131 cdh01
    192.168.225.132 cdh02
    192.168.225.133 cdh03
    

    免密登陆

    确定cdh01为主节点,在主节点生成密钥后,拷贝到从节点上。从节点不需要生成密钥拷贝到主节点,此处注意陷入了死循环中。

    Mysql的安装

    此时的mysql的安装只安装在主节点上。
    参考另外一篇文章

    上传已经下载的文件,然后拷贝到各个节点上

    文件解压

    每个节点上都解压CM,解压的路径是/opt/ 下;

    tar -zxvf cloudera-manager-centos7-cm5.11.0_x86_64.tar.gz -C /opt/
    

    解压的结果如下:

    [root@cdh01 opt]# tree -L 2
    .
    ├── cloudera
    │   ├── csd
    │   └── parcel-repo
    └── cm-5.11.0
        ├── etc
        ├── lib
        ├── lib64
        ├── log
        ├── run
        ├── sbin
        └── share
    
    11 directories, 0 files
    

    在所有节点上配置主机的名称

    vi cm-5.11.0/etc/cloudera-scm-agent/config.ini
    

    如下:

    server_host=cdh01
    

    创建用户

    至于为什么要创建用户,不能使用当前的root或者别的用户,CDH的官网有说明。
    三个节点上面都创建用户:cloudera-scm 。

    useradd --system --home-dir /opt/cm-5.11.0/run/cloudera-scm-server/  --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
    

    用户创建后,修改目录的用户权限:

    chown -R cloudera-scm:cloudera-scm /opt/cloudera/
    chown -R cloudera-scm:cloudera-scm /opt/cm-5.11.0/
    

    建立数据库

    首先,在每个节点,都将驱动拷贝到CM的目录下面:

    cp mysql-connector-java-5.1.43-bin.jar /opt/cm-5.11.0/share/cmf/lib/
    

    其次,在主节点执行脚本,创建数据库,该脚本是CM自带的,

    /opt/cm-5.11.0/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot -p密码 --scm-host localhost scm scm cm库的密码
    

    安装CDH

    文件拷贝

    只在 主节点 拷贝,从节点在安装的时候会自动完成复制的。
    (1)、将CDH的parcel文件、sha1文件和JSON文件拷贝到/opt/cloudera/parcel-repo/目录下面;
    (2)、将sha1文件修改为sha文件;
    (3)、

    创建HIVE数据库、集群监控数据库、HUE、OOZIE数据库

    /**hive数据库**/
    DROP DATABASE IF EXISTS hive;
    CREATE DATABASE hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    GRANT ALL ON hive.* TO 'hive'@"%" IDENTIFIED BY "hivepassword";
    
    /**集群监控数据库**/
    DROP DATABASE IF EXISTS amon;
    CREATE DATABASE amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    GRANT ALL ON amon.* TO 'amon'@"%" IDENTIFIED BY "amonpassword";
    
    /**hue数据库**/
    DROP DATABASE IF EXISTS hue;
    CREATE DATABASE hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    GRANT ALL ON hue.* TO 'hue'@"%" IDENTIFIED BY "huepassword";
    
    /**oozie数据库**/
    DROP DATABASE IF EXISTS oozie;
    CREATE DATABASE oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    GRANT ALL ON oozie.* TO 'oozie'@'%' IDENTIFIED BY 'ooziepassword';
    
    GRANT ALL ON cmf.* TO 'cmf'@'%' IDENTIFIED BY 'cmfpassword';
    

    启动

    主节点:

    sudo /opt/cm-5.11.0/etc/init.d/cloudera-scm-server start
    sudo /opt/cm-5.11.0/etc/init.d/cloudera-scm-agent start
    

    从节点:

    sudo /opt/cm-5.11.0/etc/init.d/cloudera-scm-agent start
    

    相应的重启,暂停,分别为restart,stop。
    错误日志的位置:
    /opt/cm-5.11.0/log/cloudera-scm-agent

    CM启动日志在文件/opt/cm-5.11.0/log/cloudera-scm-server/cloudera-scm-server.log中;

    ....
    2018-09-08 15:05:18,543 INFO WebServerImpl:org.mortbay.log: jetty-6.1.26.cloudera.4
    2018-09-08 15:05:18,647 INFO WebServerImpl:org.mortbay.log: Started SelectChannelConnector@0.0.0.0:7180
    2018-09-08 15:05:18,648 INFO WebServerImpl:com.cloudera.server.cmf.WebServerImpl: Started Jetty server.
    .....
    

    7180端口已经启动

    相关网址

    欢迎界面


    image.png image.png image.png

    http://192.168.225.131:7180/cmf/express-wizard/wizard

    image.png

    出现主机运行不良的原因是没有删除主机以前生成的cm_guid导致的,可以参考文章:https://blog.csdn.net/u011031430/article/details/74057601

    image.png

    删除重新安装

    如果安装错误了,删除重新安装,按照以下步骤:
    1 删除全部的从节点上的文件包括,cloudrea和cm-xxx,重新解压;2‘
    2 为新的文件夹修改用户组;1’
    3 修改config文件,使其的服务节点都是cdh01;2‘
    4 删除CM数据库;drop database cm; 2’
    5 创建CM数据库;2' 
    6 从节点上,拷贝数据库驱动到cmf/lib下;
    7 主节点,清空cloudera下的文件,只保留csd和paracel-repo文件夹;
    8 主节点,删除rm -f /opt/cloudera-manager/cm-5.11.1/lib/cloudera-scm-agent/cm_guid,重启主节点的agent(restart)
    9 重启,首先启动主节点的管理;再启动从节点的agent;

    安装的过程中出现错误:
    /opt/cm-5.11.0/lib64/cmf/service/client/deploy-cc.sh: line 115: perl: command not found
    是因为perl没有安装:
    yum install -y perl,安装完后,重试即可;

    Command aborted because of exception: Command timed-out after 90 seconds
    一般是内存太少了导致的,对于主节点要求至少5GB,从节点要求至少2GB
    可以多试几次,说不定就通过了。

    相关文章

      网友评论

          本文标题:在CentOS7中安装CDH

          本文链接:https://www.haomeiwen.com/subject/gwycgftx.html