• 安装高可用Hadoop生态 (一 ) 准备环境


    为了学习Hadoop生态的部署和调优技术,在笔记本上的3台虚拟机部署Hadoop集群环境,要求保证HA,即主要服务没有单点故障,能够执行最基本功能,完成小内存模式的参数调整。

    1.    准备环境

    1.1. 规划

    • 克隆3台服务器,主机名和IP如下

    主机名

    IP

    软件

    hadoop

    192.168.154.128

    原始虚拟机用于克隆

    hadoop1

    192.168.154.3

    Zookeeper,journalnode Namenode, zkfc, Resourcemanager

    hadoop2

    192.168.154.4

    Zookeeper,journalnode Namenode, zkfc, Resourcemanager, DataNode,NodeManager

    hadoop3

    192.168.154.5

    Zookeeper,journalnode DataNode,NodeManager

    • 设置每台服务器的域名解析
    vi /etc/hosts
    127.0.0.1    localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    
    192.168.154.3 hadoop1[1] 192.168.154.4 hadoop2 192.168.154.5 hadoop3

    1.2. 准备软件包

    名称

    描述

    ssh_auth

    设置互信的工具包

    C3

    集群管理效率工具,在集群范围执行shell命令

    hadoop-2.7.3.tar.gz

    hadoop安装包

    zookeeper-3.4.9.tar.gz

    zookeeper安装包

    1.3. 设置互信

    采用设置互信的工具,解压文件到目录

    vi ./host
    hadoop1
    hadoop2
    hadoop3

    执行命令

    ./ssh_auth.sh hadoop hadoop ./host

    验证:在hadoop1,hadoop2,hadoop3上分别登录三台机器,如果无需密码进入则正常

    ssh hadoop1 
    exit
    
    ssh hadoop2
    exit
    
    ssh hadoop3
    exit

    为了操作简单,也设置root用户的互信

    ./ssh_auth.sh root xxxxxx ./host

    xxxxxx为root用户的密码

    1.4. 安装C3

        C3是Cluster Command & Control (C3) Tool Suite,是集群管理的效率工具,用于在集群服务器上通过ssh并行或者串行执行相同的命令。在Centos7上安装报告与filesystem-3.2-20.el7.x86_64冲突,所以需要强行安装,命令如下:    

    rpm -i c3-5.1.3-0.1.noarch.rpm --nodeps --force

        安装完成后,在使用C3的节点创建/etc/c3.conf文件。内容如下:

    cluster cloud {
            hadoop1:127.0.0.1 #head node
            dead remove-index-00
            hadoop1
            hadoop2
            hadoop3
    }

    验证:切换回hadoop用户,执行cexec date

    ************************* cloud *************************
    --------- hadoop1---------
    ××××××××××
    --------- hadoop2---------
    ××××××××××
    --------- hadoop3---------
    ××××××××××

    1.5. 创建目标目录

    切换到root用户 (用su -,使得root的环境变量起作用)

    cexec mkdir -p /opt/cloud
    cexec chown hadoop:hadoop /opt/cloud

    切换到hadoop用户

    #软件包的安装(解压缩的目标)目录
    cexec mkdir -p /opt/cloud/packages
    
    #执行目录,是与安装包目录的软连接
    cexec mkdir -p /opt/cloud/bin
    
    #配置文件目录,是与安装包目录中配置文件目录的软连接
    cexec mkdir -p /opt/cloud/etc
    
    #数据目录
    cexec mkdir -p /opt/cloud/data
    
    #日志目录
    cexec mkdir -p /opt/cloud/logs

    1.6. 配置Java环境

    vi ~/.bashrc

    增加

    export JAVA_HOME=/usr/lib/jvm/java
    export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=.:$JRE_HOME/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export PATH=$JAVA_HOME/bin:$PATH

    即刻生效

    source ~/.bashrc

    复制到另外两台服务器

    scp ~/.bashrc hadoop2:/home/hadoop
    scp ~/.bashrc hadoop3:/home/hadoop


    [1] 增加 hadoop1 hadoop2的ip映射

  • 相关阅读:
    springboot +mybatis 使用PageHelper实现分页,并带条件模糊查询
    jQuery设置点击选中样式,onmouseover和onmouseout事件
    Ajax跨域设置
    Java获取文章的上一篇/下一篇
    Python str / bytes / unicode 区别详解
    Python bytes 和 string 相互转换
    Python bytearray/bytes/string区别
    Python eval 与 exec 函数区别
    Python eval 与 exec 函数
    Python set list dict tuple 区别和相互转换
  • 原文地址:https://www.cnblogs.com/fanzhenyong/p/6188516.html
Copyright © 2020-2023  润新知