Hadoop——环境搭建

序言

 

Centos7环境设置

1: 静态ip的设置

2:主机名的设置

  vim /etc/sysconfig/network # 编辑network文件修改hostname行(重启生效)

  HOSTANME=node1

  或者通过命令

  hostnamectl --static set-hostname node1

3:hosts文件的修改(ip和主机名的映射关系)

  127.0.0.1 localhost node1 localhost4 localhost4.localdomain4

  ::1 localhost node1 localhost6 localhost6.localdomain6

  192.168.22.129 node1

4:关闭防火墙——必须

  • firewall-cmd --state  #查看防火墙
  • systemctl status firewalld #查看防火墙
  • systemctl stop firewalld #临时关闭防火墙
  • systemctl start firewalld #临时打开防火墙
  • systemctl disable firewalld #开机禁止启动防火墙
  • systemctl enable firewalld #开机启动防火墙

5:ssh免密码登录——必须

  执行产生密钥命令:ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

  执行产生命令:cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

  验证:ssh localhost

6:JDK的安装(jdk1.8) ——必须

本地模式安装

Hadoop本地模式只是用于本地开发调试,或者快速安装体验Hadoop,这部分做简单的介绍。

注意:本地模式不能hdfs,只能测试mapreduce。

1.拷贝hadoop

将hadoop-2.10.0.tar.gz拷贝并解压到/usr/local/hadoop目录

tar zxvf hadoop-2.10.0.tar.gz

2.配置hadoop环境变量

打开/etc/profile文件,配置hadoop环境变量 。

文件结尾新增以下配置

export HADOOP_HOME=/usr/local/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

#保存文件后执行以下命令刷新配置
source /etc/profile

3.修改配置文件hadoop-env.sh

vi hadoop-env.sh
export JAVA_HOME=/usr/local/java/jdk1.8.0_241

4.执行wordcount demo

建立测试输入文件/usr/local/hadoop/input/data1.txt

建立结果输出位置:/usr/local/hadoop/output

执行命令

hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar wordcount  /usr/local/hadoop/input/data1.txt /usr/local/hadoop/output/wordcountresult

查看结果

cat /usr/local/hadoop/output/wordcountresult/part-r-00000

伪分布式

分别修改四个配置文件

hadoop-env.sh

export JAVA_HOME=/usr/local/java/jdk1.8.0_241

core-site.xml

<configuration>
    <!-- 制定HDFS的老大(NameNode)的地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
    <!-- 指定hadoop运行时产生文件的存储目录 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop/tmp</value>
    </property>
</configuration>
View Code

hdfs-site.xml

<configuration>
    <!-- 指定HDFS保存数据副本的数量 -->
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>
View Code

mapred-site.xml

<configuration>
    <!-- 指定mr运行在yarn上 -->
    <property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value>
    </property>
</configuration>
View Code

注意如果没有mapred-site.xml而只有mapred-site.xml.template,要#cp mapred-site.xml.template mapred-site.xml(复制一份该模板mapred-site.xml.template更名为mapred-site.xml)

yarn-site.xml

<configuration>
<!-- Site specific YARN configuration properties -->
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>192.168.229.133</value>   <!--填写自定义的主机名/ip-->
        </property>
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
        <property>
                <name>yarn.resourcemanager.address</name>
                <value>0.0.0.0:8032</value>
         </property>
         <property>
                <name>yarn.resourcemanager.scheduler.address</name>
                <value>0.0.0.0:8030</value>
         </property>
         <property>
                <name>yarn.resourcemanager.resource-tracker.address</name>
                <value>0.0.0.0:8031</value>
         </property>
         <property>
                <name>yarn.resourcemanager.admin.address</name>
                <value>0.0.0.0:8033</value>
         </property>
         <property>
                <name>yarn.resourcemanager.webapp.address</name>
                <value>0.0.0.0:8088</value>
         </property>
</configuration>
View Code

启动

hdfs namenode -format

start-dfs.sh

start-yarn.sh

start-all.sh

HDFS管理界面

http://localhost:50070/

http://192.168.229.133:50070

yarn MR管理界面

start-yarn.sh

stop-yarn.sh

http://localhost:8088

http://192.168.229.133:8088/

 

测试

HDFS简单测试

上传一个文件至HDFS : hadoop fs -put xxxx.tar.gz hdfs://192.168.229.133:9000/

从HDFS下载一个文件 : hadoop fs -get hdfs://192.168.229.133:9000/xxxx.tar.gz

MapReduce简单测试

这里直接运行一个hadoop自带的求圆周率的example:

cd /usr/local/hadoop/share/hadoop/mapreduce

hadoop jar hadoop-mapreduce-examples-2.10.0.jar pi 5 5

分布式集群模式

 

 

Win10安装(生产环境不推荐)

Hadoop官网下载地址

Hadoop历史版本

清华大学镜像

winutils

资料

https://www.cnblogs.com/qingyunzong/category/1169344.html

https://www.cnblogs.com/edisonchou/category/542546.html

hadoop.apache.org

hadoop3.0搭建本地模式和伪分布模式

http://stop-yarn.sh/

posted @ 2020-02-23 21:58  ~沐风  阅读(234)  评论(0编辑  收藏  举报