vmWare虚拟环境centos7安装Hadoop 伪分布式实践

news2024/11/21 16:39:18

背景:近期在研发大数据中台,需要研究Hadoop hive 的各种特性,需要搭建一个Hadoop的虚拟环境,本来想着使用dock ,但突然发现docker 公共仓库的镜像 被XX 了,无奈重新使用vm 搭建虚拟机。
大概经历了6个小时完成hadoop 3.3.6 环境的搭建,分享步骤给大家,需要搭建好的虚拟机镜像私信联系,提供百度网盘下载链接。(需要请一杯奶茶)。
在这里插入图片描述

操作系统版本:centos 7

本次实践实践2024年,未来2年内有效。

目录

  • 一、准备工作:
    • 1、安装vmware
      • 2、centos配置固定IP
      • 重启网络服务
      • 关闭防火墙
      • 修改主机名(永久更改)
      • 修改IP映射
      • 配置免密登录
  • 二、Hadoop3.3.6 伪分布安装步骤
    • 1、 安裝JDK
      • 下载jdk 到服务器
      • 解压安裝jdk
      • 配置 java 环境变量/etc/profile
    • 2、hadoop 3.3.6 安装
      • 修改 hadoop 配置文件
        • 配置core-site.xml
      • 配置hdfs-site.xml
      • 配置hadoop-env.sh
      • 启动hadoop
      • 格式化 namenode
    • 3、启动集群
      • 启动 namenode 和 datanode
    • 4、 查看服务
    • 5、验证文件存储
      • 存储文件
      • 查看文件
    • 6、浏览器查看Hadoop

一、准备工作:

1、安装vmware

vmware 已经免费,个人在官方下载自行安装即可。

2、centos配置固定IP

首先找到/etc/sysconfig/network-scripts/下的ifcfg-ens33配置文件

vi /etc/sysconfig/network-scripts/ifcfg-ens33

把 BOOTPROTO = “dhcp” 改成 BOOTPROTO = “static” 表示静态获取,然后把 UUID 注释掉,把 ONBOOT 改为 yes,表示开机自动静态获取,然后在最后追加比如下面的配置:

IPADDR=192.168.226.129  #自己的ip地址
NETMASK=255.255.255.0
GATEWAY=192.168.226.2
DNS1=8.8.8.8

重启网络服务

centos6的网卡重启方法:service network restart
centos7的网卡重启方法:systemctl restart network

关闭防火墙

查看防火墙状态: systemctl status firewalld.service

执行关闭命令: systemctl stop firewalld.service

执行开机禁用防火墙自启命令 : systemctl disable firewalld.service

修改主机名(永久更改)

方法一:

可以通过命令 hostnamectl set-hostname “主机名” 来永久修改主机名

[root@hadoop ~]# hostnamectl set-hostname hadoop 

方法二:

使用 vi 编辑器打开 /etc/ hostname 文件

vi /etc/hostname

删除文件中原有内容,添加主机名:hadoop,保存退出

修改IP映射

使用 vi 编辑器打开 /etc/hosts 文件

vi /etc/hosts

在文件尾部添加内容,格式:IP地址 主机名(中间用空格分隔),保存退出,,例如:

192.168.226.129 hadoop

设置完成后,重启网路服务: systemctl restart network

使用 ping 命令 ping 一下主机名,如果可以ping 通,表示设置成功。

配置免密登录

  1. 本地机器生成公私钥
  2. 上传公钥到目标机器
  3. 测试免密登录

在本地机器用 ssh-keygen 生成一个公私钥对进入. ssh 目录 cd .ssh
发起公钥请求

 ssh-keygen -t rsa

在. ssh / 目录下,会新生成两个文件:id_rsa.pub 和 id_rsa

上传公钥到目标机器

ssh-copy-id root@192.168.226.129

测试免密登录

ssh  hadoop

二、Hadoop3.3.6 伪分布安装步骤

1、 安裝JDK

centos 本身自帶java ,仅仅是jre需要自己下载jdk 安装包,自己安装替换。

下载jdk 到服务器

推荐使用wget 下载命令,或者你下载到你的电脑,然后通过ftp 工具上传到对应服务器。
推荐使用国内的镜像下载网站,我这里使用了

https://repo.huaweicloud.com/java/jdk/8u192-b12/

自己选择一个版本

在这里插入图片描述

解压安裝jdk

tar -zxf jdk-8u212-linux-x64.tar.gz -C /usr/local/
mv /usr/local/jdk1.8.0_212/ /usr/local/java

配置 java 环境变量/etc/profile

vim /etc/profile

文件末尾添加

export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

刷新配置文件

source /etc/profile

校验Java 安装是否成功

java -version

2、hadoop 3.3.6 安装

下载Hadoop 安装包

推荐国内镜像https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/

选择Hadoop 版本,wget下载到服务器

-rw-r--r--. 1 root root  730107476 Jun 25  2023 hadoop-3.3.6.tar.gz
-rw-r--r--. 1 root root  191757099 Oct  8  2018 jdk-8u192-linux-x64.tar.gz
-rw-r--r--. 1 root root  820043264 Jul  6  2022 mysql-8.0.30-el7-x86_64.tar
-rw-r--r--. 1 7161 31415 492490461 Jul  6  2022 mysql-8.0.30-el7-x86_64.tar.gz
-rw-r--r--. 1 7161 31415  22006040 Jul  6  2022 mysql-router-8.0.30-el7-x86_64.tar.gz
-rw-r--r--. 1 7161 31415 305543348 Jul  6  2022 mysql-test-8.0.30-el7-x86_64.tar.gz

解压

sudo tar -zxf hadoop-3.3.6.tar.gz -C /usr/local/
sudo mv /usr/local/hadoop-3.3.6/ /usr/local/hadoop

3.修改环境变量

sudo gedit /etc/profile

文件末尾添加:

export PATH=$JAVA_HOME/bin:$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin

source /etc/profile

修改 hadoop 配置文件

配置core-site.xml
vim /usr/local/hadoop/etc/hadoop/core-site.xml
<configuration>
	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://hadoop:9000</value>
	</property>
	<property>
		<name>hadoop.tmp.dir</name>
		<value>/home/huangqifa/data/hadoop/tmp</value>
	</property>
</configuration>

配置hdfs-site.xml

vim /usr/local/hadoop/etc/hadoop/hdfs-site.xml
<configuration>
	<property>
		<name>dfs.replication</name>
		<value>1</value>
	</property>
	<property>
		<name>dfs.namenode.name.dir</name>
		<value>/home/huangqifa/data/hadoop/namenode</value>
	</property>
	<property>
		<name>dfs.datanode.data.dir</name>
		<value>/home/huangqifa/data/hadoop/datanode</value>
	</property>
</configuration>

配置hadoop-env.sh

vim /usr/local/hadoop/etc/hadoop/hadoop-env.sh
#文档末尾添加
export JAVA_HOME=/usr/local/java

启动hadoop

格式化 namenode

hadoop namenode -format  

3、启动集群

sh /usr/local/hadoop/sbin/start-all.sh   

启动 namenode 和 datanode

hadoop-daemon.sh start namenode
hadoop-daemon.sh start datanode

4、 查看服务

jps

在这里插入图片描述

5、验证文件存储

存储文件

[root@hadoop /]# cd data/
[root@hadoop data]# ls
[root@hadoop data]# touch demo.txt
[root@hadoop data]# ls
demo.txt
[root@hadoop data]# vim demo.txt 
[root@hadoop data]# ls
demo.txt
[root@hadoop data]# hdfs dfs -put demo.txt /user
[root@hadoop data]# hdfs dfs -ls /
Found 1 items
drwxr-xr-x   - root supergroup          0 2024-11-17 03:33 /user
[root@hadoop data]# hdfs dfs -ls /user
Found 1 items
-rw-r--r--   1 root supergroup         12 2024-11-17 03:33 /user/demo.txt

hdfs dfs -put demo.txt /user

查看文件

hdfs dfs -ls /user

6、浏览器查看Hadoop

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

在这里插入图片描述

参考资料:https://blog.csdn.net/qq_52584391/article/details/127450206

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

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

相关文章

Redis基本的全局命令

在学习redis基本的全局命令之前呢&#xff0c;我们必须先进入redis-cli客户端才行。 如图&#xff1a; get和set get和set是redis两个最核心的命令。 get&#xff1a;根据key来获取value。 set&#xff1a;把key和value存储进去。 如set命令如图&#xff1a; 对于上述图中&…

Redis五大基本类型——List列表命令详解(命令用法详解+思维导图详解)

目录 一、List列表类型介绍 二、常见命令 1、LPUSH 2、LPUSHX 3、RPUSH 4、RPUSHX 5、LRANGE 6、LPOP 7、RPOP 8、LREM 9、LSET 10、LINDEX 11、LINSERT 12、LLEN 13、阻塞版本命令 BLPOP BRPOP 三、命令小结 相关内容&#xff1a; Redis五大基本类型——Ha…

一文详解哋它亢模块的安装与使用

如何安装哋它亢模块 哋它亢模块是扩展哋它亢功能的关键工具&#xff0c;它们涵盖了从数据分析到机器学习的各种应用场景。通过安装和使用这些模块&#xff0c;你可以轻松完成复杂的任务&#xff0c;大幅提升开发效率。哋它亢是一门易于学习且功能强大的编程语言&#xff0c;以…

C#中的二维数组的应用:探索物理含义与数据结构的奇妙融合

在C#编程中&#xff0c;二维数组&#xff08;或矩阵&#xff09;是一种重要的数据结构&#xff0c;它不仅能够高效地存储和组织数据&#xff0c;还能通过其行、列和交叉点&#xff08;备注&#xff1a;此处相交处通常称为“元素”或“单元格”&#xff0c;代表二维数组中的一个…

论文阅读——Intrusion detection systems using longshort‑term memory (LSTM)

一.基本信息 论文名称&#xff1a;Intrusion detection systems using longshort‑term memory (LSTM) 中文翻译&#xff1a;基于长短期记忆(LSTM)的入侵检测系统 DOI&#xff1a;10.1186/s40537-021-00448-4 作者&#xff1a;FatimaEzzahra Laghrissi1* , Samira Douzi2*, Kha…

【行之有效】实证软件工程研究方法

【行之有效】实证软件工程研究方法 一、实证研究二、实证软件工程2.1 系统化文献评价2.2 调查研究2.2.1 数据收集2.2.2 抽样 2.3 案例研究2.3 实证研究效度 一、实证研究 实证研究&#xff08;Empirical Research&#xff09;方法是一种与规范研究&#xff08;Normative Resea…

大数据挖掘期末复习

大数据挖掘 数据挖掘 数据挖掘定义 技术层面&#xff1a; 数据挖掘就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中&#xff0c;提取隐含在其中、人们事先不知道的、但又潜在有用的信息的过程。 数据准备环节 数据选择 质量分析 数据预处理 数据仓库 …

河道水位流量一体化自动监测系统:航运安全的护航使者

在广袤的水域世界中&#xff0c;航运安全始终是至关重要的课题。而河道水位流量一体化自动监测系统的出现&#xff0c;如同一位强大的护航使者&#xff0c;为航运事业的稳定发展提供了坚实的保障。 水位传感器&#xff1a;负责实时监测河道的水位变化。这些传感器通常采用先进的…

【C++】深入理解 C++ 中的继承进阶:多继承、菱形继承及其解决方案

个人主页: 起名字真南的CSDN博客 个人专栏: 【数据结构初阶】 &#x1f4d8; 基础数据结构【C语言】 &#x1f4bb; C语言编程技巧【C】 &#x1f680; 进阶C【OJ题解】 &#x1f4dd; 题解精讲 目录 C继承机制详解与代码示例&#x1f4cc;1. 继承的基本概念&#x1f4cc; 2.…

根据条件 控制layui的table的toolbar的按钮 显示和不显示

部分代码&#xff1a; <!-----查询条件-----> <input type"date" id"StartDate" onchange"PageList()" /> <input type"date" id"EndDate" onchange"PageList()" /><!-----表格Table-----&…

net某高校社交学习平台的设计与实现

摘 要 高校社交学习平台是一个融合了社交网络特性的在线学习交流系统&#xff0c;旨在促进高校学生之间的信息共享与学习互动。该平台通过提供学习资料、学习视频和学习交流等功能&#xff0c;支持发布学习动态、参与知识问答、并实时追踪学习进度。为学生提供一个全面且便捷的…

5-对象的访问权限

对象的访问权限知识点 对象的分类 在数据库中&#xff0c;数据库的表、索引、视图、缺省值、规则、触发器等等、都可以被称为数据库对象&#xff0c;其中对象主要分为两类 1、模式(schema)对象&#xff1a;模式对象可以理解为一个存储目录、包含视图、索引、数据类型、函数和…

如何在vscode 中打开新文件不覆盖上一个窗口

在 VSCode 中&#xff0c;如果你单击文件时出现了覆盖Tab的情况&#xff0c;这通常是因为VSCode默认开启了预览模式。在预览模式下&#xff0c;单击新文件会覆盖当前预览的文件Tab。为了解决这个问题&#xff0c;你可以按照以下步骤进行操作 1.打开VSCode&#xff1a;启动你的…

【网络系统管理】Centos7——配置主从mariadb服务器案例(下半部分)

【网络系统管理】Centos7——配置主从mariadb服务器案例-CSDN博客 接上个文档&#xff0c;我们已经完成了主服务器创建数据库备服务器可以看到 一、在DBMS2查看信息 File&#xff0c;Position这两个字段的数据要记好&#xff0c;等一下需要用到 show master status; 二、在…

C#编写的日志记录组件 - 开源研究系列文章

以前编写过一个日志记录组件的博文&#xff0c;这次发布一个修改过的完善版本。 1、 项目目录&#xff1b; 2、 源码介绍&#xff1b; 1) 实现&#xff1b; 2) 使用&#xff1b; 后面的参数为级别设置&#xff0c;只有大于这个级别的才进行日志记录&#xff0c;限制了日志记录的…

react 如何修改弹出的modal的标题

原来标题的样子&#xff1a; 修改为&#xff1a; 实现方式&#xff1a; <Modal title<span>股价趋势/{this.state.pccode}</span> visible{this.state.isPriceModalOpen} style{{ top: 20 }} width{1320} height{400} footer{null} onCancel{()>this.hideMo…

学习threejs,对模型多个动画切换展示

&#x1f468;‍⚕️ 主页&#xff1a; gis分享者 &#x1f468;‍⚕️ 感谢各位大佬 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍⚕️ 收录于专栏&#xff1a;threejs gis工程师 文章目录 一、&#x1f340;前言1.1 ☘️THREE.AnimationMixer 动画…

笔记01----Transformer高效语义分割解码器模块DEPICT(即插即用)

学习笔记01----即插即用的解码器模块DEPICT 前言源码下载DEPICT实现实验 前言 文 章 标 题&#xff1a;《Rethinking Decoders for Transformer-based Semantic Segmentation: Compression is All You Need》 当前的 Transformer-based 方法&#xff08;如 DETR 和其变体&…

layui合并table相同内的行

<table border"1" id"table1" class"layui-table"><thead><tr><th><b>姓名</b></th><th><b>项目</b></th><th><b>任务</b></th><th><b>…

【大模型】大模型RAG检索增强生成技术使用详解

目录 一、前言 二、RAG技术介绍 2.1 RAG是什么 2.2 RAG工作原理 2.3 RAG优势 2.4 RAG应用场景 三、在线大模型平台RAG技术使用 3.1 阿里百炼平台 3.1.1 创建知识库 3.1.2 导入文档数据 3.1.3 文档数据解析 3.1.4 查看数据 3.2 百度文心智能体 3.2.1 创建知识库 3…