Hadoop源码分析二安装配置过程详解

目录

  • 1、 创建用户
  • 2、 安装jdk
  • 3、 修改hosts
  • 4、 配置ssh免密登录
  • 5、 安装zookeeper
    • 解压:
    • 修改配置文件
      • 修改内容如下:
      • 配置环境变量
    • 启动
    • 6、 安装hadoop
      • 对于三台节点的配置安排如下:
        • 解压:
        • 修改配置文件:
        • 修改core-site.xml
        • 配置hdfs-site.xml
        • 配置mapred-site.xml
        • 配置yarn-site.xml
        • 配置slaves
    • 7、 初始化
      • 在初始化前需要将所有机器都配置好hadoop
        • (1) 启动zookeeper
        • (2) 启动journalnode
        • (3) 格式化zk
        • (4) 格式化hdfs
        • (5) 同步元数据
        • (6) 启动hadoop
        • (7) 安装fuster
        • (8) 网页访问
    安装hadoop有好几种方式,以下按照hdfs高可用的方式来安装。

    1、 创建用户
    命令:
    useradd -m bigdatapasswd bigdata


    2、 安装jdk
    解压:
    tar -zvf jdk-8u191-linux-x64.tar.gz

    修改环境变量
    JAVA_HOME=/usr/lib/jvm/java-8-openjdk-arm64JRE_HOME=/usr/lib/jvm/java-8-openjdk-arm64/jreCLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/libPATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/binexport JAVA_HOME JRE_HOME PATH CLASSPATH


    3、 修改hosts
    修改/etc/hosts
    10.211.55.12hadoop01# NameNode Active 10.211.55.13hadoop01# NameNode Standby 10.211.55.14hadoop01# DataNode1


    4、 配置ssh免密登录 在每一台需要配置的机器上执行以下命令:
    ssh-keygen –t rsa

    执行完成后默认会在其根目录下创建一个.ssh目录,在这个目录中有id_rsa和id_rsa.pub两个文件。然后将所有机器的id_rsa.pub文件的内容都合并到一个新的文件中,文件命名为authorized_keys,然后将该文件分发到各台机器上。
    最后,使用ssh登录其他机器测试是否完成免密。

    5、 安装zookeeper
    下载链接:https://zookeeper.apache.org/releases.html

    解压:
    tar -zxvf apache-zookeeper-3.5.7-bin.tar.gz


    修改配置文件

    将zookeeper下conf目录中的zoo_sample.cfg文件复制一份,新复制的文件重命名为zoo.cfg文件。

    修改内容如下:
    #zookeeper的文件路径dataDir=/root/zookeeper/data#zookeeper集群节点信息server.1=hadoop01:2888:3888server.2=hadoop02:2888:3888server.3=hadoop03:2888:3888

    #server.A=B:C:D 其中A是一个数字,代表这是第几号服务器;B是服务器的IP地址;C表示服务器与群集中的“领导者”交换信息的端口;当领导者失效后,D表示用来执行选举时服务器相互通信的端口。
    然后在上述设置的文件目录中新建一个文件,文件名为myid,文件内容为一个数字。例如上述配置的hadoop01对应的是server.1,它的myid的文件内容就是1。

    配置环境变量
    修改/etc/profile文件
    export ZOOKEEPER_HOME=/root/zookeeperexport PATH=$PATH:$ZOOKEEPER_HOME/bin


    启动

    启动命令如下
    #启动zkServer.sh start#查询状态zkServer.sh status


    6、 安装hadoop
    对于三台节点的配置安排如下:

    hadoo01:journalnode、namenode、datanode、resourcemanager、nodemanager
    hadoo02:journalnode、namenode、datanode、resourcemanager、nodemanager
    hadoo03:journalnode、datanode、nodemanager
    下载链接:https://hadoop.apache.org/releases.html

    解压:
    tar -zxvf hadoop-2.7.6.tar.gz


    修改配置文件:
    hadoop的配置文件在解压后文件夹的etc目录下的hadoop目录中。

    修改core-site.xml
    fs.defaultFShdfs://nns1io.file.buffer.size131072hadoop.tmp.dir/data/HadoopData/HDFSDatahadoop.proxyuser.root.hosts*hadoop.proxyuser.root.groups*ha.zookeeper.quorumhadoop01:2181,hadoop02:2181,hadoop03:2181


    配置hdfs-site.xml
    dfs.nameservicesnns1dfs.ha.namenodes.nns1nn1,nn2dfs.namenode.rpc-address.nns1.nn1hadoop01:9000dfs.namenode.rpc-address.nns1.nn2hadoop02:9000dfs.namenode.http-address.nns1.nn1hadoop01:50070dfs.namenode.http-address.nns1.nn2hadoop02:50070dfs.namenode.shared.edits.dirqjournal://hadoop01:8485; hadoop02:8485; hadoop03:8485/nns1dfs.client.failover.proxy.provider.nns1org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProviderdfs.ha.fencing.methodssshfencedfs.ha.fencing.ssh.private-key-files/root/.ssh/id_rsadfs.journalnode.edits.dir/data/HadoopData/HDFSData/journaldfs.ha.automatic-failover.enabledtruedfs.namenode.name.dir/data/HadoopData/HDFSData/namedfs.datanode.data.dir/data/HadoopData/HDFSData/datadfs.replication3dfs.webhdfs.enabledtrue


    配置mapred-site.xml
    mapreduce.framework.nameyarn


    配置yarn-site.xml
    yarn.resourcemanager.ha.enabledtrueyarn.resourcemanager.ha.rm-idsrm1,rm2 yarn.resourcemanager.cluster-idcluster1-yarnyarn.resourcemanager.hostname.rm1hadoop01yarn.resourcemanager.hostname.rm2hadoop02yarn.resourcemanager.ha.idrm1yarn.resourcemanager.recovery.enabledtrueyarn.resourcemanager.zk-addresshadoop01:2181,hadoop02:2181,hadoop03:2181yarn.nodemanager.aux-servicesmapreduce_shuffleyarn.nodemanager.aux-services.mapreduce.shuffle.classorg.apache.hadoop.mapred.ShuffleHandler


    配置slaves
    hadoop01hadoop02hadoop03

    slaves中配置的服务器ip,没改hosts文件则直接写ip地址便可。该文件配置的服务器在启动的时候会启动datanode和nodemanager两个进程。

    7、 初始化
    在初始化前需要将所有机器都配置好hadoop
    (一般直接复制上述配置好的文件,注意yarn-site.xml中的id,还有保证配置中的路径在每台机器上都存在)。

    (1) 启动zookeeper
    初始化之前需要保证zookeeper能正常提供服务,启动命令之前有提到

    (2) 启动journalnode
    初始化前需要保证journalnode已经启动。启动脚本在hadoop的sbin目录下,名字为hadoop-daemon.sh。
    启动命令如下:
    ./hadoop-daemon.sh start journalnode


    (3) 格式化zk
    命令如下
    hdfs zkfc -formatZK


    (4) 格式化hdfs
    命令如下
    hadoop namenode -format

    这一步会在上述hdfs-site.xml,配置的dfs.namenode.name.dir路径下创建一系列文件。

    (5) 同步元数据
    在另一台配置了namenode的服务器上执行以下命令:
    hdfs namenode -bootstrapStanby

    上述命令如果执行失败,还有一个简单的方法可以同步元数据。可以直接将步骤4中在第一台生成的文件复制到第二台服务器。

    (6) 启动hadoop
    同样在sbin目录下,使用start-all.sh可以启动所有服务,使用start-dfs.sh和start-yarn.sh可以分别启动hdfs和yarn。
    使用hadoop-deamon.sh和yarn-deamon.sh分别别启动hdfs和yarn的单个进程。

    (7) 安装fuster
    安装命令如下:
    yum install psmisc


    (8) 网页访问
    hdfs网页访问50070端口,yarn网页访问8088。这两个端口可以在配置文件中修改。
    正常启动则可以访问到以下页面。
    【Hadoop源码分析二安装配置过程详解】Hadoop源码分析二安装配置过程详解
    文章图片

    Hadoop源码分析二安装配置过程详解
    文章图片

    以上就是Hadoop源码分析二安装配置过程的详细内容,本系列下一篇文章传送门Hadoop源码分析三启动及脚本剖析更多Hadoop源码分析的资料请持续关注脚本之家!

      推荐阅读