Hadoop3.3.4分布式安装

安装前提:已经配置好java环境,所有机器之间ssh的免密登录。
注意:下文中的flinkv1、flinkv2、flinkv3是三台服务器的别名
在这里插入图片描述

1.集群部署规划
注意:NameNode和SecondaryNameNode不要安装在同一台服务器
注意:ResourceManager也很消耗内存,不要和NameNode、SecondaryNameNode配置在同一台
机器上。
在这里插入图片描述
2.上传安装包到linux系统上
在这里插入图片描述
3.进入到Hadoop安装包路径下

[zhangflink@9wmwtivvjuibcd2e ~]$ cd /opt/package/

4.解压安装文件到/opt/module下面

[zhangflink@9wmwtivvjuibcd2e package]$ tar -zxvf hadoop-3.3.4.tar.gz -C ../software/

5.查看是否解压成功

[zhangflink@9wmwtivvjuibcd2e package]$ cd ../software/
[zhangflink@9wmwtivvjuibcd2e software]$ ls

在这里插入图片描述

6.重命名

[zhangflink@9wmwtivvjuibcd2e software]$ mv hadoop-3.3.4/ hadoop
[zhangflink@9wmwtivvjuibcd2e software]$ ls

在这里插入图片描述
7.将Hadoop添加到环境变量
(1)获取Hadoop安装路径

[zhangflink@9wmwtivvjuibcd2e software]$ cd hadoop/
[zhangflink@9wmwtivvjuibcd2e hadoop]$ pwd

在这里插入图片描述
(2)打开/etc/profile文件

[zhangflink@9wmwtivvjuibcd2e hadoop]$ sudo vim /etc/profile

在profile文件末尾添加JDK路径:(shitf+g)

> #HADOOP_HOME 	export
> HADOOP_HOME=/opt/software/hadoop 	
> export PATH=$PATH:$HADOOP_HOME/bin
> export PATH=$PATH:$HADOOP_HOME/sbin

(3)保存后退出

 :wq

(4)分发环境变量文件

[zhangflink@9wmwtivvjuibcd2e hadoop]$ /home/zhangflink/bin/xsync /etc/profile

(5)source 是之生效(3台节点)

[zhangflink@9wmwtivvjuibcd2e hadoop]$ source /etc/profile

8.配置集群
(1)核心配置文件
配置core-site.xml

[zhangflink@9wmwtivvjuibcd2e hadoop]$ cd etc/
[zhangflink@9wmwtivvjuibcd2e etc]$ cd hadoop/
[zhangflink@9wmwtivvjuibcd2e hadoop]$ vim core-site.xml

在这里插入图片描述

在配置文件最下面的configuration中间添加如下配置项

<configuration>
<!-- 指定NameNode的地址 --><property><name>fs.defaultFS</name><value>hdfs://flinkv1:8020</value>
</property>
<!-- 指定hadoop数据的存储目录 --><property><name>hadoop.tmp.dir</name><value>/opt/software/hadoop/data</value>
</property><!-- 配置HDFS网页登录使用的静态用户为atguigu --><property><name>hadoop.http.staticuser.user</name><value>zhangflink</value>
</property><!-- 配置该atguigu(superUser)允许通过代理访问的主机节点 --><property><name>hadoop.proxyuser.zhangflink.hosts</name><value>*</value>
</property>
<!-- 配置该atguigu(superUser)允许通过代理用户所属组 --><property><name>hadoop.proxyuser.zhangflink.groups</name><value>*</value>
</property>
<!-- 配置该atguigu(superUser)允许通过代理的用户--><property><name>hadoop.proxyuser.zhangflink.users</name><value>*</value>
</property>
</configuration>

(2)HDFS配置文件

[zhangflink@9wmwtivvjuibcd2e hadoop]$ vim hdfs-site.xml
<configuration>
<!-- nn web端访问地址--><property><name>dfs.namenode.http-address</name><value>flinkv1:9870</value></property><!-- 2nn web端访问地址--><property><name>dfs.namenode.secondary.http-address</name><value>flinkv3:9868</value></property><!-- 测试环境指定HDFS副本的数量1 --><property><name>dfs.replication</name><value>1</value></property>
</configuration>

在这里插入图片描述
(3)YARN配置文件

[zhangflink@9wmwtivvjuibcd2e hadoop]$ vim yarn-site.xml 
<configuration>
<!-- 指定MR走shuffle --><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><!-- 指定ResourceManager的地址--><property><name>yarn.resourcemanager.hostname</name><value>flinkv2</value></property><!-- 环境变量的继承 --><property><name>yarn.nodemanager.env-whitelist</name><value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value></property><name>yarn.scheduler.minimum-allocation-mb</name><value>512</value></property><property><name>yarn.scheduler.maximum-allocation-mb</name><value>4096</value></property><value>512</value></property><property><name>yarn.scheduler.maximum-allocation-mb</name><value>4096</value></property><!-- yarn容器允许管理的物理内存大小 --><property><name>yarn.nodemanager.resource.memory-mb</name><value>4096</value></property><!-- 关闭yarn对物理内存和虚拟内存的限制检查 --><property><name>yarn.nodemanager.pmem-check-enabled</name><value>false</value></property><property><name>yarn.nodemanager.vmem-check-enabled</name><value>false</value></property>
</configuration>

(4)MapReduce配置文件

[zhangflink@9wmwtivvjuibcd2e hadoop]$ vim mapred-site.xml
<configuration>
<!-- 指定MapReduce程序运行在Yarn上 --><property><name>mapreduce.framework.name</name><value>yarn</value></property>
</configuration>

在这里插入图片描述
(5)配置workers

[zhangflink@9wmwtivvjuibcd2e hadoop]$ vim workers 
flinkv1
flinkv2
flinkv3

9.配置历史服务器
为了查看程序的历史运行情况,需要配置一下历史服务器
(1)配置mapred-site.xml

[zhangflink@9wmwtivvjuibcd2e hadoop]$ vim mapred-site.xml
<!-- 历史服务器端地址 -->
<property><name>mapreduce.jobhistory.address</name><value>flinkv1:10020</value>
</property><!-- 历史服务器web端地址 -->
<property><name>mapreduce.jobhistory.webapp.address</name><value>flinkv1:19888</value>
</property>

10.配置日志的聚集
日志聚集概念:应用运行完成以后,将程序运行日志信息上传到HDFS系统上。
日志聚集功能好处:可以方便的查看到程序运行详情,方便开发调试。
注意:开启日志聚集功能,需要重新启动NodeManager 、ResourceManager和HistoryManager。
(1)配置yarn-site.xml

<!-- 开启日志聚集功能 -->
<property><name>yarn.log-aggregation-enable</name><value>true</value>
</property><!-- 设置日志聚集服务器地址 -->
<property><name>yarn.log.server.url</name><value>http://flinkv1:19888/jobhistory/logs</value>
</property><!-- 设置日志保留时间为7天 -->
<property><name>yarn.log-aggregation.retain-seconds</name><value>604800</value>
</property>

11.分发Hadoop

[zhangflink@9wmwtivvjuibcd2e software]$ /home/zhangflink/bin/xsync hadoop/

12.群起集群
(1)启动集群
如果集群是第一次启动,需要在flinkv1节点格式化NameNode(注意格式化之前,一定要先停止上次启动的所有namenode和datanode进程,然后再删除data和log数据)

[zhangflink@9wmwtivvjuibcd2e hadoop]$ bin/hdfs namenode -format

在这里插入图片描述
(2)启动HDFS
在这里插入图片描述

启动HDFS如果出现以上报错,可能是没有配置java环境变量,首先检查系统java环境是否配置成功
在这里插入图片描述

如果系统环境如上图所示正常,那么就是hadoop的配置文件没有配置java环境变量路径导致。
只需按如下配置hadoop-env.sh文件即可

编辑hadoop-env.sh文件

[zhangflink@9wmwtivvjuibcd2e hadoop]$ vim etc/hadoop/hadoop-env.sh

找到java环境修改配置

JAVA_HOME=/opt/software/jdk1.8.0_212

在这里插入图片描述
分发hadoop配置文件

[zhangflink@9wmwtivvjuibcd2e hadoop]$ /home/zhangflink/bin/xsync etc/

在这里插入图片描述

再次启动HDFS

[zhangflink@9wmwtivvjuibcd2e hadoop]$ sbin/start-dfs.sh

查看进程

[zhangflink@9wmwtivvjuibcd2e hadoop]$ jps

在这里插入图片描述
(3)在配置了ResourceManager的节点(flinkv2)启动YARN

[zhangflink@9wmwtivvjuibcd2e-0001 hadoop]$ sbin/start-yarn.sh

查看进程

[zhangflink@9wmwtivvjuibcd2e hadoop]$ jps

在这里插入图片描述
(4)Web端查看HDFS的Web页面:http://flinkv1:9870/ (云服务器请使用公网IP地址访问,确保端口的安全组入口已经开发)
在这里插入图片描述
(5)Web端查看SecondaryNameNode
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/142729.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

openssl+AES开发实例(linux)

文章目录 一、AES介绍二、AES原理三、AES开发实例 一、AES介绍 AES&#xff08;Advanced Encryption Standard&#xff09;是一种对称密钥加密标准&#xff0c;它是一种对称加密算法&#xff0c;意味着相同的密钥用于加密和解密数据。AES 是 NIST&#xff08;美国国家标准与技…

pg运维之REDUCE WAL BY INCREASING CHECKPOINT DISTANCE

如果你在生产中运行PostgreSQL&#xff0c;你可能已经注意到&#xff0c;调整检查点对调整服务器和提高数据库整体性能是一件非常有益的事情。然而&#xff0c;这里面还有更多的内容。增加检查点的距离也可以帮助实际减少首先创建的WAL的数量。这是对的。这不仅仅是一个性能问题…

nginx四层tcp负载均衡及主备、四层udp负载均衡及主备、7层http负载均衡及主备配置(wndows系统主备、负载均衡)

准备工作 服务器上安装、配置网络负载平衡管理器 windows服务器热备、负载均衡配置-CSDN博客 在windows服务器上安装vmware17 win10 上安装vmware17-CSDN博客 在windows上利用vmware17 搭建centos7 mini版 在windows上利用vmware17 搭建centos7 mini版本服务器-CSDN博客 …

机器学习和深度学习领域的算法和模型

机器学习和深度学习领域有许多算法和模型&#xff0c;以下是一些常见的算法和模型&#xff1a; 线性回归&#xff08;Linear Regression&#xff09;逻辑回归&#xff08;Logistic Regression&#xff09;决策树&#xff08;Decision Tree&#xff09;随机森林&#xff08;Ran…

设计模式-策略模式(Strategy)

设计模式-策略模式&#xff08;Strategy&#xff09; 一、策略模式概述1.1 什么是策略模式1.2 简单实现策略模式1.3 使用策略模式的注意事项 二、策略模式的用途三、策略模式实现方式3.1 简单策略模式3.2 组合策略模式3.3 动态策略模式 一、策略模式概述 1.1 什么是策略模式 …

225.用队列实现栈(LeetCode)

思路 思路&#xff1a;用两个队列实现栈后进先出的特性 &#xff0c;两个队列为空时&#xff0c;先将数据都导向其中一个队列。 当要模拟出栈时&#xff0c;将前面的元素都导入另一个空队列&#xff0c;再将最后一个元素移出队列 实现 实现&#xff1a; 因为C语言没有库可以…

std::map使用自定义的数据结构当做key

一、std::map是按照键的顺序进行排序的&#xff0c;因此需要定义结构类型的比较运算符。通常情况下&#xff0c;你可以通过重载结构类型的小于运算符<来定义比较逻辑。 #include <map>class CKey { public:CKey(int a) { m_a a; }~CKey() default;//也可以在外部(二…

【Linux篇】冯 诺依曼计算机结构体系

详解冯 诺伊曼体系 CPU : 运算器 && 控制器输入设备 : 话筒&#xff0c;摄像头&#xff0c;键盘&#xff0c;鼠标&#xff0c;磁盘&#xff0c;网卡等输出设备 : 显卡&#xff0c;声卡&#xff0c;网卡&#xff0c;磁盘&#xff0c;显示器&#xff0c;打印机等存储器 :…

中睿天下Coremail | 2023年Q3企业邮箱安全态势观察报告

10月25日&#xff0c;北京中睿天下信息技术有限公司联合Coremail邮件安全发布《2023年第三季度企业邮箱安全性研究报告》。2023年第三季度企业邮箱安全呈现出何种态势&#xff1f;作为邮箱管理员&#xff0c;我们又该如何做好防护&#xff1f; 以下为精华版阅读&#xff0c;如需…

景联文科技:驾驭数据浪潮,赋能AI产业——全球领先的数据标注解决方案供应商

根据IDC相关数据统计&#xff0c;全球数据量正在经历爆炸式增长&#xff0c;预计将从2016年的16.1ZB猛增至2025年的163ZB&#xff0c;其中大部分是非结构化数据&#xff0c;被直接利用&#xff0c;必须通过数据标注转化为AI可识别的格式&#xff0c;才能最大限度地发挥其应用价…

arcgis--浮点型栅格数据转整型

利用【Spatial Analyst工具】-【数学】-【转为整型】工具&#xff0c;将浮点型数据转为整型。如下&#xff1a; 【转为整型】对话框参数设计如下&#xff1a; 转换结果如下&#xff1a;

C_8练习题

一、单项选择题(本大题共20小题,每小题2分,共40分。在每小题给出的四个备选项中,选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。) 编写C语言程序一般需经过的几个步骤依次是()。 A.编辑、调试、编译、连接 B.编辑、编译、连接、运行 C.编译、调试、编辑、连…

阿里云全球故障凸显“云集中”风险

阿里云12日发生的全球性故障再次将“云集中风险”推上风口浪尖。这一公有云史上罕见的事件不仅影响了数以万计的企业和服务&#xff0c;也引发了对云服务集中化趋势的深刻反思。 2023年11月12日17:44(GMT8)开始&#xff0c;阿里云基础设施发生严重故障&#xff0c;导致阿里巴巴…

【多线程 - 07、中断线程 interrupt】

中断线程 Thread类中interrupt()、interrupted()和isInterrupted()方法 interrupt()方法 其作用是中断此线程&#xff08;此线程不一定是当前线程&#xff0c;而是指调用该方法的Thread实例所代表的线程&#xff09;&#xff0c;但实际上只是给线程设置一个中断标志&#xff0c…

详解 KEIL C51 软件的使用·设置工程·编绎与连接程序

详解 KEIL C51 软件的使用建立工程-CSDN博客 2. 设置工程 (1)在图 2-15 的画面中点击 会弹出如图 2-16 的对话框.其中有 10 个选择页.选择“Target” 项,也就是图 2-16 的画面. 图 2-16 在图 2-16 中,箭头所指的是晶振的频率值,默认是所选单片机最高的可用频率值.该设置值与单…

uniapp运行到安卓模拟器一直在“同步手机端程序文件完成“界面解决办法

如果你是用的模拟器是android studio创建的模拟器&#xff0c;那么你需要新创建一个android11 x86架构的模拟器&#xff1a; 创建完成后&#xff0c;启动模拟器&#xff1a; 然后在hbuilder中重新运行到这个模拟器就可以了&#xff1a; 运行结果&#xff1a; 如果你是用安…

代码随想录Day45 动态规划13 LeetCode T1143最长公共子序列 T1135 不相交的线 T53最大子数组和

LeetCode T1143 最长公共子序列 题目链接:1143. 最长公共子序列 - 力扣&#xff08;LeetCode&#xff09; 题目思路: 动规五部曲分析 1.确定dp数组的含义 这里dp数组的含义是结尾分别为i-1,j-1的text1和text2的最长公共子序列长度 至于为什么是i-1,j-1我之前已经说过了,这里再…

网络运维Day16

文章目录 Docker简介什么是容器命名空间&#xff1a; Docker 的优缺点 Docker安装Docker镜像管理什么是镜像镜像管理 Docker容器管理运行容器容器启动、停止、重启拷贝文件进入容器容器与应用 DockerfileDockerfile 语法案例 总结 Docker简介 什么是容器 容器是用来装东西的&a…

CSS特效010:文字颜色渐变的流光效果

查看专栏目录 本专栏记录的是经常使用的CSS示例与技巧&#xff0c;主要包含CSS布局&#xff0c;CSS特效&#xff0c;CSS花边信息三部分内容。其中CSS布局主要是列出一些常用的CSS布局信息点&#xff0c;CSS特效主要是一些动画示例&#xff0c;CSS花边是描述了一些CSS相关的库、…

爱上C语言:整型和浮点型在内存中的存储(进制转换,原码,反码,补码以及大小端)

&#x1f680; 作者&#xff1a;阿辉不一般 &#x1f680; 你说呢&#xff1a;生活本来沉闷&#xff0c;但跑起来就有风 &#x1f680; 专栏&#xff1a;爱上C语言 &#x1f680;作图工具&#xff1a;draw.io(免费开源的作图网站) 如果觉得文章对你有帮助的话&#xff0c;还请…