欢迎投稿

今日深度:

【Hadoop】Hadoop 2.x 完全分布式环境搭建,

【Hadoop】Hadoop 2.x 完全分布式环境搭建,


1、前期准备:克隆
       克隆前需要关闭所有正在运行的服务进程,然后关闭系统。克隆需要选择完整克隆。克隆出两台虚拟机,共三台。
       克隆后需要修改配置:
       (1)/etc/sysconfig/network中的HOSTNAME,使得三台虚拟机的hostname不同(永久生效)。
       (2)/etc/hosts中的主机名和IP地址的映射。三台虚拟机的映射都要有。
       (3)/etc/udev/rules.d/70-persistent-net.rules中修改MAC地址,因为MAC地址是唯一的。
2、对机器配置与服务进行规划
(1)配置
        hadoop01            hadoop02            hadoop03
        内存:50G          内存:50G          内存:50G
        CPU:20核         CPU:20核        CPU:20核
        硬盘:100TB      硬盘:100TB      硬盘:100TB
(2)服务
        hadoop01            hadoop02                 hadoop03
        NameNode          ResourceManager  SecondaryNameNode
        DataNode            DataNode                 DataNode                ->存储,消耗硬盘
        NodeManager     NodeManager          NodeManager         ->分析计算,消耗资源
        HistoryServer
3、搭建过程
(1)解压Hadoop
$ tar -zxf /opt/software/hadoop-2.5.0.tar.gz -C /opt/app/ (一定是普通用户解压,如beifeng)
(2)指定Java的安装路径,配置hadoop-env.sh,mapred-env.sh,yarn-env.sh文件中的
export JAVA_HOME=/opt/modules/jdk1.7.0_67
(3)配置用户自定义的文件,core-site.xml,hdfs-site.xml,yarn-site.xml,mapred-site.xml。
core-site.xml:

<configuration>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://hadoop-senior.ibeifeng.com:8020</value>
        </property>
        <property>
                <name>hadoop.tmp.dir</name>
                <value>/opt/app/hadoop-2.5.0/data/tmp</value>
        </property>
        <property>
                <name>hadoop.http.staticuser.user</name>
                <value>beifeng</value>
        </property>
</configuration>

hdfs-site.xml:

<configuration>
        <property>
                <name>dfs.permissions.enabled</name>
                <value>false</value>
        </property>
        <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>hadoop-senior03.ibeifeng.com:50090</value>
        </property>
</configuration>

slaves:添加所有节点的主机名
hadoop-senior.ibeifeng.com
hadoop-senior02.ibeifeng.com
hadoop-senior03.ibeifeng.com
yarn-site.xml:

<configuration>
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>hadoop-senior02.ibeifeng.com</value>
        </property>
        <property>
                <name>yarn.log-aggregation-enable</name>
                <value>true</value>
        </property>

        <property>
                <name>yarn.log-aggregation.retain-seconds</name>
                <value>106800</value>
        </property>
</configuration>

mapred-site.xml:

<configuration>
        <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.address</name>
                <value>hadoop-senior.ibeifeng.com:10020</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.webapp.address</name>
                <value>hadoop-senior.ibeifeng.com:19888</value>
        </property>
</configuration>

(4)分发配置文件到各个节点上
       拷贝之前先将share目录下的doc文件夹删除,减少拷贝的时间。
       scp:s代表SSH协议,远程拷贝,将一台机器的配置发送到其他机器上,使其他机器具有相同的配置。
$ scp -r hadoop-2.5.0/ hadoop-senior02.ibeifeng.com:/opt/app
$ scp -r hadoop-2.5.0/ hadoop-senior03.ibeifeng.com:/opt/app
       拷贝之前,其他节点上要同样创建相同的目录。
(5)格式化namenode(在hadoop-senior上):$ bin/hdfs namenode -format
(6)在hadoop-senior上启动namenode和datanode和nodemanager,
          在hadoop-senior02上启动datanode和resourcemanager和nodemanager,
          在hadoop-senior03上启动datanode和secondarynamenode和nodemanager。
$ sbin/hadoop-daemon.sh start namenode
$ sbin/hadoop-daemon.sh start datanode
$ sbin/hadoop-daemon.sh start secondarynamenode
$ sbin/yarn-daemon.sh start resourcemanager
$ sbin/yarn-daemon.sh start nodemanager
       在hadoop-senior上启动historyserver:
$ sbin/mr-jobhistory-daemon.sh start historyserver
4、完全分布式多节点SSH免密码登陆
在三台虚拟机上分别配置:
$ ssh-keygen -t rsa
$ ssh-copy-id hadoop-senior.ibeifeng.com
$ ssh-copy-id hadoop-senior02.ibeifeng.com
$ ssh-copy-id hadoop-senior03.ibeifeng.com
即可实现三台虚拟机免密码互相登陆,如在hadoop-senior上输入:
$ ssh hadoop-senior02.ibeifeng.com

www.htsjk.Com true http://www.htsjk.com/Hadoop/39750.html NewsArticle 【Hadoop】Hadoop 2.x 完全分布式环境搭建, 1、前期准备:克隆 克隆前需要关闭所有正在运行的服务进程,然后关闭系统。克隆需要选择完整克隆。克隆出两台虚拟机,共三台。 克隆后需...
相关文章
    暂无相关文章
评论暂时关闭