美文网首页
ubuntu16.04安装hadoop3.02(伪分布式)+集群

ubuntu16.04安装hadoop3.02(伪分布式)+集群

作者: id_rsa | 来源:发表于2018-11-01 21:01 被阅读0次

单机模式 环境已经配好

ubuntu16.04安装hadoop3.02单机模式

配置Hadoop伪分布式环境

    cd /usr/local/hadoop/etc/hadoop/

修改core-site.xml

<configuration>
        <property>
             <name>hadoop.tmp.dir</name>
             <value>file:/usr/local/hadoop/tmp</value>
             <description>Abase for other temporary directories.</description>
        </property>
        <property>
             <name>fs.defaultFS</name>
             <value>hdfs://localhost:9000</value>
        </property>
</configuration>

修改hdfs-site.xml

<configuration>
        <property>
             <name>dfs.replication</name>
             <value>1</value>
        </property>
        <property>
             <name>dfs.namenode.name.dir</name>
             <value>file:/usr/local/hadoop/tmp/dfs/name</value>
        </property>
        <property>
             <name>dfs.datanode.data.dir</name>
             <value>file:/usr/local/hadoop/tmp/dfs/data</value>
        </property>
</configuration>

进行NameNode格式化
进入/usr/local/hadoop

执行./bin/hdfs namenode -format (第一次设置的时候格式化 下次直接启动就好)

启动NameNode 和 DataNode

./sbin/start-dfs.sh 

输入jps,会出现如下进程

image.png

访问localhost:9870(hadoop3.X的webUI已经改到端口 localhost:9870上面,而不是原来的50070,网上大多数的教程都是2.X的,当然不行)

image.png

关闭dfs

    ./sbin/stop-dfs.sh

配置Yarn

    cd /usr/local/hadoop/etc/hadoop

1 配置mapred-site.xml (hadoop2.x 没有 mapred-site.xml 需要自己创建 hadoop3.x 可以直接打开 mapred-site.xml)

配置mapred-site.xml

mv mapred-site.xml.template mapred-site.xml   #hadoop2.x 执行此命令  hadoop3.x 不必执行
<configuration>
        <property>
             <name>mapreduce.framework.name</name>
             <value>yarn</value>
        </property>
</configuration>

2 配置yarn-site.xml

<configuration>
        <property>
             <name>yarn.nodemanager.aux-services</name>
             <value>mapreduce_shuffle</value>
            </property>
</configuration>

3 启动Yarn

cd /usr/local/hadoop/
./sbin/start-dfs.sh   #启动dfs
./sbin/start-yarn.sh
./sbin/mr-jobhistory-daemon.sh start historyserver 

前面我已经启动过dfs了 所以。。

image.png

访问localhost:8088

image.png

关闭Yarn

./sbin/stop-dfs.sh
./sbin/stop-yarn.sh
./sbin/mr-jobhistory-daemon.sh stop historyserver
image.png

集群

说明 :集群是在伪分布式是的基础上搭建的 只需要改一些配置文件 然后 把配置好的master克隆就行

1 修改 /etc/hostname

sudo vim /etc/hostname
将内容修改为master/slave1/slave2

2 修改 /etc/hosts

image.png

3 配置 master 节点可通过 SSH 无密码访问 slave1

单机模式 已经配过ssh免密码登录 所以把 master 的 authorized_keys拷贝到slave1 的 ./ssh文件下即可

ubuntu 16.04安装hadoop3.02单机模式

image.png

master 尝试无密码登录slave1的ssh

image.png

修改配置文件

1 修改 core-site.xml

cd /usr/local/hadoop/etc/hadoop
<configuration>
        <property>
             <name>hadoop.tmp.dir</name>
             <value>file:/usr/local/hadoop/tmp</value>
             <description>Abase for other temporary directories.</description>
        </property>
        <property>
             <name>fs.defaultFS</name>
             <value>hdfs://master:9000</value>
        </property>
</configuration>
image.png

解释下:第一个fs.defaultFS设置master机为namenode hadoop.tmp.dir配置Hadoop的一个临时目录,用来存放每次运行的作业jpb的信息。

2 修改 hdfs-site.xml

<configuration>
        <property>
             <name>dfs.replication</name>
             <value>2</value>
        </property>
        <property>
             <name>dfs.namenode.name.dir</name>
             <value>file:/usr/local/hadoop/tmp/dfs/name</value>
        </property>
        <property>
             <name>dfs.datanode.data.dir</name>
             <value>file:/usr/local/hadoop/tmp/dfs/data</value>
        </property>
        <property>
            <name>dfs.namenode.secondary.http-address</name>
           <value>slave1:9001</value>
      </property>
</configuration>
image.png

dfs.namenode.name.dir是namenode存储永久性的元数据的目录列表。这个目录会创建在master机上。dfs.namenode.data.dir是datanode存放数据块的目录列表,这个目录在slave11和slave1机都会创建。 dfs.replication 设置文件副本数,这里两个datanode,所以设置副本数为2。

配置mapred-site.xml

<configuration>
        <property>
             <name>mapreduce.framework.name</name>
             <value>yarn</value>
        </property>
       <property>
            <name>mapreduce.application.classpath</name>
            <value>
  /usr/local/hadoop/etc/hadoop,
  /usr/local/hadoop/share/hadoop/common/*,
  /usr/local/hadoop/share/hadoop/common/lib/*,
  /usr/local/hadoop/share/hadoop/hdfs/*,
  /usr/local/hadoop/share/hadoop/hdfs/lib/*,
  /usr/local/hadoop/share/hadoop/mapreduce/*,
  /usr/local/hadoop/share/hadoop/mapreduce/lib/*,
  /usr/local/hadoop/share/hadoop/yarn/*,
  /usr/local/hadoop/share/hadoop/yarn/lib/*
           </value>
    </property>
</configuration>
image.png

解释下:这里设置的是运行jobtracker的服务器主机名和端口,也就是作业将在master主机的9001端口执行

配置yarn-site.xml

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
        <value>org.apache.hadoop.mapred.ShuffleHandle</value>
    </property>
    <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>master:8025</value>
    </property>
    <property>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>master:8030</value>
    </property>
    <property>
        <name>yarn.resourcemanager.address</name>
        <value>master:8040</value>
    </property>
</configuration>
image.png

从master机器启动hadoop集群服务

进入/usr/local/hadoop
执行./bin/hdfs namenode -format 进行格式化操作

启动 ./sbin/start-all.sh

image.png

slave1 jps查看

image.png

浏览器打开master:9870

image.png

浏览器打开master:8088

image.png

master关闭集群服务

image.png

参考

Hadoop3.0.0在Ubuntu16.04上分布式部署
ubuntu16.04搭建hadoop集群环境
hadoop分布式集群安装

相关文章

网友评论

      本文标题:ubuntu16.04安装hadoop3.02(伪分布式)+集群

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