Hadoop集群搭建(hadoop-3.3.5)

一、修改服务器配置文件

1、配置环境变量

vim /etc/profile
#java环境变量
export JAVA_HOME=/usr/local/jdk/jdk8
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
#hadoop环境变量
export HADOOP_HOME=/usr/local/hadoop-3.3.5
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

2、修改host映射

这里我准备了三台虚拟机
192.168.159.100
192.168.159.101
192.168.159.102
vim  /etc/hosts
# 添加本机的静态IP和本机的主机名之间的映射关系 
192.168.159.100 t1
192.168.159.101 t2
192.168.159.102 t2

二、开放端口

#NameNode 内部通信端口
firewall-cmd --zone=public --add-port=8020/tcp --permanent
firewall-cmd --zone=public --add-port=9000/tcp --permanent
firewall-cmd --zone=public --add-port=9820/tcp --permanent#Secondary NameNode
firewall-cmd --zone=public --add-port=9868/tcp --permanent#NameNode HTTP UI 端口
firewall-cmd --zone=public --add-port=9870/tcp --permanent#YARN 查看执行任务端口
firewall-cmd --zone=public --add-port=8088/tcp --permanent#历史服务器通信端口(jobHistory)
firewall-cmd --zone=public --add-port=10020/tcp --permanent#历史服务器通信WEB端口(jobHistory.webapp)
firewall-cmd --zone=public --add-port=19888/tcp --permanent#重新加载防火墙
firewall-cmd --reload# 查看开放端口
firewall-cmd --list-ports

三、修改HADOOP配置文件

1、core-site.xml

<configuration><!-- 设置namenode节点 --><!-- 注意: hadoop1.x时代默认端口9000 hadoop2.x时代默认端口8020 hadoop3.x时代默认端口 9820 --><property><name>fs.defaultFS</name><value>hdfs://t2:9820</value></property><!-- hdfs的基础路径,被其他属性所依赖的一个基础路径 --><property><name>hadoop.tmp.dir</name><value>/usr/local/hadoop-3.3.5/tmp</value></property>
</configuration>

2、hdfs-site.xml

<configuration><!-- 块的副本数量 --><property><name>dfs.replication</name><value>3</value></property><!-- secondarynamenode守护进程的http地址:主机名和端口号。参考守护进程布局 --><property><name>dfs.namenode.secondary.http-address</name><value>t3:9868</value></property><!-- namenode守护进程的http地址:主机名和端口号。参考守护进程布局,需要配置中namenode的服务器上 --><property><name>dfs.namenode.http-address</name><value>t2:9870</value></property>
</configuration>

3、hadoop-env.sh

#这里必须配置JAVA_HOME,否则胡报错。
export JAVA_HOME=/usr/local/jdk/jdk8# Hadoop3中,需要添加如下配置,设置启动集群角色的用户是谁
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root

4、works

t1
t2
t3

四、启动集群

1、格式化集群

#每次修改文件之后,都要进行格式化。
hdfs namenode -format

2、启动集群

start-dfs.sh			# 启动HDFS所有进程(NameNodeSecondaryNameNodeDataNode)
stop-dfs.sh				# 停止HDFS所有进程(NameNodeSecondaryNameNodeDataNode)# hdfs --daemon start 单独启动一个进程
hdfs --daemon start namenode				# 只开启NameNode
hdfs --daemon start secondarynamenode		# 只开启SecondaryNameNode
hdfs --daemon start datanode				# 只开启DataNode# hdfs --daemon stop 单独停止一个进程
hdfs --daemon stop namenode					# 只停止NameNode
hdfs --daemon stop secondarynamenode		# 只停止SecondaryNameNode
hdfs --daemon stop datanode					# 只停止DataNode# hdfs --workers --daemon start 启动所有的指定进程
hdfs --workers --daemon start datanode		# 开启所有节点上的DataNode# hdfs --workers --daemon stop 启动所有的指定进程
hdfs --workers --daemon stop datanode		# 停止所有节点上的DataNode

3、进程查看

#查看java进程指令
jps#t1
3378 DataNode
2082 org.elasticsearch.bootstrap.Elasticsearch
1192 QuorumPeerMain
5756 Jps
1215 QuorumPeerMain#t2
3872 NameNode
2037 org.elasticsearch.bootstrap.Elasticsearch
4072 DataNode
9791 Jps#t3
4566 DataNode
1976 org.elasticsearch.bootstrap.Elasticsearch
16520 Jps
4671 SecondaryNameNode

4、浏览器查看

http://192.168.159.101:9870/dfshealth.html#tab-datanode

在这里插入图片描述
在这里插入图片描述

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

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

相关文章

c++关键字 =delete和=default

在C的类中&#xff0c;有四类特殊的成员函数&#xff1a;① 默认构造函数&#xff1b;② 拷贝构造函数&#xff1b;③ 拷贝赋值函数&#xff08;operator&#xff09;&#xff1b;④ 析构函数&#xff1b;它们控制着类的实例的创建、初始化、拷贝以及销毁。 &#xff08;1&…

前端开发怎么解决前端安全性的问题? - 易智编译EaseEditing

前端安全性是保护前端应用程序免受恶意攻击和数据泄露的重要方面。以下是一些解决前端安全性问题的关键方法&#xff1a; 输入验证与过滤&#xff1a; 对所有用户输入进行验证和过滤&#xff0c;防止恶意用户通过注入攻击等手段破坏应用程序或获取敏感信息。 跨站点脚本&#…

[.NET/WPF] CommunityToolkit.Mvvm 异步指令

我们在开发中, 经常会有这样的需求: 点击按钮后, 进行一些耗时的工作工作进行时, 按钮不可再次被点击工作进行时, 会显示进度条, 或者 “加载中” 的动画 RelayCommand CommunityToolkit.Mvvm 中的 RelayCommand 除了支持最简单的同步方法, 还支持以 Task 作为返回值的异步方…

【接口不对外暴露-过滤器】业务开发,接口不能对外暴露的3种实现方案

一、内外网接口微服务隔离 将对外暴露的接口和对内暴露的接口分别放到两个微服务上&#xff0c;一个服务里所有的接口均对外暴露&#xff0c;另一个服务的接口只能内网服务间调用。 需要额外编写一个只对内部暴露接口的微服务&#xff0c;将所有只能对内暴露的业务接口聚合到…

【数据结构入门指南】二叉树

【数据结构入门指南】二叉树 一、二叉树的概念二、现实中的二叉树三、特殊的二叉树四、二叉树的性质五、二叉树的存储结构5.1 顺序结构5.2 链式结构 一、二叉树的概念 二叉树是一棵特殊的树。一棵二叉树是结点的一个有限集合&#xff0c;该节点&#xff1a; ①&#xff1a;或者…

Spring Boot实现IP地址解析

一、本地解析 如果使用本地ip解析的话&#xff0c;我们将会借助ip2region&#xff0c;该项目维护了一份较为详细的本地ip地址对应表&#xff0c;如果为了离线环境的使用&#xff0c;需要导入该项目依赖&#xff0c;并指定版本&#xff0c;不同版本的方法可能存在差异。 <d…

SpringBoot整合Quartz,实现数据库方式执行定时任务

springboot整合quartz&#xff0c;实现数据库方式执行定时任务。把定时任务信息存进数据库&#xff0c;项目启动后自动执行定时任务。 1.引入依赖包&#xff1a; <dependency> <groupId>org.springframework.boot</groupId> <ar…

0基础入门代码审计-2 Fortify初探

0x01 序言 目前又加入一位新童鞋了&#xff0c;最近将会再加入cs相关的专栏&#xff0c;都是以基础为主&#xff0c;毕竟太复杂的东西&#xff0c;能看懂的人太少。 0x02 准备工具 1、Fortify 2、需要审计的源码 0x03 Fortify的简单使用 1、 1、在开始菜单栏中找到Audit Wo…

学习ts(五)类

定义 是面向对象程序设计&#xff08;OOP&#xff09;实现信息封装的基础 类是一种用户定义的引用数据类型&#xff0c;也称类类型 JavaScript的class,虽然本质是构造函数&#xff0c;但是使用起来已经方便了许多&#xff0c;js中没有加入修饰符和抽象类等特性 ts的class支持面…

Unity小项目__打砖块

//1.添加地面 1&#xff09;创建一个平面&#xff0c;命名为Ground。 2)创建一个Materials文件夹&#xff0c;并在其中创建一个Ground材质&#xff0c;左键拖动其赋给平面Plane。 3)根据喜好设置Ground材质和Ground平面的属性。 // 2.创建墙体 1&#xff09;创建一个Cube&…

vue3 基础知识 (组件之间的通信 and vuex) 02

侬好哇 &#xff01;&#x1f60d; 文章目录 一、组件的通信 &#xff08;父传子&#xff09;二、非 Prop 的Attribute (属性&#xff09;三、组件的通信 &#xff08;子传父&#xff09;四、非父子组件的相互通信&#xff08;Provide/Inject&#xff09;五、非父子组件的相互通…

神经网络基础-神经网络补充概念-59-padding

概念 在深度学习中&#xff0c;“padding”&#xff08;填充&#xff09;通常是指在卷积神经网络&#xff08;Convolutional Neural Networks&#xff0c;CNNs&#xff09;等神经网络层中&#xff0c;在输入数据的周围添加额外的元素&#xff08;通常是零&#xff09;&#xf…

高教杯数学建模2020C题总结

&#x1f9e1;1. 前言&#x1f9e1; 跟队友花了三天模拟2020C题&#xff0c;现在整理一下一些数据处理的代码&#xff0c;以及在模拟中没有解决的问题。方便以后回溯笔记。 &#x1f9e1;2. 数据处理&#x1f9e1; 2.1 导入数据&#xff0c;并做相关预处理 import pandas a…

更改计算机睡眠时间

控制面板–>系统和安全–>电源选项下的更改计算机睡眠时间 如果关闭显示器时间小于使计算机进入睡眠状态时间&#xff0c;时间先到达关闭显示器时间&#xff0c;显示器关闭&#xff0c;这时电脑还在正常工作状态。如果此时敲击键盘显示器出现画面&#xff0c;无需输入密…

算法|Day46 动态规划14

LeetCode 1143- 最长公共子序列 题目链接&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 题目描述&#xff1a;给定两个字符串 text1 和 text2&#xff0c;返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 &#xff…

AndroidUI体系

见&#xff1a;GitHub - eHackyd/Android_UI: Android UI体系的学习笔记

【云原生】3分钟快速在Kubernetes1.25部署Prometheus2.42+Grafana9.5.1+Alertmanager0.25

文章目录 1、简介2、GitHub地址3、环境信息4、安装5、访问Grafana1、简介 Prometheus-operator帮助我们快速创建Prometheus+Grafana+Alertmanager等服务,而kube-prometheus更加完整的帮助我们搭建全套监控体系,这包括部署多个 Prometheus 和 Alertmanager 实例, 指标导出器…

【C/C++】实现模板类数据结构 -- 栈 (亲测可用)

/* * * 模板类&#xff1a; 栈结构[借助数组实现] */ template<typename T> class Stack { private:T *data; /* 数组第一个元素地址&#xff0c;存放T类型数组元素 */int size; /* 当前栈实际填充数量 */int capacity; /* 最大装载量 */ public:Stack(int m_capacity) :…

Php“牵手”淘宝商品SKU信息数据采集方法,淘宝API接口申请指南

淘宝天猫商品属性sku信息接口 API 是开放平台提供的一种 API 接口&#xff0c;它可以帮助开发者获取商品的详细信息&#xff0c;包括商品的标题、描述、图片&#xff0c;销量&#xff0c;sku信息等信息。在电商平台的开发中&#xff0c;商品属性接口API是非常常用的 API&#x…

消息中间件篇

消息中间件篇 RabbitMQ 如何保证消息不丢失 面试官&#xff1a; RabbitMQ如何保证消息不丢失 候选人&#xff1a; 嗯&#xff01;我们当时MYSQL和Redis的数据双写一致性就是采用RabbitMQ实现同步的&#xff0c;这里面就要求了消息的高可用性&#xff0c;我们要保证消息的不…