zoukankan      html  css  js  c++  java
  • CDH简易离线部署文档

     

     

    CDH 离线简易部署文档

     

     

     

    文档说明

    本文为开发部署文档,生产环境需做相应调整。

    以下操作尽量在root用户下操作,避免权限问题。

    目录

    文档说明 2

    文档修改历史记录 2

    目录 3

    系统环境 4

    相关依赖 4

    初始准备: 5

    java下载和更新 5

    修改主机名与主机名解析 5

    selinux关闭 6

    防火墙关闭 6

    NTP服务器设置 6

    SSH无密码登录配置 6

    安装mysql 7

    配置jdbc 8

    安装Cloudera-Manager 9

    主节点安装工作 9

    从节点安装工作 10

    常见报错原因及解决 11

    在浏览器安装CDHs 12

     

    系统环境

    系统版本

    主机名

    主机ip

    用户名密码

    说明

    Centos6.5

    bigdata01

    10.62.8.1

    Root:rootroot

    安装主节点,主节点,

    Centos6.5

    bigdata02

    10.62.8.2

    Root:rootroot

    从节点

    Centos6.5

    bigdata03

    10.62.8.3

    Root:rootroot

    从节点

    Centos6.5

    bigdata04

    10.62.8.4

    Root:rootroot

    从节点

    相关依赖

    依赖名称

    依赖版本

    依赖用途

    jdk 1.8                 

    jdk-8u101-linux-x64.rpm

    Openjdk

    mysql

    MySQL-5.6.26-1.linux_glibc2.5.x86_64.rpm-bundle.tar.gz

    存放cloudera manager配置文件

    mysql-connector-java

    mysql-connector-java-8.0.11.jar

    JDBC

    cloudera manager

    cloudera-manager-el6-cm5.9.3_x86_64.tar

    简易安装CDH平台

    CDH parcel

    CDH-5.7.2-1.cdh5.7.2.p0.18-el6.parcel

    集群各软件压缩包

    CDH parcel.sha

    CDH-5.7.2-1.cdh5.7.2.p0.18-el6.parcel.sha1

    压缩包对于哈希码

    manifest.json

    网站对应版本页面上的文件

    版本说明json文件

    初始准备:

    java下载和更新

    为了避免java版本过低导致的相关问题,首先将每个节点java版本更新至1.8

     

    #查看已经安装版本

    rpm -qa | grep jdk 

    java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64

    java-1.7.0-openjdk-headless-1.7.0.75-2.5.4.2.el7_0.x86_64

     

    #卸载已经安装版本

    yum -y remove java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64

    yum -y remove java-1.7.0-openjdk-headless-1.7.0.75-2.5.4.2.el7_0.x86_64

    #安装最新版本

    rpm -ivh jdk-8u101-linux-x64.rpm

    #查看最新安装版本

    java –version

    Java(TM) SE Runtime Environment (build 1.8.0_101-b13)

    Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)

    修改主机名与主机名解析

    为了方便配置各节点,将主机名设置成特定格式,方便记忆。每个节点对应修改

    #设定主机名与网卡启动

    vim /etc/sysconfig/network

    NETWORKING=yes

    HOSTNAME=bigdata01

    #主机名和IP解析

    vim /etc/hosts

    127.0.0.1 localhost. bigdata01

    10.62.8.2 bigdata02

    10.62.8.4 bigdata03

    10.62.8.4 bigdata04

    selinux关闭

    # 每个节点通过配置文件永久关闭selinux,重启生效

    vim /etc/sysconfig/selinux

    SELINUX=disabled

    # 查看selinux状态

    sestatus –v

    SELinux status: disabled

    防火墙关闭

    # 每个节点关闭防火墙(或者设置对应的策略能够让各节点互相通信)

    service iptables stop    #临时关闭

    chkconfig iptables off   #开机关闭

    service iptables status  #查看状态

    NTP服务器设置

    # 每个节点开启NTP 服务,统一各节点时间。

    vim /etc/ntp.conf

    server 10.62.8.1 iburst   #离线情况下节点指向主节点

        

    service ntpd restart

    # 检查

        service ntpd status

    date

    SSH无密码登录配置 

    # 主节点生成ssh公钥

    ssh-keygen -t rsa  (一直回车)

    ssh-copy-id bigdata02 (对应节点)

    # 检查在主节点上能否免密登录各节点

    ssh bigdata02

    # 如果不能免密登录,查看 /var/log/security, 一般为ssh文件的权限问题

     

    安装mysql 

    # 安装在主节点上,用于存放cloudera manager 配置文件,如果已有即可不用安装。

    tar -xvf  MySQL-5.6.24-1.linux_glibc2.5.x86_64.rpm-bundle.tar

    rpm -ivh MySQL-*.rpm 

    cp /usr/share/mysql/my-default.cnf   /etc/my.cnf 

    vim /etc/my.cnf

    [mysqld]

    default-storage-engine = innodb

    innodb_file_per_table

    collation-server = utf8_general_ci

    init-connect = 'SET NAMES utf8'

    character-set-server = utf8

    #初始化mysql

    /usr/bin/mysql_install_db

    # 开启mysql

    service mysql restart

    ERROR! MySQL server PID file could not be found!

    Starting MySQL... SUCCESS!

     

    # 查看mysql root初始化密码

    cat /root/.mysql_secret

    The random password set for the root user at Fri Sep 16 11:13:25 2016 (local time): 9mp7uYFmgt6drdq3

    #登录mysql并修改密码

    mysql -u root –p

    mysql> SET PASSWORD=PASSWORD('root12345678');

    允许mysql远程访问

    mysql> update user set host='%' where user='root' and host='localhost';

    Query OK, 1 row affected (0.05 sec)

    Rows matched: 1  Changed: 1  Warnings: 0

    mysql> flush privileges;

    Query OK, 0 rows affected (0.00 sec)

    # 创建集群对应数据库

    create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

    Query OK, 1 row affected (0.00 sec)

    create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

    Query OK, 1 row affected (0.00 sec)

    create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

    Query OK, 1 row affected (0.00 sec)

    create database monitor DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

    Query OK, 1 row affected (0.00 sec)

    create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

    Query OK, 1 row affected (0.00 sec)

    grant all on *.* to root@"%" Identified by "root12345678";

    配置开机启动

    chkconfig mysql on

     

    配置jdbc

    # 拷贝mysql-connector-java到各个节点指定目录下(所有的节点)

    cp mysql-connector-java-5.1.36-bin.jar /usr/share/java/mysql-connector-java.jar

     

     

    安装Cloudera-Manager

    主节点安装工作

    #解压cm tar包到指定目录

    mkdir /opt/cloudera-manager

    tar -axvf cloudera-managertar -C /opt/cloudera-manager

    #创建cloudera-scm用户(home为相应目录)

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

    #创建cloudera-manager-server的本地元数据保存目录

    mkdir /var/cloudera-scm-server

    chown cloudera-scm:cloudera-scm /var/cloudera-scm-server

    chown cloudera-scm:cloudera-scm /opt/cloudera-manager

    #主节点中创建parcel-repo仓库目录

    mkdir -p /opt/cloudera/parcels

    chown cloudera-scm:cloudera-scm /opt/cloudera/parcels

    #初始脚本配置数据库scm_prepare_database.sh(相应目录下的脚本)

    /opt/cloudera-manager/cm-5.7.2/share/cmf/schema/scm_prepare_database.sh mysql -hhadoop1 -uroot -p123456 --scm-host bigdata01 scmdbn scmdbu scmdbp

    #说明:这个脚本就是用来创建和配置CMS需要的数据库的脚本。各参数是指:

    mysql:数据库用的是mysql,如果安装过程中用的oracle,那么该参数就应该改为oracle

    -bigdata01:数据库建立在bigdata01主机上面。也就是主节点上面。。

    --scm-host bigdata01CMS的主机,一般是和mysql安装的主机是在同一个主机上。

    最后三个参数是:数据库名,数据库用户名,数据库密码。

    # 设置cloudera-manager service

    cp /opt/cloudera-manager/cm-5.7.2/etc/init.d/cloudera-scm-server /etc/init.d/cloudera-scm-server

    chkconfig cloudera-scm-server on

    vim /etc/init.d/cloudera-scm-server

    CMF_DEFAULTS=${CMF_DEFAULTS:-/etc/default}改为=/opt/cloudera-manager/cm-5.7.2/etc/default

    vim /etc/rc.local

    service cloudera-scm-server restart

     

    从节点安装工作

    #解压cm tar包到指定目录

    mkdir /opt/cloudera-manager

    tar -axvf cloudera-manager-centos7-cm5.7.2_x86_64.tar.gz -C /opt/cloudera-manager

    # 创建cloudera-scm用户

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

    # 配置从节点cloudera-manger-agent指向主节点服务器

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

    server_host改为CMS所在的主机名即bigdata01

    # 所有节点创建parcels目录

    mkdir -p /opt/cloudera/parcels

    chown cloudera-scm:cloudera-scm /opt/cloudera/parcels

    设置agent服务

    cp /opt/cloudera-manager/cm-5.7.2/etc/init.d/cloudera-scm-agent /etc/init.d/cloudera-scm-agent

    chkconfig cloudera-scm-agent on

    vim /etc/init.d/cloudera-scm-agent

    CMF_DEFAULTS=${CMF_DEFAULTS:-/etc/default}改为=/opt/cloudera-manager/cm-5.7.2/etc/default

    vim /etc/rc.local

    service cloudera-scm-agent restart

     

     

     

    常见报错原因及解决

    1 ERROR com.cloudera.enterprise.dbutil.DbProvisioner  - Exception when creating/dropping database with user 'root' and jdbc url 'jdbc:mysql://localhost/?useUnicode=true&characterEncoding=UTF-8'

    java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)

    可能是配置host的有问题,127.0.0.1 localhost.hadoop1 这个localhost不能少

    可能是密码问题,重设密码

    2. ERROR com.cloudera.enterprise.dbutil.DbProvisioner  - Exception when creating/dropping database with user 'root' and jdbc url 'jdbc:mysql://localhost/?useUnicode=true&characterEncoding=UTF-8'

    java.sql.SQLException: Your password has expired. To log in you must change it using a client that supports expired passwords.

    密码过期,设置密码为不过期格式。

    mysql> update user set password_expired='N' where user='root';

    Query OK, 2 rows affected (0.00 sec)

    Rows matched: 5  Changed: 2  Warnings: 0

    mysql> flush privileges;

    在浏览器安装CDHs


    进入192168.160.130:7180 默认使用admin admin登录 
    以下在浏览器中使用操作安装

    选择版本

     

     

    组件提示 

     

     

    这里我们可以在当前管理的主机中看到三个主机,全部勾选并继续,注意如果cloudera-scm-agent没有设为开机启动,如果以上有重启这里可能会检测不到其他服务器。 

     

    选择cdh 

     

     

    分发parcels到各个节点 

     

     

     

    之间正确性的检测 

     

     

     

    选择要安装的服务,这里选择所有服务

     

     

     

     

    角色分配 

     

     

     

     

     

     

     

     

     

     

     

     

     

    数据库设置选择 

    集群审核,这里都默认的 

    开始安装

     

    安装完成

     

     

    这个时候安装完成了,可以在浏览器中进入10.62.8.1:7180地址,查看集群情况,

     

     

  • 相关阅读:
    Prim算法的3个版本
    [转]"undefined reference to" 问题解决方法
    C/C++ 读写 Excel
    Poj 3468
    关于PS中矩形工具的学习
    PS初学习
    java第二天学习。
    Java学习第一天
    二叉树的线索化
    struct files_struct
  • 原文地址:https://www.cnblogs.com/xinghuaikang/p/9038341.html
Copyright © 2011-2022 走看看