hadoop伪分布式部署(4)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: hadoop伪分布式部署(4)

分布式部署


1.规划和准备


  • 规划

咋规划啊,就一个电脑,但是部署的内容还是需要知道的,麻雀虽小,五脏俱全。每个hadoop环境,包含一个hdfs和一个yarn。
具体如下

image.png

  • 准备
    关闭防火墙(看前面的文章)、静态ip(192.168.157.121)、设置主机名称为bigdata121


2.解压方式安装hadoop2.8.4和jdk8并配置环境变量


①压缩包位置


1dc618a0ed9580ce8bfa6facb208c08f.png


②解压位置


5d4c6812c8535adbb050f4ddf2e1bce8.png


③配置环境变量


vi /etc/profile

后面追加下面的代码

export JAVA_HOME=/opt/mod/jdk1.8.0_144
export HADOOP_HOME=/opt/mod/hadoop-2.8.4
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin


source /etc/profile


3.配置hdfs


切换到/opt/mod/hadoop-2.8.4/etc/hadoop目录

1dc618a0ed9580ce8bfa6facb208c08f.png


1.配置core-site.xml


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


2.配置hdfs-site.xml


<!--数据冗余数-->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<!--secondary的地址-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>bigdata121:50090</value>
</property>
<!--关闭权限-->
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>


3.修改hadoop-env.sh


25行指定自己的java_home


24 # The java implementation to use.
25 export JAVA_HOME=/opt/mod/jdk1.8.0_144


至此,hdfs已经部署成功了


4.测试


格式化Namenode

hdfs namenode -format

启动hdfs


start-dfs.sh


命令查看hdfs是否启动

1dc618a0ed9580ce8bfa6facb208c08f.png

浏览器打开测试

http://192.168.157.121:50070

5d4c6812c8535adbb050f4ddf2e1bce8.png

出现这个页面就成功了。

测试一个上传文件

在 /opt/mod下新建个test文件,内容如下

1dc618a0ed9580ce8bfa6facb208c08f.png

切换到/opt/mod下,上传到hdfs根目录去


hadoop fs -put test / 

2个地方可以看到


5d4c6812c8535adbb050f4ddf2e1bce8.png

1dc618a0ed9580ce8bfa6facb208c08f.png

自此hdfs配置成功,下面配置yarn。


yarn配置


切换到/opt/mod/hadoop-2.8.4/etc/hadoop目录下


1.配置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>bigdata121</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>


2.配置mapred-site.xml


因为没有mapred-site.xml,可以使用

cp mapred-site.xml.template mapred-site.xml

克隆一份

然后修改mapred-site.xml


<configuration>
<!-- 指定mr运行在yarn上-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!--历史服务器的地址-->
<property>
<name>mapreduce.jobhistory.address</name>
<value>bigdata121:10020</value>
</property>
<!--历史服务器页面的地址-->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>bigdata121:19888</value>
</property>
</configuration>


3.修改yarn-env.sh


明确指定全路径java目录

23行


22 # some Java parameters
 23  export JAVA_HOME=/opt/mod/jdk1.8.0_144


4.修改mapred-env.sh


第16行


 

16  export JAVA_HOME=/opt/mod/jdk1.8.0_144

自此,yarn已经配置好了


5.测试


执行start-yarn.sh


5d4c6812c8535adbb050f4ddf2e1bce8.png46a9d80a6e05e4e3b19d57a0ee70bcdf.png


以上2图都说明yarn也已经启动了。


自此,hadoop伪分布部署已经全部部署功能, 补充点概念


为什么要格式化?


NameNode主要被用来管理整个分布式文件系统的命名空间(实际上就是目录和文件)的元数据信息,同时为了保证数据的可靠性,还加入了操作日志,所以,NameNode会持久化这些数据(保存到本地的文件系统中)。对于第一次使用HDFS,在启动NameNode时,需要先执行-format命令,然后才能正常启动NameNode节点的服务。


格式化做了哪些事情?


在NameNode节点上,有两个最重要的路径,分别被用来存储元数据信息和操作日志,而这两个路径来自于配置文件,它们对应的属性分别是dfs.name.dir和dfs.name.edits.dir,同时,它们默认的路径均是/tmp/hadoop/dfs/name。格式化时,NameNode会清空两个目录下的所有文件,之后,会在目录dfs.name.dir下创建文件

hadoop.tmp.dir 这个配置,会让dfs.name.dir和dfs.name.edits.dir会让两个目录的文件生成在一个目录里


启动集群得命令:


Namenode的主节点:sbin/start-dfs.sh


Yarn的主节点:sbin/stop-yarn.sh


注意:Namenode和ResourceManger如果不是同一台机器,不能在NameNode上启动 yarn,应该在ResouceManager所在的机器上启动yarn。


自此,本文大功告成!!


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
1月前
|
分布式计算 资源调度 Hadoop
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
62 2
|
3月前
|
存储 分布式计算 算法
探索Hadoop的三种运行模式:单机模式、伪分布式模式和完全分布式模式
在配置Hadoop集群之前,了解这三种模式的特点、适用场景和配置差异是非常重要的。这有助于用户根据个人需求和资源情况,选择最适合自己的Hadoop运行模式。在最初的学习和开发阶段,单机模式和伪分布式模式能为用户提供便利和成本效益。进而,当用户要处理大规模数据集时,完全分布式模式将是理想的选择。
170 2
|
3月前
|
分布式计算 资源调度 Hadoop
Hadoop入门基础(二):Hadoop集群安装与部署详解(超详细教程)(二)
Hadoop入门基础(二):Hadoop集群安装与部署详解(超详细教程)(二)
|
3月前
|
分布式计算 Ubuntu Hadoop
Hadoop入门基础(二):Hadoop集群安装与部署详解(超详细教程)(一)
Hadoop入门基础(二):Hadoop集群安装与部署详解(超详细教程)(一)
|
3月前
|
SQL 分布式计算 Hadoop
centos7通过CDH部署Hadoop
centos7通过CDH部署Hadoop
|
3月前
|
分布式计算 Java Linux
centos7通过Ambari2.74部署Hadoop
centos7通过Ambari2.74部署Hadoop
|
3月前
|
存储 分布式计算 监控
Hadoop在云计算环境下的部署策略
【8月更文第28天】Hadoop是一个开源软件框架,用于分布式存储和处理大规模数据集。随着云计算技术的发展,越来越多的企业开始利用云平台的优势来部署Hadoop集群,以实现更高的可扩展性、可用性和成本效益。本文将探讨如何在公有云、私有云及混合云环境下部署和管理Hadoop集群,并提供具体的部署策略和代码示例。
110 0
|
5月前
|
分布式计算 Hadoop 网络安全
|
5月前
|
分布式计算 Hadoop Java
|
5月前
|
分布式计算 Hadoop 大数据
【大数据】Hadoop下载安装及伪分布式集群搭建教程
【大数据】Hadoop下载安装及伪分布式集群搭建教程
216 0