hadoop伪分布式安装&启动HDFS

 

hadoop是基于java编写的分布式框架,要安装hadoop,必须先安装java的开发环境

jdk下载

http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html

hadoop官网下载

http://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.1.1/hadoop-3.1.1.tar.gz

 

一、 安装

用FileZilla连接远程的CentOS虚拟机

将下载的jdk拖入用户目录下

 

查看根目录下jdk解压后的文件

在/opt下创建文件夹module

mkdir module

 

安装JDK:将jdk解压到所创建的/opt/module文件夹下

tar -zxvf jdk-8u202-linux-x64.tar.gz -C /opt/module/

安装HADOOP:同样解压

tar -zxvf hadoop-2.7.2.tar.gz -C /opt/module/

配置java和hadoop的环境变量

将java添加到环境变量中,即将bin目录放在系统环境变量path中

打开配置文件

sudo vim /etc/profile

在文件最后添加(shift+g回到底部,gg回到顶部)

export JAVA_HOME=/opt/module/jdk1.8.0_202
export PATH=$PATH:$JAVA_HOME/bin

export HADOOP_HOME=/opt/module/hadoop-2.7.2
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

保存退出

刷新配置

source /etc/profile

查看java版本

hadoop版本

 

二、hadoop的相关配置

进入到hadoop的安装目录

cd /opt/module/hadoop-2.7.2/

进入hadoop配置的文件夹

cd etc/hadoop/

配置系群:hadoop-env.sh文件 添加JDK的安装路径

                                注:含有env名称的文件,需要对其进行添加JAVA_HOME

添加JAVA_HOME

指定HFDS中的namnode地址以及指定hadoop运行时所产生文件的存储目录

修改core-site.xml    ,HADOOP安装目录下的etc/Hadoop/   末尾添加

<configuration>
    <!-- 指定HDFS中的namenode的地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop100:9000</value>
    </property>
    <!-- 指定hadoop运行时产生文件的存储目录 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/module/hadoop-2.7.2/data/tmp</value>
    </property>
</configuration>

修改hdfs-site.xml副本数量改为1

<configuration>
        <property>
                <name>dfs:replication</name>
                <value>1</value>
        </property>
</configuration>

 

格式化集群

hadoop的安装目录下执行

bin/hdfs namenode -format

启动 namenode , hadoop安装目录下执行

sbin/hadoop-daemon.sh start namenode

启动 datanode  ,hadoop安装目录下执行

sbin/hadoop-daemon.sh start datanode

jps查看当前hadoop运行的java进程

在google浏览器查看hadoop运行情况,对应的ip或主机名+端口号,端口号hadoop2默认50070,hadoop3以上为9870

前提关闭防火墙

service iptables stop    //关闭防火墙
service iptables start   //开启防火墙
service iptables status  //查看防火墙状态
chkconfig iptables off   //永久关闭

三:实现wordcount

创建hdfs的目录

Hadoop的安装目录下 bin/hdfs dfs -mkdir -p /user/Huzee/input

将本地文件上传到HDFS

Hadoop安装目录下 bin/hdfs dfs -put wcinput/wc.input /user/Huzee/input

在hdfs中执行wordcount

 

Datanode和namenode 集群ID相同,它们之间相互交互

t

 

故再次格式化namenode需要删除/opt/module/hadoop-2.7.2/data/tmp/dfs下的data和name里的文件

四:启动YARN并运行MapReduce程序

(1)配置集群

(a) 配置 yarn_env.sh    env等文件需要配置JAVA_HOME

(b) 配置yarn-site.xml

(c) 配置mapred_env.sh  (java_home)

(d) 配置mapred-site.xml.template重新命名为mapred-site.xml

<configuration>
        <!-- defined MR running in YARN -->
        <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
        </property>
</configuration>

(2)启动集群

(a) 启动的前提保证namenode和datanode都正常运行

(b) 启动resourcemanager

[root@hadoop100 hadoop-2.7.2]# sbin/yarn-daemon.sh start resourcemanager

(c) 启动nodemanager 

[root@hadoop100 hadoop-2.7.2]# sbin/yarn-daemon.sh start nodemanager

jps查看进程

yarn端口号8088,在网页中实时看到占用计算内存的大小

 

四:配置历史服务器

1. 配置mapred-site.xml

<configuration>
        <!-- defined MR running in YARN -->
        <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.address</name>
                <value>hadoop100:10020</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.webapp.address</name>
                <value>hadoop100:19888</value>
        </property>
</configuration>

2 启动历史服务器

[root@hadoop100 hadoop-2.7.2]# sbin/mr-jobhistory-daemon.sh start historyserver

3 端口号19888,查询计算时历史参数的情况

配置日志聚集yarn-site.xml

<configuration>
<!-- Site specific YARN configuration properties -->
        <!-- the method of Reducer to get data -->
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>hadoop100</value>
        </property>
        <property>
                <name>yarn.log-aggregation-enable</name>
                <value>true</value>
        </property>
        <!-- logs retain 7 days -->
        <property>
                <name>yarn.log-aggregation.retain-seconds</name>
                <value>604800</value>
        </property>
</configuration>

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值