hadoop分布式集群安装

一、前提

安装jdk,搭建三台虚拟机,配置好ip地址,修改hostname,ssh免密登陆完成,下载hadoop-2.7.2.tar

二、搭建hadoop集群

1.解压hadoop-2.7.2.tar到自己需要的目录下,配置好环境变量

$ sudo vim /etc/profile

export HADOOP_HOME=/usr/hadoop/apps/hadoop-2.7.2

export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

$ source /etc/profile

2.修改8个配置文件,四个*-site.xml,三个*-env.sh,一个slaves

1)一个slaves,指定自己三台服务器的hostname

vim slaves

hadoop01

hadoop02

hadoop03

2)三个*-env.sh,分别是hadoop-env.sh,mapred-env.sh,yarn-env.sh

vim hadoop-env.sh

export JAVA_HOME=/jdk-8 #指定自己jdk安装路径

vim mapred-env.sh

export JAVA_HOME=/jdk-8 #指定自己jdk安装路径

vim yarn-env.sh

export JAVA_HOME=/jdk-8 #指定自己jdk安装路径

3)四个*-site.xml

core-site.xml
    <!-- 指定HDFS中NameNode的地址 -->
    <property>
            <name>fs.defaultFS</name>
          <value>hdfs://hadoop01:9000</value>
    </property>
    <!-- 指定Hadoop运行时产生文件的存储目录 -->
    <property>
            <name>hadoop.tmp.dir</name>
            <value>/usr/hadoop/cdh/hadoop/data/tmp</value>
    </property>
    <!-- Oozie Server的Hostname -->
    <property>
        <name>hadoop.proxyuser.hadoop.hosts</name>
        <value>*</value>
    </property>
    <!-- 允许被Oozie代理的用户组 -->
    <property>
        <name>hadoop.proxyuser.hadoop.groups</name>
        <value>*</value>
    </property>
    
hdfs-site.xml
    <property>
            <name>dfs.replication</name>
            <value>1</value>
    </property>

    <!-- 指定Hadoop辅助名称节点主机配置 -->
    <property>
          <name>dfs.namenode.secondary.http-address</name>
          <value>hadoop03:50090</value>
    </property>
    
mapred-site.xml
    <!-- 配置 MapReduce JobHistory Server 地址 ,默认端口10020 -->
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>hadoop01:10020</value>
    </property>
    <!-- 配置 MapReduce JobHistory Server web ui 地址, 默认端口19888 -->
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>hadoop01:19888</value>
    </property>
    <!-- 指定mr运行在yarn上 -->
    <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
    </property>

yarn-site.xml
    <!-- reducer获取数据的方式 -->
    <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
    </property>

    <!-- 指定YARN的ResourceManager的地址 -->
    <property>
            <name>yarn.resourcemanager.hostname</name>
            <value>hadoop02</value>
    </property>
    
    <!-- 日志聚集功能使能 -->
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>

    <!-- 日志保留时间设置7天 -->
    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>604800</value>
    </property>

    <!-- 任务历史服务 -->
    <property> 
        <name>yarn.log.server.url</name> 
        <value>http://hadoop03:19888/jobhistory/logs/</value> 
    </property>

创建namenode的目录

mkdir -p /usr/hadoop/cdh/hadoop/data/tmp

3.格式化namenode

    $ bin/hdfs namenode -format

4.启动集群

启动hdfs文件系统:不同hostname的机器分配的资源不同,启动时候要注意

   [ hadoop@hadoop02 ~]$ sbin/start-dfs.sh

启动yarn:
   [hadoop@hadoop02 ~] $ sbin/start-yarn.sh

启动历史服务器:
   [hadoop@hadoop01 ~] $ sbin/mr-jobhistory-daemon.sh start historyserver

5.验证启动是否成功

jps查看进程:

[hadoop@hadoop01 ~] $ jps

查看页面:

haoop01:9000

集群中运行 jar

$ hadoop fs -mkdir -p /user/hadoop/input

$ hadoop fs -put wcinput/wc.input /user/hadoop/input

$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount wcinput wcoutput

在haoop01:9000查看输出目录结果

至此安装完成,谢谢观看!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值