CDH5.5离线安装部署(centos7血与泪)

CDH用于管理hadoop生态环境的各个组件,提供安装和管理的功能,强烈推荐
下面是CDH5.5的安装环境搭建(6台服务器Centos7,2台主节点机性能好,32G内存)

  1. 离线包下载

    1.1 cloudera-manager下载
    下载地址

    cloudera-manager-centos7-cm5.5.0_x86_64.tar.gz
    //放入/opt/cloudera-manager
    
    #tar -zxf cloudera-manager-centos7-cm5.5.0_x86_64.tar.gz
    

    1.2 离线安装包下载
    下载地址

    CDH-5.5.0-1.cdh5.5.0.p0.8-el7.parcel
    CDH-5.5.0-1.cdh5.5.0.p0.8-el7.parcel.sha1
    manifest.json
    //放入目录/opt/cloudera/parcel-repo
  2. 安装
    2.1 jdk1.8安装

    rpm -qa|grep java
    删除原生依赖
    yum -y remove ...
    rpm -ivh jdk-8u65-linux-x64.rpm

    2.2 依赖安装

    yum install -y  chkconfig
    yum install -y Python
    yum install -y bind-utils
    yum install -y  psmisc
    yum install -y  libxslt
    yum install -y  zlib
    yum install -y sqlite
    yum install -y cyrus-sasl-plain
    yum install -y cyrus-sasl-gssapi
    yum install -y fuse
    yum install -y portmap
    yum install -y fuse-libs
    yum install -y redhat-lsb
    yum install -y bind-utils
    yum install -y libxslt
    yum install -y sqlite

    2.3 各个节点防火墙关闭

    systemctl stop firewalld.service #停止firewall
    systemctl disable firewalld.service #禁止firewall开机启动

    2.4 hosts配置

    vi /etc/hosts
    
    #根据自己机器情况修改
    
    172.168.101.245 master245
    172.168.101.246 datanode246
    172.168.101.247 datanode247
    172.168.101.248 datanode248
    172.168.101.249 datanode249
    172.168.101.250 datanode250
    127.0.0.1 localhsot

    各节点hostname修改

    /etc/sysconfig/network
    
    #172.168.101.245
    
    NETWOEKING=yes
    HOSTNAME=master245
    
    #172.168.101.246
    
    NETWOEKING=yes
    HOSTNAME=datanode246
    .
    .
    .
    
    #172.168.101.250
    
    NETWOEKING=yes
    HOSTNAME=datanode250

    2.5 ssh配置

    
    #ssh-keygen -t rsa
    
    
    #cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    
    
    #scp ~/.ssh/* root@datanode246:~/.ssh/
    
    
    #scp ~/.ssh/* root@datanode247:~/.ssh/
    
    
    #scp ~/.ssh/* root@datanode248:~/.ssh/
    
    
    #scp ~/.ssh/* root@datanode249:~/.ssh/
    
    
    #scp ~/.ssh/* root@datanode250:~/.ssh/
    

    2.6 ntp服务安装

    yum install -y ntp
    chkconfig ntpd on
    ntpdate cn.pool.ntp.org
    
    //主节点master245修改vi /etc/ntp.conf 
    去掉注释:restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
    service ntpd start
    //子节点设置
    ntpdate -u master245
    service ntpd start
    chkconfig ntpd on

    2.7 postgres数据库安装
    安装postgres

    yum install http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-redhat94-9.4-1.noarch.rpm
    yum install postgresql94-server postgresql94-contrib

    初始化数据库

    /usr/pgsql-9.4/bin/postgresql94-setup initdb

    设置访问权限

    vi /var/lib/pgsql/9.4/data/pg_hba.conf 

    添加如下设置
    host all all 127.0.0.1/32 md5
    host all all 172.168.101.0/24 md5
    host all all 172.168.100.0/24 md5
    配置修改

    vi /var/lib/pgsql/9.4/data/postgresql.conf

    shared_buffers - 256MB
    wal_buffers - 8MB
    checkpoint_segments - 16
    checkpoint_completion_target - 0.9

    设置开机启动

    systemctl enable postgresql-9.4.service
    systemctl start postgresql-9.4.service
    service postgresql-9.4 restart

    创建初始库

    sudo -u postgres psql
    CREATE ROLE scm LOGIN PASSWORD 'scm';
    CREATE DATABASE scm OWNER scm ENCODING 'UTF8';
    创建用户实例
    
    #Activity Monitor
    
    CREATE ROLE amon LOGIN PASSWORD 'amon_password';
    CREATE DATABASE amon OWNER amon ENCODING 'UTF8';
    
    
    #Reports Manager
    
    CREATE ROLE rman LOGIN PASSWORD 'rman_password';
    CREATE DATABASE rman OWNER rman ENCODING 'UTF8';
    
    
    #Hive Metastore Server
    
    CREATE ROLE hive LOGIN PASSWORD 'hive_password';
    CREATE DATABASE metastore OWNER hive ENCODING 'UTF8';
    
    
    #Sentry Server
    
    CREATE ROLE sentry LOGIN PASSWORD 'sentry_password';
    CREATE DATABASE sentry OWNER sentry ENCODING 'UTF8';
    
    
    #Cloudera Navigator Audit Server
    
    CREATE ROLE nav LOGIN PASSWORD 'nav_password';
    CREATE DATABASE nav OWNER nav ENCODING 'UTF8';
    
    
    #Cloudera Navigator Metadata Server
    
    CREATE ROLE navms LOGIN PASSWORD 'navms_password';
    CREATE DATABASE navms OWNER navms ENCODING 'UTF8';
    
    
    #For PostgreSQL 8.2.23 or later, also run:
    
    ALTER DATABASE Metastore SET standard_conforming_strings = off;
    

    在主节点初始化CM5的数据库:

    /opt/cloudera-manager/cm-5.5.0/share/cmf/schema/scm_prepare_database.sh  -h localhost postgresql scm scm scm

    2.8 同步Agent到其他节点
    修改/opt/cloudera-manager/cm-5.1.3/etc/cloudera-scm-agent/config.ini中的server_host为主节点的主机名(master245)。

    ```
    scp -r /opt/cloudera-manager/cm-5.5.0 root@datanode246:/opt/cloudera-manager
    scp -r /opt/cloudera-manager/cm-5.5.0 root@datanode247:/opt/cloudera-manager
    scp -r /opt/cloudera-manager/cm-5.5.0 root@datanode248:/opt/cloudera-manager
    .
    .
    .
    ```
    

    2.9 在所有节点创建cloudera-scm用户

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

    2.10 主机准备Parcels,用以安装CDH5
    将CHD5相关的Parcel包放到各个节点机的/opt/cloudera/parcel-repo/目录中(parcel-repo需要手动创建)。
    并授权 chown cloudera-scm:cloudera-scm parcel-repo

    相关的文件如下:

    CDH-5.1.3-1.cdh5.1.3.p0.12-el6.parcel
    CDH-5.1.3-1.cdh5.1.3.p0.12-el6.parcel.sha1
    manifest.json

    最后将CDH-5.1.3-1.cdh5.1.3.p0.12-el6.parcel.sha1,重命名为CDH-5.1.3-1.cdh5.1.3.p0.12-el6.parcel.sha

    2.11 创建目录

    rm -rf /dfs
    rm -rf /var/lib/zookeeper
    rm -rf /opt/cloudera-manager/cm-5.5.0/lib/cloudera-scm-agent/*
    rm -rf /var/lib/cloudera-scm-headlamp
    rm -rf /var/lib/cloudera-scm-firehose
    rm -rf /var/lib/cloudera-scm-alertpublisher
    rm -rf /var/lib/cloudera-scm-eventserver
    rm -rf /var/lib/cloudera-scm-server
    
    rm -rf  /var/log/cloudera-scm-headlamp
    rm -rf /var/log/cloudera-scm-firehose
    rm -rf /var/log/cloudera-scm-alertpublisher
    rm -rf /var/log/cloudera-scm-eventserver
    rm -rf /var/log/cloudera-scm-server
    rm -rf /hbase
    
    
    
    mkdir -p /var/lib/cloudera-scm-headlamp
    mkdir -p /var/lib/cloudera-scm-firehose
    mkdir -p /var/lib/cloudera-scm-alertpublisher
    mkdir -p /var/lib/cloudera-scm-eventserver
    mkdir -p /var/lib/cloudera-scm-server
    
    mkdir -p /var/log/cloudera-scm-headlamp
    mkdir -p /var/log/cloudera-scm-firehose
    mkdir -p /var/log/cloudera-scm-alertpublisher
    mkdir -p /var/log/cloudera-scm-eventserver
    mkdir -p /var/log/cloudera-scm-server
    mkdir -p /opt/cloudera-manager
    mkdir -p /opt/cloudera/parcel-repo
    mkdir /hbase
    
    
    
    chown cloudera-scm:cloudera-scm /var/lib/cloudera-scm-headlamp
    chown cloudera-scm:cloudera-scm /var/lib/cloudera-scm-firehose
    chown cloudera-scm:cloudera-scm /var/lib/cloudera-scm-alertpublisher
    chown cloudera-scm:cloudera-scm /var/lib/cloudera-scm-eventserver
    chown cloudera-scm:cloudera-scm /var/lib/cloudera-scm-server
    
    chown cloudera-scm:cloudera-scm /var/log/cloudera-scm-headlamp
    chown cloudera-scm:cloudera-scm /var/log/cloudera-scm-firehose
    chown cloudera-scm:cloudera-scm /var/log/cloudera-scm-alertpublisher
    chown cloudera-scm:cloudera-scm /var/log/cloudera-scm-eventserver
    chown cloudera-scm:cloudera-scm /var/log/cloudera-scm-server
    chown -R cloudera-scm:cloudera-scm /opt/cloudera-manager
    chown cloudera-scm:cloudera-scm /hbase/
    
    sudo chown -R  root:root /opt/cloudera/parcel-repo
    
    master主机上
    rm -rf /user/hive/warehouse
    mkdir -p /user/hive/warehouse
    chown cloudera-scm:cloudera-scm /user/hive/warehouse
    
    rm -rf /var/lib/cloudera-host-monitor
    mkdir -p /var/lib/cloudera-host-monitor
    chown cloudera-scm:cloudera-scm /var/lib/cloudera-host-monitor
    
    rm -rf  /var/lib/cloudera-service-monitor
    mkdir -p /var/lib/cloudera-service-monitor
    chown cloudera-scm:cloudera-scm /var/lib/cloudera-service-monitor

    2.11 启动服务

    chown -R cloudera-scm:cloudera-scm /opt/cloudera-manager
    /opt/cm-5.1.3/etc/init.d/cloudera-scm-server start
    /opt/cm-5.1.3/etc/init.d/cloudera-scm-agent start

    开机启动service

    cp /opt/cloudera-manager/cm-5.5.0/etc/init.d/cloudera-scm-server /etc/init.d/cloudera-scm-server
    chkconfig cloudera-scm-server on

    开机启动agents

    cp /opt/cloudera-manager/cm-5.5.0/etc/init.d/cloudera-scm-agent /etc/init.d/cloudera-scm-agent
    chkconfig cloudera-scm-agent on
  3. 异常情况处理
    3.1异常1

    已启用“透明大页面”,它可能会导致重大的性能问题。版本为“CentOS release 6.3 (Final)”且版本为“2.6.32-279.el6.x86_64”的 Kernel 已将 enabled 设置为“[always] never”,并将 defrag 设置为“[always] never”。请运行“echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag”以禁用此设置,然后将同一命令添加到一个 init 脚本中,如 /etc/rc.local,这样当系统重启时就会设置它
    (每个节点)

    解决方案

    echo never > /sys/kernel/mm/transparent_hugepage/defrag
    echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' >> /etc/rc.local

    3.2异常2

    Cloudera 建议将 /proc/sys/vm/swappiness 设置为 0。当前设置为 60。使用 sysctl 命令在运行时更改该设置并编辑 /etc/sysctl.conf 以在重启后保存该设置。您可以继续进行安装,但可能会遇到问题,Cloudera Manager 报告您的主机由于交换运行状况不佳。以下主机受到影响:

    解决方案:

    echo  0 >  /proc/sys/vm/swappiness
    sysctl vm/swappiness
    echo 'vm.swappiness = 0'>/etc/sysctl.conf
    sysctl -p

    3.3异常3

    pstree: 未找到命令

    解决方案

    yum install -y psmisc

你可能感兴趣的:(CDH)