hadoop 全分布式环境搭建—— 详细步骤

材料:三台 linux 虚拟机 hadoop2.7.2 版本 以下全分布式搭建步骤

:前期分别 配置好JDK 创建hadoop 用户

设置好主机名称 hosts 主机地址映射  免密登录  防火墙关闭  三台虚拟机的互相通信

开始安装:在/opt下建立一个 software 文件夹

第一步:修改seLinux文件中 目录文件地址 /ect/sysconfig/selinux

SELINUX=disabled

第二步:将hadoop 传到 系统中,并解压到 /opt/software 中,(注意 hadoop用户的权限)

第三步,修改/etc/profile 和 etc/hadoop hadoop-env.sh 配置环境,和

mapred-env.sh yarn-env.sh 环境配置

 

第四步,配置 core-site.xml hdfs-site.xml yarn-site.xml mapred-site.xml 

1 .core-site.xml

(1) 配置HDFS的路径的地址

  <property>

扫描二维码关注公众号,回复: 3941321 查看本文章

        <name>fs.defaultFS</name>

        <value>hdfs://hadoop01:8020</value>

    </property>

(2)修改hadoop临时保存目录

<property>

        <name>hadoop.tmp.dir</name>

        <value>/opt/app/hadoop-2.7.2/data/tmp</value>

</property>

2.hdfs-site.xml

(1) 配置HDFS 的复制因子

<property>

        <name>dfs.replication</name>

        <value>3</value>

 </property>

(2) 关闭HDFS 权限检查

<property>

           <name>dfs.permissions.enabled</name>

           <value>false</value>

</property>

(3) HDFS WEB访问服务器的主机名和端口号

<property>

  <name>dfs.namenode.http-address</name>

  <value>0.0.0.0:50070</value>//0.0.0.0代表本机

</property>

(4)定义secondarynamenode 外部地址 访问的主机和端口

<property>

  <name>dfs.namenode.secondary.http-address</name>

  <value>hadoop03:50090</value> //原来0.0.0.0 因为在hadoop03中开启 要修改hadoop03

</porperty>

(5) 配置 namenode  fsimage  edites  存储目录

<property>

  <name>dfs.namenode.name.dir</name>

  <value>file://${hadoop.tmp.dir}/dfs/name</value>

</property>

(6) 配置namednoe  edits 存储模式

<property>

  <name>dfs.namenode.edits.dir</name>

  <value>${dfs.namenode.name.dir}</value>

</property>

(7) 配置datanode 数据存储目录

<property>

  <name>dfs.datanode.data.dir</name>

  <value>file://${hadoop.tmp.dir}/dfs/data</value>

</property>

(8) 修改secondaryNameNode fsimage  的存储路径

<property>

  <name>dfs.namenode.checkpoint.dir</name>

  <value>file://${hadoop.tmp.dir}/dfs/namesecondary</value>

</property>

(9) 修改secondaryNameNode edits 的存储路径

<property>

  <name>dfs.namenode.checkpoint.edits.dir</name>

  <value>${dfs.namenode.checkpoint.dir}</value>

</property>

3. mapred-site.xml

(1) 设置Mapreduce 框架运行名称yarn

<property>

        <name>mapreduce.framework.name</name>

        <value>yarn</value>

 </property>

(2) 配置历史服务器的web访问主机

<property>

        <name>mapreduce.jobhistory.webapp.address</name>

        <value>hadoop01:19888</value>

 </property>

(3) Uber模式开启

<property>

  <name>mapreduce.job.ubertask.enable</name>

  <value>true</value>

</property>

4. yarn-site.xml

(1) 设置yarn 中的服务类

<property>

        <name>yarn.nodemanager.aux-services</name>

        <value>mapreduce_shuffle</value>

</property>

(2) 配置resourcemanager 的主机位置

<property>

    <description>The hostname of the RM.</description>

    <name>yarn.resourcemanager.hostname</name>

     <value>hadoop02</value>//原本0.0.0.0 因为该服务在hadoop02中开启修改成hadoop02

</property>

(3) 启用日志聚集的功能

<property>

    <name>yarn.log-aggregation-enable</name>

    <value>true</value>

</property>

(4)    设置HDFS上日志的保存时间

<property>

   <name>yarn.nodemanager.log.retain-seconds</name>

    <value>10800</value>

 </property>

第五步 .配置完成之后,在slaves 配置从节点的主机名称

hadoop01

hadoop02

hadoop03

格式化

首先要记住,不要频繁的格式化namenode, 如果非要格式化namenode,先删除tmp目录中的内容 ,清空之前,最好把所有的进程jps 中的残存的服务关掉,如果不关闭的话会存在遗留的进程,就有可能占用之前的端口号

对服务器中的服务进行规划

Hadoop01         hadoop02          hadoop03

Namenode         datanode           datanode

Datanode          resourcemanager     nodemanager

Nodemanager       nodemanager        secondaryNamenode

Historyserver

猜你喜欢

转载自blog.csdn.net/mswuxianshen/article/details/83349517