Cloudera Manager的安装


title: Cloudera Manager的安装
tags: CM Cloudera Manager cdh


一、Linux系统的安装

  1. 安装Linux CentOS 7.1系统

  2. 设置网络

    1. 配置IP与主机之间的映射,命令如下:

    vi /etc/hosts

    10.187.113.41 cdh01
    10.187.113.42 cdh02
    10.187.113.43 cdh03
    10.187.113.44 cdh04
    10.187.113.45 cdh05

    1. 禁用IPv6

    echo "alias net-pf-10 off" >> /etc/modprobe.d/dist.conf
    echo "alias ipv6 off" >> /etc/modprobe.d/dist.conf

  3. 增加普通用户

    useradd hadoop(增加用户)
    passwd hadoop(修改用户密码)

  4. 配置普通用户的sudo权限

    vi /etc/sudoers
    hadoop ALL=(root)NOPASSWD:ALL

  5. 关闭防火墙
    centos6.5关闭防火墙

    service iptables stop (暂时关闭)
    chkconfig iptables off(永久性关闭)

    centos7关闭防火墙

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

  6. 禁用Selinux

    vi /etc/sysconfig/selinux
    SELINUX=disabled

  7. 设置文件打开数量和用户最大进程数

    查看文件打开数量 ulimit -a
    查看用户最大进程数 ulimit -u

    vi /etc/security/limits.conf
    增加以下内容:

    soft nofile 65535
    hard nofile 65535
    soft nproc 32000
    hard nproc 32000

  8. yum源更换和添加

    1. 更换yum 源为163,请执行以下命令

      cd /etc/yum.repos.d

      yum install -y wget (下载资源命令)
      rename .repo .repo.bak *
      wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
      yum clean all
      yum makecache
      yum install lrzsz

    2. 添加cloudera-manager.repo源 【所有节点都要】

      cd /etc/yum.repos.d/
      vi cloudera-manager.repo 添加以下内容后保存退出

      [cloudera-manager]
      name=Cloudera Manager
      baseurl=https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5/
      gpgkey =https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/RPM-GPG-KEY-cloudera
      gpgcheck = 1

  9. 卸载CentOS自带的jdk

    sudo rpm -qa|grep jdk 或 sudo rpm -qa|grep java
    sudo rpm -e --nodeps xxx yyy zzz

  10. 安装jdk
    安装jdk命令:rpm -ivh jdk-8u151-linux-x64.rpm
    jdk下载地址:jdk-8u151-linux-x64.rpm

  11. 设置将 /proc/sys/vm/swappiness 设置为 0 (修改swap空间的swappiness,降低对硬盘的缓存 )
    (root用户)输入:echo "vm.swappiness=0" >> /etc/sysctl.conf )

  12. 集群时间同步

    1. rpm -qa |grep ntpd >>没有安装则需要安装此服务 >>yum install ntp

    2. 去掉这个注释,将地址改成网段地址

      restrict 10.187.113.41mask 255.255.255.0 nomodify notrap

      注释掉这几个

      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 10.187.113.41 prefer
      server 127.127.1.0
      fudge 127.127.1.0 stratum 10

    3. 配置boot时间和系统时间同步

      vi /etc/sysconfig/ntpd
      SYNC_HWCLOCK=yes

    4. 客户机配置(从节点)

      注释掉这几个
      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 10.187.114.41

    5. 启动ntpd服务器(主+从)
      centos7

      systemctl start ntpd.service
      systemctl status ntpd.service

      centos6.5

      service ntpd start
      service ntpd status

  13. 配置免密登录
    配置主机之间的免密ssh登陆(每个节点都要配置、密钥自身也要拷贝)
    假如 cdh01 要登陆 cdh02
    在cdh01上操作:
    首先生成密钥对,命令如下:
    ssh-keygen (提示时,直接回车即可)
    将生产的秘钥copy到mini2上,命令如下
    ssh-copy-id cdh02
    如果出现 ssh-copy-id: command not found 需要执行该命令yum -y install openssh-clients

二、cdh安装

1.安装mysql(需要root权限)并创建CDH相关的表【只需要在 cdh01节点安装】

  1. 查看CentOS自带mysql是否已安装。
    输入:sudo yum list installed | grep mysql
  2. 若有自带安装的mysql,如何卸载CentOS系统自带mysql数据库?
    输入:sudo yum -y remove mysql-libs.x86_64,若有多个依赖文件则依次卸载。
    当结果显示为Complete!即卸载完毕。
  3. 使用离线的RPM包安装mysql
    1. 解压安装包

      tar -xvf mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar

    2. 安装顺序

      rpm -ivh mysql-community-common-5.7.20-1.el7.x86_64.rpm
      rpm -ivh mysql-community-libs-5.7.20-1.el7.x86_64.rpm
      rpm -ivh mysql-community-client-5.7.20-1.el7.x86_64.rpm
      rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm
      rpm -ivh mysql-community-devel-5.7.20-1.el7.x86_64.rpm

    3. 启动Mysql服务

      systemctl start mysqld.service

    4. 修改管理员密码
      安装好mysql的初始密码,需要进行重置,进入msyql将密码修改为你自己的,我这里将密码修改成root

      grep 'temporary password' /var/log/mysqld.log

      如果修改密码过于简单就会报错Your password does not satisfy the current policy requirements
      做如下修改

      mysql -uroot
      mysql>use mysql;
      mysql>set global validate_password_policy=0;
      mysql>set global validate_password_length=1;
      mysql>set password for 'root'@'%'=password('root');
      mysql> flush privileges;

    5. 修改mysql的访问权限
      输入:

      mysql -uroot -proot
      mysql> grant all privileges on . to 'root'@'%' identified by 'root';
      mysql> flush privileges;

    6. 创建表cdh相关默认库(也可以后创建)
      输入命令;mysql -uroot -proot 进入mysql,执行以下sql建库语句

      mysql> create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
      mysql> create database reports DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
      mysql> create database navigatoraudit DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
      mysql> create database navigatormetadata DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

2.在主节点【cdh01】Cloudera Manager Server ,以下方式随便选择一种【建议选择离线安装】

  1. 在线安装sudo yum install cloudera-manager-daemons cloudera-manager-server

  2. 离线安装
    资源下载地址:https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/
    上传三个server的资源包到mini1节点上
    cloudera-manager-server-5.11.0-1.cm5110.p0.101.el7.x86_64.rpm
    cloudera-manager-server-db-2-5.11.0-1.cm5110.p0.101.el7.x86_64.rpm
    cloudera-manager-daemons-5.11.0-1.cm5110.p0.101.el7.x86_64.rpm

    安装

    yum install -y postgresql-server(我这里是安装server-db的时候缺少这个依赖然后用yum安装的)
    rpm -ivh cloudera-manager-daemons-5.11.0-1.cm5110.p0.101.el7.x86_64.rpm
    rpm -ivh cloudera-manager-server-5.11.0-1.cm5110.p0.101.el7.x86_64.rpm
    rpm -ivh cloudera-manager-server-db-2-5.11.0-1.cm5110.p0.101.el7.x86_64.rpm

3. 拷贝mysql的连接驱动【mysql-connector-java-5.1.40.jar】到该目录下 /usr/share/cmf/lib

4. 在主节点【cdh01】初始化CM5的数据库

/usr/share/cmf/schema/scm_prepare_database.sh mysql -h localhost -uroot -proot --scm-host localhost scm root root

5. 上传CHD5大数据服务组件资源包

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

cd /opt/cloudera/parcel-repo

上传:CDH-5.11.0-1.cdh5.11.0.p0.34-el7.parcel和CDH-5.11.0-1.cdh5.11.0.p0.34-el7.parcel.sha以及manifest.json 这个目录下 /opt/cloudera/parcel-repo
使用 chmod -R guo+wr xxx 给上述三个文件配置可写可读的权限

6. 主节点【cdh01】上启动Cloudera Manager Server

systectl start cloudera-scm-server

7. 使用netstat-nltp命令查看【cdh01】端口7180 是否启动成功,如果出现这个端口可以使用浏览器访问http://cdh01:7180 (windows下hosts做主机映射)

8. 在节点【cdh01,cdh02,cdh03,cdh04,cdh05】Cloudera Manager agent ,以下方式随便选择一种【建议选择离线安装】

  1. 在线安装

    sudo yum install cloudera-manager-agent cloudera-manager-daemons

  2. 离线安装
    上传两个server的资源包到mini1节点上
    资源下载地址:https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/
    cloudera-manager-agent-5.11.0-1.cm5110.p0.101.el7.x86_64.rpm
    cloudera-manager-daemons-5.11.0-1.cm5110.p0.101.el7.x86_64.rpm

    安装顺序

    rpm -ivh cloudera-manager-daemons-5.11.0-1.cm5110.p0.101.el7.x86_64.rpm
    rpm -ivh cloudera-manager-agent-5.11.0-1.cm5110.p0.101.el7.x86_64.rpm

9. 修改agent所在的节点【cdh01,cdh02,cdh03,cdh04,cdh05】配置文件config.ini内容

sudo vi /etc/cloudera-scm-agent/config.ini
server_host=cdh01 (这里我是以cdh01作为server节点)

10. 启动Cloudera Manager

在从节点【cdh01,cdh02,cdh03,cdh04,cdh05】上启动Cloudera Manager Agent

sudo service cloudera-scm-agent start

三、Clouder Manager Server和agent 安装过程异常情况处理

  1. 已启用“透明大页面”,它可能会导致重大的性能问题。版本为“CentOS release 7.1 (Final)”且版本为“2.6.32-279.el7.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 never > /sys/kernel/mm/transparent_hugepage/enabled
    echo never >> /etc/rc.local

  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
    pstree: 未找到命令
    解决方案

    yum install -y psmisc

  4. 找不到jdk

    输入:sudo vi /etc/sudoers ,在sudoers最后面添加以下内容
    Defaults env_keep+=JAVA_HOME
    输入:sudo vi /etc/default/bigtop-utils 在 bigtop-utils 文件中添加以下内容
    export JAVA_HOME=/usr/java/latest
    然后执行以下命令
    source /etc/default/bigtop-utilssource /etc/default/bigtop-utils

  1. 异常
    如果出现agent主机不良状况

    Error, CM server guid updated, expected 85587073-270d-43d9-a44a-e213d9f7e45b, received 4c1402a5-8364-4598-a382-0c760710e897
    尝试运行以下命令
    rm -rf /var/lib/cloudera-scm-agent/cm_guid
    之后重启agent
    service cloudera-scm-agent restart

四、Cloudera Manager首次启动

1. 登录Cloudera Manager的管理界面

cdh01:7180
账号:admin
密码:admin

Cloudera Manager的安装_第1张图片
登录界面

2. 用户许可条件
Cloudera Manager的安装_第2张图片
用户许可

3.选择部署版本
Cloudera Manager的安装_第3张图片
部署版本

4.为集群安装指定主机
Cloudera Manager的安装_第4张图片
选择主机

5. 群集安装

主机检查没有问题再进行下一步

Cloudera Manager的安装_第5张图片
pacel.png
Cloudera Manager的安装_第6张图片
cdh分配激活.png
Cloudera Manager的安装_第7张图片
主机检查.png

6. 安装Cloudera Management Server服务
Cloudera Manager的安装_第8张图片
cmserver1.png

Cloudera Manager的安装_第9张图片
cmserver2.png
Cloudera Manager的安装_第10张图片
cmserver3.png

五、Cloudera Manager基本搭建完成

你可能感兴趣的:(Cloudera Manager的安装)