美文网首页Hadoop系CDHCDH的安装和操作
CDH6.2安装教程(详细步骤)

CDH6.2安装教程(详细步骤)

作者: 绿叶悠 | 来源:发表于2019-06-25 17:46 被阅读9次

    一.安装介绍

    本文介绍CDH 安装,安装版本以当前最新版CDH 6.2为例。
    本文介绍的安装方式为自建YUM源的离线安装方式

    二.下载所需安装文件

    CDH的离线安装需要下需以下文件:

    三.确认主机安装环境

    1.确认每台服务器的硬件是否满足要求:

    空间要求: /var: 5GB /usr : 500MB CDH安装目录: 2GB

    检查命令: df -h
    

    内存要求: 4GB(min)

    检查命令: free -m
    

    2.检查系统版本:

    检查命令:cat /etc/issue
    

    需求版本:CentOS Linux release 7.3.1611 (Core), 支持7.X

    3.检查服务器数据存储空间:
    CDH的安装建议在每台服务器具有相同的数据存储路径, 并具可以有多个

    四.规划集群部署

    CDH建议最少3台服务器进行集群部署,本次安装采用三台服务器,规划:

    主机名 IP 角色
    master01 192.168.1.205 Hadoop Master,CM Server,数据节点,Mysql
    slave01 192.168.1.206 数据节点,CMAgent
    slave02 192.168.1.207 数据节点,CM Agent

    五.修改主机名

    使用命令

    hostnamectl set-hostname xxx
    

    分别修改三台主机的主机名,如:

    hostnamectl set-hostname master01
    hostnamectl set-hostname slave01
    hostnamectl set-hostname slave02
    

    六.更改主机HOSTS映射文件

    将所有集群服务器的IP 主机名都写到/etc/hosts文件中,因为后面的安装服务器选择,都是通过主机名选择。如:在每台服务器的/etc/hosts中增加以下内容:


    image.png

    七.更改主机HOSTS映射文件

    1.停掉系统防火墙服务命令:

    systemctl disable firewalld
    systemctl stop firewalld
    

    2.停掉系统SELinux
    使用以下命令查看SELinux是否开起:
    如果输出为: Enable, 则SELinux为开启状态,则使用以下操作关闭:

    • 更改系统配置文件: /etc/sysconfig/selinux
      将行 SELINUX=enforcing 更改为: SELINUX=disabled
    • 重启系统: reboot

    八.检查主机时间同步

    • CentOS 7默认以chronycd服务作时间同步,而不以ntpd作为同步服务
      1.所有服务器都以master01作为同步服务器,在所有服务器更改文件:


      image.png

      a) 文件为: /etc/chrony.conf
      b) 以#注释其它所有默认时间服务器
      c) 增加行server master01 iburst

    2.在master01上同时更改如下配置:

    image.png
    image.png
    \color{rgb(255,0,0)}{注意上面的IP段填写正确。}

    3.启动服务:

    systemctl restart chronyd
    systemctl enable chronyd
    

    4.检查服务状态:

    chronyc sources
    
    image.png

    九.检查主机参数配置

    1.设置 vm. swappiness 核心参数:
    在 /etc/sysctl.conf文件中追加行:

    vm.swappiness = 0
    

    使参数生效,执行命令:

    sysctl -p
    

    2.设置hugepage相关参数,执行以下命令:

    echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
    

    并将该命令,追加到 /etc/rc.local文件中,使系统重启时生效。

    十.确认Python环境

    1.通过以下命令确定python是否安装以及版本:

    python -V
    

    2.Python的版本要求为: 2.6.x, 2.7.x, 如果没有安装或版本不正确,则通过以下方式安装:
    a) 创建安装目录:

    mkdir /usr/local/python27
    

    b) 解压步骤 2 下载的Python-2.7.11.tgz安装文件:

    tar -xvf Python-2.7.11.tgz
    

    c) 进到解压目录里面,然后执行下以命令进行编绎安装:

    cd Python-2.7.11
    ./configure --prefix=/usr/local/python27
    

    更改 Modules/Setup文件

    # zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
    

    改为:

    zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
    

    去年前面的注释,增加编绎zlib模块,impala-shell命令会用到。

    # make
    # make install 
    

    d) 修改老版本指向:

    # mv /usr/bin/python /usr/bin/python_old
    # ln -s /usr/local/python27/bin/python /usr/bin/python
    

    e) 再次使用上面的命令确认是否安装完成

    十一.安装依赖包

    CDH 6.2安装需要以下依赖包:

    • Python: 2.6 或 2.7版本
    • perl
    • python-psycopg2 : 用于连接postgresql, 如果用Mysql数据库,就不用安装
    • iproute
      以上软件在安装系统时软件选择“Compute Node”时,已全部安装. 一般不用操作!如果出现差包的情况,可参考<十五.制作本地YUM源>, 先制作好YUM源后,使用YUM命令安装。

    十二.安装数据库并创建用户和数据库

    只需要在master01主机上安装即可
    集群的安装需要一个关系型数据库进行配置数据的存储,CDH支持 Oracle , Mysql, Postgrest, 以及一个内置数据库。本将安装采用mysql进行存储,安装过程为:

    1.检测和卸载已安装的MYSQL软件:


    image.png
    image.png
    • 注意:CentOS7默认安装了mariadb库,所以mysql及mariadb都要检测

    2.解压下载的MYSQL安装文件:

    # tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar
    

    3.安装MYSQL(注意:命令在一行, 全部复制执行):

    rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm mysql-community-common-5.7.26-1.el7.x86_64.rpm mysql-community-devel-5.7.2ommunity-devel-5.7.26-1.el7.x86_64.rpm mysql-community-libs-*.rpm mysql-community-embedded-*.rpm
    
    image.png

    4.启动MYSQL

    # systemctl start mysqld
    # systemctl enable mysqld
    

    5.获取MYSQL的root初始临时密码,在日志文件 /var/log/mysqld.log

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

    6.更改root用户初始密码:

    # mysql -uroot -p
    
    mysql> set global validate_password_policy=0;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> set global validate_password_length=6;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
    Query OK, 0 rows affected (0.00 sec)
    

    7.在MYSQL中创建需要用到的数据库:

    mysql> CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
    mysql> CREATE DATABASE hive DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
    mysql> CREATE DATABASE rmon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
    mysql> CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; 
    mysql> CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
    

    8.在MYSQL中创建集群所用的统一登陆用户授权:

    mysql> CREATE USER 'cdh'@'%' IDENTIFIED BY '123456'; 
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> GRANT ALL ON *.* TO 'cdh'@'%';
    Query OK, 0 rows affected (0.00 sec)
    

    十三.拷贝JDBC驱动包到每台服务器

    将Mysql驱动包mysql-connector-java-8.0.16.jar拷贝到每台服务器下的目录: /usr/share/java/

    # cp mysql-connector-java-8.0.16.jar /usr/share/java/mysql-connector-java.jar
    

    \color{rgb(255,0,0)}{注意:拷上去的文件改了名字的,必须!}

    十四.安装JDK

    上传JDK安装文件: jdk-8u211-linux-x64.rpm 使用以下命令安装上面已下载的JDK:

    # rpm -ivh jdk-8u211-linux-x64.rpm
    

    配置JAVA环境变量, 在 /etc/profile中追加以下内容:

    export JAVA_HOME=/usr/java/default
    export CLASSPATH=./:$JAVA_HOME/lib
    export PATH=$JAVA_HOME/bin:$PATH
    

    如图,如用以下命令难JDK是否安装成功:

    image.png

    十五.制作本地YUM安装源

    安装ClouderaManager需要同时制作本地系统ISO源以及CM安装文件源。
    以下第 2), 3) 步除红字增加YUM源文件操作需要在每台服务器上增加,其它准备步骤只在Master01上执行即可
    1.删除其它文件, 每台服务器上执行

    # rm -rf /etc/yum.repos.d/*.repo
    

    2.制作本地系统ISO源
    a) 上传ISO文件并挂载系统iso包成虚拟设备:

    # mkdir /iso
    # mount -o loop ./CentOS-7-x86_64-DVD-1611.iso /iso
    

    b) 启动HTTP服务

    # cd /iso
    #python -m SimpleHTTPServer 7900
    
    注意:该命令会一直卡住,后面的操作需另开SHELL窗口
    

    c) 每台服务器上增加以下内容(黄行不是)到文件: /etc/yum.repos.d/centos.repo

    [root@master01 ~]# cat /etc/yum.repos.d/centos.repo 
    [c7-media]
    name=CentOS-$releasever - Media
    baseurl= http://192.168.1.205:7900
    gpgcheck=1
    enabled=1
    gpgkey= http://192.168.1.205:7900/RPM-GPG-KEY-CentOS-7
    
    注意地址是否正确,可以手动在浏览器中打开地址测试
    

    3.制作CM YUM源
    a) 准备文件

    # mkdir -p /var/www/html/
    # unzip ./cloudera-repos.zip -d /var/www/html/
    # chmod -R ugo+rX /var/www/html/cloudera-repos/cm6
    
    如果Linux能联网也可使用以下命令直接在线下载文件:
    
    # wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/cm6/6.2.0/redhat7/ -P                   /var/www/html/cloudera-repos
    # wget https://archive.cloudera.com/cm6/6.2.0/allkeys.asc -P /var/www/html/cloudera-repos/cm6/6.2.0/
    # chmod -R ugo+rX /var/www/html/cloudera-repos/cm6
    

    b) 启动HTTP服务

    # cd /var/www/html
    # python -m SimpleHTTPServer 8900
    

    c) 每台服务器上增加以下内容到文件: /etc/yum.repos.d/cloudera-repo.repo

    [root@master01 ~]# cat /etc/yum.repos.d/cloudera-repo.repo 
    [cloudera-repo]
    name=cloudera-repo
    baseurl=http://192.168.1.205:8900/cloudera-repos/cm6/6.2.0/redhat7/yum
    enabled=1
    gpgcheck=0
    

    十六.安装Clouder Manger

    1.在master01主机上执行以下命令, 同时安装CM Server和CM Agent

    # yum install -y cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server
    
    安装需要一会时间,会安装依赖包: 
    
    image.png

    2.在每台服务器执行以下命令安装Agent:

    # yum install -y cloudera-manager-agent cloudera-manager-daemons
    
    1. 配置Agent文件: /etc/cloudera-scm-agent/config.ini
      将 server_host=localhost
      更改为: server_host=master01
      (Cm server所在主机)


      image.png

    十七.初始化CM 的配置数据库(只在CM Server(master01)上执行)

    执行脚本 scm_prepare_database.sh 进行初始化,命令格式:

    # cd /opt/cloudera/cm/schema/   
    # ./scm_prepare_database.sh -h master01 -P 3306 mysql scm cdh 123456
    
    参数说明: -h MysqlHost -P MysqlPort dbType dbName dbUser dbPasswd
    
    image.png

    十八.移动Parcel文件到指标目录(只在CM Server上执行)

    使用以下命令移动3个parcel文件到parcel-repo中:

    # cp CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel /opt/cloudera/parcel-repo/
    # cp CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel.sha1 /opt/cloudera/parcel-repo/CDH-6.2.0-    1.cdh6.2.0.p0.967373-el7.parcel.sha
    
    注意:最后一个文件将.sha1名字改成了 .sha
    

    十九.启动CM Server/ Agent

    1.在Master01上启动CM Server

    # systemctl start cloudera-scm-server
    # systemctl enable cloudera-scm-server
    

    2.在所有主机上启动CM Agent

    # systemctl start cloudera-scm-agent
    # systemctl enable cloudera-scm-agent
    
    enable命令是启用开始起动
    

    3.检查日志是起起动完成


    image.png
    • 出现红色日志,说明起动完成,可以登陆WEB页面开始后面的操作

    二十.登陆CM Server完成集群安装

    • 登录CM管理界面,最好使用Chrome浏览器,使用地址: http://192.168.1.205:7180/
      默认用户密码为admin/admin


      image.png
    • 登陆进去后,继续:


      image.png
    • Accept License, 继续:


      image.png
    • 下一页,选择安装cm版本,默认,继续即可:


      image.png
    • 集群安装欢迎, 继续:


      image.png
    • 集群名设置,默认即可,继续:


      image.png
    • 选择【当前管理的主机】中可以看到所有启动了CM Agent的服务器,并成功连接CM Server的服务器, 选择需要安装的服务器,点击继续:


      image.png
    • 选择对应的CDH parcel版本,点击继续:


      image.png
    • 如果这里没有Parcel可供选择,请检查第18步,并重启CM Server,在这一步,CM 会将parcel解压,并分发,安装到每一台选择的服务器中,如图:


      image.png
    • 检查主机正确性,如有错误,按照提示更改即可, 并点击完成:


      image.png

      可以执行Hosts检查,Network Performance不需要执行, Host 显示完整结果:


      image.png
      检查一般会有这两个警告,可以按提示修改,也可以在上面选择”I understand the risks” 忽略继续。
    • 选择需要安装的组件,可根据需要自定义选择:


      image.png

      服务在安装完成后,还可以增删

    • 选择角色分配:
      按照第 4 步角色规划:HDFS DataNode选择所有主机
      ZooKeeper按照建议(应选择大于3个并为单数的主机): 选择所有主机
      其它根据需要更改,注意角色均衡和性能:
      一般master角色选成master01
      图中红色为我更改过的部分


      image.png
      image.png
      image.png
    • 集群数据库设置:
      根据第12步创建的数据库,填写正确的数据库及用户,密码,然后测试连接:


      image.png

      如果有数据库不存在的,则按第12步新建数据库即可, 注意建库后重新执行Grant授权语句

    • 集群数据存储目录设置,根据需要设置各组件数据存储目录(测试默认即可):


      image.png

    集群开始安装,并部署,启动服务:


    image.png
    image.png
    • 完成:


      image.png

    二十一.CDH集群安装检查

    登陆进CM管理界面,可以检查集群各组件运行情况,如:


    image.png

    相关文章

      网友评论

        本文标题:CDH6.2安装教程(详细步骤)

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