Cloudera Manager的安装

 

https://www.jianshu.com/p/e6a09ddb4d6d

一、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 源为阿里源,请执行以下命令

      cd /etc/yum.repos.d

      yum install -y wget (下载资源命令)
      rename .repo .repo.bak *

      wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
      yum clean all
      yum makecache
      yum install lrzsz

  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                                                                                                                                                                                                                             配置环境变量
        vi /etc/profile
    ## JAVA HOME
    JAVA_HOME=/opt/modules/jdk1.7.0_79
    export PATH=$PATH:$JAVA_HOME/bin         

    # source /etc/profile                                                                                                                                                               

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

  12. 集群时间同步

        1)配置第一台PC的时间服务器
        2)让其他的PC来同步PC1的时间
        
        在第一台PC上进行设置:
        查看目前系统使用的时区
        $ date -R
        Sun, 16 Oct 2016 23:35:08 -0700
        如果得到的结果不是+0800,那么就需要修改时区
        删除目前系统使用的时区文件
        # rm -f /etc/localtime 
        创建软链接文件/etc/localtime指向/usr/share/zoneinfo/Asia/Shanghai
        # ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
        
        # date -R        查看,此时时区已经是+0800
        调整当前时间,与当前时间同步
        # ntpdate cn.pool.ntp.org
            使用ntpdate命令之前可以检查此软件的安装情况
            # rpm -qa | grep ntp
                ntpdate-4.2.4p8-3.el6.centos.x86_64
                fontpackages-filesystem-1.41-1.1.el6.noarch
                ntp-4.2.4p8-3.el6.centos.x86_64
            如果没有安装这个软件,可以使用yum安装
            # yum -y install ntp
            
        修改ntp的配置文件
        # vi /etc/ntp.conf
        
        修改1:去掉下面这行的#,将网段改为自己的网段:192.168.234.0
            restrict 192.168.234.0 mask 255.255.255.0 nomodify notrap
        
        修改2:注释掉以下几行内容
            #server 0.centos.pool.ntp.org
            #server 1.centos.pool.ntp.org
            #server 2.centos.pool.ntp.org
        
        修改3:去掉如下两行前的#,如没有需要 自己添加
            server  127.127.1.0     # local clock
            fudge   127.127.1.0 stratum 10    
        
        启动NTP服务
        # service ntpd start(systemctl restart ntpd)
        
        在启动电脑的时候自动启动
        # chkconfig ntpd on(systemctl enable ntpd)
        
    到另外两台PC(PC2  PC3)关闭ntpd进程(要先把时区改过来)
        # service ntpd stop(systemctl stop ntpd.service) 
        # chkconfig ntpd off(systemctl disable ntpd.service)
        
        # rm -f /etc/localtime 
        # ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime    
        # date -R        查看,此时时区已经是+0800

    同步第一台PC的时间(PC2 PC3)
        格式:ntpdate 开启ntp服务的主机名
        # ntpdate lodestone02.com

    设置计划任务,每十分钟同步一次时间(PC2 PC3)
        # crontab -e
        */10 * * * * /usr/sbin/ntpdate lodestone02.com

  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节点安装】

安装、启动mysql
        1)卸载系统自带的mysql
            $ rpm -qa | grep mysql
            # rpm -e --nodeps mysql-libs-5.1.66-2.el6_3.x86_64
        2)安装mysql软件包
            mysql mysql-server mysql-devel
            # yum -y install mysql mysql-server mysql-devel
        3)启动mysql
            注意:mysql的进程名称是:mysqld
            # service mysqld start
            # chkconfig mysqld on
            ====
            cent7:
            # yum install mariadb-server -y
            # systemctl start mariadb.service
            # systemctl enable mariadb.service
            # mysql
        4)设置密码
            第一种方式(在linux命令行模式下):
                mysqladmin -u root password 'xxx'
            第二种方式(进入mysql之后设置):
                SET PASSWORD FOR 'root'@'localhost'=PASSWORD('xxx')
            ===CENT7
            # mysql_secure_installation        
        5)输入密码登陆mysql
            # mysql -uroot -p
            Enter password: 
        6)给root用户添加权限
            第一步:添加权限
            grant all privileges on *.* to 'root'@'nicole02.com.cn' identified by 'root';  //linux
            grant all privileges on *.* to 'root'@'192.168.37.1' identified by 'root';    //windows
            GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;  //hdfs集群导入导出需要换为%
            
            all privileges:添加所有权限
            第一个*:所有数据库
            第二个*:所有表
            第一个'root':代表root用户
            'nicole02.com.cn':代表主机
            第二个'root':代表mysql的root用户设置的密码
            
            第二步:刷新权限
            flush privileges;

  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;

      mysql> create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
      mysql> create database hue 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

    安装

    rpm -ivh oracle-j2sdk1.8-1.8.0+update181-1.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(有的是:/opt/cloudera/cm/lib 或者是:/opt/cm-5.8.2/share/cmf/lib/)

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

在命令里scm_prepare_database.sh后面的参数分别是:数据库类型 数据库名称(可以随便起一个名称)   数据库主机名  数据库用户名 密码 --scm-host 主节点机名 scm scm scm

/opt/cloudera/cm/schema/scm_prepare_database.sh mysql cm -h hadoop01 -u root -p 123456 --scm-host hadoop01 scm scm scm

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

systemctl 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

centOS7:

/bin/systemctl restart  cloudera-scm-agent.service

三、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. CM+CDH安装大数据的过程中出现主机运行状态不良情况的解决
    https://blog.csdn.net/u010766519/article/details/90633887
    删除agent目录下面的cm_guid文件,并重启失败节点的agent服务恢复。
    cm_guid文件的内容大概是uuid,用于唯一标示agent隶属于哪一个server。
    如图cd到每台主机的目录/var/lib/cloudera-scm-agent下,把cm_guid文件 删除。然后重启代理服务节点
    命令: service cloudera-scm-agent restart
    如果出现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

 

登录界面

 

2. 用户许可条件

 

用户许可

3.选择部署版本

 

部署版本

4.为集群安装指定主机

 

选择主机

5. 群集安装

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

 

pacel.png

 

cdh分配激活.png

 

主机检查.png

 

6. 安装Cloudera Management Server服务

 

cmserver1.png

 

cmserver2.png

 

cmserver3.png

五、Cloudera Manager基本搭建完成

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值