安装CDH

内容纲要
  1. 需要准备的文件放入 /opt 目录下
    cloudera-manager-centos7-cm5.16.2_x86_64.tar.gz CDH Manager 安装包
    CDH-5.16.2-1.cdh5.16.2.p0.8-el7.parcel  CDH安装包
    mysql-connector-java-8.0.23-1.el7.noarch.rpm    mysql-jdbc驱动包
    jdk-8u281-linux-x64.rpm centos7_64_jdk安装包
    mysql-5.7.33-1.el7.x86_64.rpm-bundle.tar    mysql5.7安装包
    manifest.json
  2. 安装Oracle的JDK1.8
    rpm -qa | grep jdk #查找现有JDK
    rpm -e --nodepps #用于卸载现有JDK
    rpm -ivh /opt/jdk-8u281-linux-x64.rpm #安装JDK
    which java #查看JDK安装目录 /usr/bin/java
    #将mysql驱动复制到 /usr/share/java目录中,没有目录可以创建
    mkdir -p /usr/share/java/
    #如果mysql中有版本信息需要在复制时重名为mysql-connector-java.jar
    cp /opt/mysql-connector-java.jar /usr/share/java/mysql-connector-java.jar
    #修改mysql驱动文件的执行权限
    chmod 777 /usr/share/java/mysql-connector-java.jar

    修改Java环境变量(查找java安装路径):

    #修改 /etc/profile
    vim /etc/profile
    #添加下面内容
    export JAVA_HOME=/usr/java/jdk1.8.0_281-amd64
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export PATH=$JAVA_HOME/bin:$PATH

    保存后执行生效语句

    source /etc/profile
  3. 安装http 服务
    CM管理界面基于Web访问,在主节点安装并启动http服务(其它节点不用安装)

    yum install -y httpd
    systemctl enable httpd.service
    systemctl start httpd
  4. 安装mysql数据库
    CM的数据需要存储在mysql中,安装mysql参见:centos7 离线安装mysql
    安装mysql后创建CDH需要的数据库

    CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
    CREATE DATABASE hive DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
    CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
    CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
    CREATE DATABASE monitor DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
    CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
    CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
  5. 关闭防火墙
    #关闭防火墙, 默认没有安装防火墙可以跳过
    systemctl status firewalld;
    systemctl stop firewalld
    systemctl disable firewalld
  6. 关闭SELinux
    #查看SELinux状态:
    sestatus
    #输出:enable 表示开启状态
    SELinux status:                 enabled
    #修改 /etc/selinux/config 将SELINUX属性改为SELINUX=disabled
    vim /etc/selinux/config

    保存重启后生效

  7. 调整linux系统参数(所有节点都进行调整)
    #修改swappiness=0,最大限度使用武力内存,然后才使用swap交换分区
    echo 0 >/proc/sys/vm/swappiness
    echo "vm.swappiness=0" >> /etc/sysctl.conf
    echo "echo 0 > /proc/sys/vm/swappiness" >> /etc/rc.d/rc.local
    #禁用hugepage透明大叶,避免cpu利用率过高,修改 /etc/rc.local,重启后生效
    echo "echo never > /sys/kernel/mm/transparent_hugepage/enabled" >> /etc/rc.d/rc.local
    echo "echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag" >> /etc/rc.d/rc.local
    #修改linux最大文件句柄数(默认1024)
    echo "* soft nofile 128000" >>/etc/security/limits.conf
    echo "* hard nofile 128000" >>/etc/security/limits.conf
    echo "* soft nproc 128000" >>/etc/security/limits.conf
    echo "* hard nproc 128000" >>/etc/security/limits.conf
    #书上说是90-nproc.conf,但centos7该目录下只有20-nproc.conf文件
    sed -i 's/1024/unlimited/' /etc/security/limits.d/20-nproc.conf
    ulimit -SHn 128000
    ulimit -SHu 128000
  8. 安装CM
    先在主节点服务器上安装CM

    #生成CDH安装校验sha文件
    sha1sum CDH-5.16.2-1.cdh5.16.2.p0.8-el7.parcel | cut -d ' ' -f 1 > CDH-5.16.2-1.cdh5.16.2.p0.8-el7.
    parcel.sha

    解压CM

    tar xzvf /opt/cloudera-manager-centos7-cm5.16.2_x86_64.tar.gz -C /opt

    将CDH安装文件和sha、manifest.json文件放到/opt/cloudera/p

    cp /opt/CDH-5.16.2-1.cdh5.16.2.p0.8-el7.parcel /opt/cloudera/parcel-repo/
    cp /opt/CDH-5.16.2-1.cdh5.16.2.p0.8-el7.parcel.sha /opt/cloudera/parcel-repo/
    cp /opt/manifest.json /opt/cloudera/parcel-repo/

    编辑agent的config.ini文件

    vim /opt/cm-5.16.2/etc/cloudera-scm-agent/config.ini

    将server_host修改为主节点的主机名:hadoop01

    # Hostname of the CM server.
    server_host=hadoop01

    将agent程序同步到所有节点

    scp -r /opt/cm-5.16.2 root@hadoop02:/opt/
    scp -r /opt/cm-5.16.2 root@hadoop03:/opt/

    所有节点建立cloudera-scm用户

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

    在主节点上初始化配置数据库,数据库cm、root用户、密码123456

    /opt/cm-5.16.2/share/cmf/schema/scm_prepare_database.sh mysql cm root 123456
  9. 配置时间同步
    参见 集群时间同步服务设置
  10. SSH 免密登录
    参见 Linux服务器免密登录
  11. 启动CM服务器和CMAgent
    主节点启动

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

    其它从节点启动Agent

    /opt/cm-5.16.2/etc/init.d/cloudera-scm-agent start
  12. 访问主节点CM管理应用
    访问 http://主节点ip:7180

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注