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

背景:近期在研发大数据中台,需要研究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/sbinsource /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.rhkb.cn/news/475444.html

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

相关文章

10 基于深度学习的目标检测

首次完成时间&#xff1a;2024 年 11月 20 日 1. 使用OpenCV的dnn模块实现图像分类。 1&#xff09;程序代码&#xff1a; import numpy as np import cv2# 解析标签文件 row open("model1/synset_words.txt").read().strip().split("\n") class_label …

ssl证书,以 Nginx 为例

文章目录 1 证书概述1.1 常见证书格式1.2 证书的几种扩展名1.3 关于 PKCS#12 格式 2 Nginx 下证书配置2.1 证书的工作原理2.1.1 单向认证2.1.2 双向认证 2.2 CA 机构签发2.2.1 免费 SSL 证书申请2.2.2 双向认证 2.3 自签证书2.3.1 单向认证2.3.2 双向认证 附录 1&#xff1a;Wi…

android:taskAffinity 对Activity退出时跳转的影响

android:taskAffinity 对Activity跳转的影响 概述taskAffinity 的工作机制taskAffinity对 Activity 跳转的影响一个实际的开发问题总结参考 概述 在 Android 开发中&#xff0c;任务栈&#xff08;Task&#xff09;是一个核心概念。它决定了应用程序的 Activity 如何相互交互以…

专家PID控制

专家PID控制&#xff08;Expert PID Control&#xff09;是一种结合了传统PID控制和专家系统思想的控制方法。它通过引入专家经验、规则和推理机制&#xff0c;以改善PID控制器在面对复杂系统时的性能。专家PID控制不仅仅依赖于固定的PID参数&#xff08;比例、积分、微分&…

ES分词环境实战

文章目录 安装下载1.1 下载镜像1.2 单节点启动 防火墙设置异常处理【1】iptable链路中断 参考文档 参加完2024年11月软考&#xff0c;对ES的分词进行考查&#xff0c;前期有【 Docker 环境下安装部署 Elasticsearch 和 kibana】和【 Docker 环境下为 Elasticsearch 安装IK 分…

【桌面应用程序】Vue-Electron 环境构建、打包与测试(Windows)

前言 Vue 与 Electron 环境构建、打包与测试。 目录 前言 一、基本环境准备 二、配置npm源 三、创建Vue项目 四、添加Electron支持 五、应用启动 ​六、添加UI框架 ElementUI ​七、打包 一、基本环境准备 npm版本&#xff1a;8.6.0node版本&#xff1a;v18.0.0Vue/…

golang中的init函数

程序的初始化和执行都起始于 main 包。如果 main 包还导入了其它的包&#xff0c;那么就会在编译时将它们依次 导入。有时一个包会被多个包同时导入&#xff0c;那么它只会被导入一次&#xff08;例如很多包可能都会用到 fmt 包&#xff0c;但 它只会被导入一次&#x…

Paint 学习笔记

目录 ippaint 外扩对象 LCM_inpaint_Outpaint_Comfy&#xff1a; 不支持文字引导 ippaint https://github.com/Sanster/IOPaint 外扩对象 https://www.iopaint.com/models/diffusion/powerpaint_v2 GitHub - open-mmlab/PowerPaint: [ECCV 2024] PowerPaint, a versatile …

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

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

【MATLAB源码-第218期】基于matlab的北方苍鹰优化算法(NGO)无人机三维路径规划,输出做短路径图和适应度曲线.

操作环境&#xff1a; MATLAB 2022a 1、算法描述 北方苍鹰优化算法&#xff08;Northern Goshawk Optimization&#xff0c;简称NGO&#xff09;是一种新兴的智能优化算法&#xff0c;灵感来源于北方苍鹰的捕猎行为。北方苍鹰是一种敏捷且高效的猛禽&#xff0c;广泛分布于北…

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

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

利用uniapp开发鸿蒙:运行到鸿蒙模拟器—踩坑合集

从uniapp运行到鸿蒙模拟器上这一步&#xff0c;就有非常多的坑&#xff0c;一些常见的坑&#xff0c;官网都有介绍&#xff0c;就不再拿出来了&#xff0c;这里记录一下官网未记录的大坑 1.运行路径从hbuilderx启动鸿蒙模拟器 解决方法&#xff1a; Windows系统&#xff0c;官…

跨平台WPF框架Avalonia教程 十三

AutoCompleteBox 自动补全输入框 自动补全输入框提供了一个供用户输入的文本框和一个包含可能匹配项的下拉列表。下拉列表会在用户开始输入时显示&#xff0c;并且每输入一个字符&#xff0c;匹配项都会更新。用户可以从下拉列表中选择匹配项。 文本与可能项匹配的方式是可配…

开发中使用UML的流程_02 CIM-1:定义业务流程

CIM-1定义业务流程&#xff08;业务用例模型&#xff09;的生成&#xff0c;有下列两项&#xff1a; 1.业务用例图 2.业务用例简述 业务用例图的主要组成元素是业务用例和业务执行者。 图中的一个业务用例代表一条业务流程&#xff0c;业务执行者则代表位于业务组织外但会启动…

Streamlit + AI大模型API实现视频字幕提取

简介 在本文中&#xff0c;我将带你探讨如何使用Streamlit和AI大模型API来实现视频字幕提取的技术。Streamlit是一个开源的Python库&#xff0c;用于快速构建数据应用的Web界面&#xff0c;而AI大模型API&#xff0c;如OpenAI&#xff0c;提供了强大的语言处理能力&#xff0c…

c++--------《set 和 map》

c--------《set 和 map》 1 set系列的使⽤1.1 set类的介绍1.2 set的构造和迭代器1.3 set重要接口 2 实现样例2.1: insert和迭代器遍历使⽤样例&#xff1a;2.2: find和erase使⽤样例&#xff1a; 练习3.map系列的使用3.1 map类的介绍3.1.1 pair类型介绍 3.2 map的数据修改3.3mu…

计算机网络——路由选择算法

路由算法 路由的计算都是以子网为单位计算的——找到从原子网到目标子网的路径 链路状态算法 序号——&#xff08;源路由器&#xff0c;序号&#xff09;——如果发现这个序号重复或者老了——就不扩散 先测量——再泛洪获得路由 路由转发情况 若S——>W是21则不更改——…

同三维T80004EHU 高清HDMI/USB编码器

同三维T80004EHU 高清HDMI/USB编码器 1路HDMI或1路USB输入&#xff0c;带1路3.5音频输入&#xff0c;高清1080P60 同三维T80004EHU 高清HDMI/USB编码器 产品简介&#xff1a; 同三维T80004EHU高清HDMI/USB编码器是一款1路HDMI或1路USB高清编码器。可将 HDMI 或USB视频源编码…

RGB与YCbCr转换算法

目录 RGB与YCbCr转换算法RGB与YCbCr色域介绍RGB模型YCbCr色域简介YCbCr的应用YUV 和 YCbCr 的区别 色彩转换公式 RGB 转 YCbCr 实现RGB 转 YCbCr 的 Matlab 实现RGB 转 YCbCr 的 FPGA 实现 YCbCr 转 RGB 实现YCbCr 转 RGB 的 Matlab 实现YCbCr 转 RGB 的 FPGA 实现 RGB与YCbCr转…

子串【Lecode_HOT100】

1.和为K的子数组No.560 前缀和枚举 public int subarraySum(int[] nums, int k) {int count 0;//满足条件的个数//计算前缀和int[] preSum new int[nums.length1];for(int i 1 ; i<preSum.length;i){preSum[i]preSum[i-1]nums[i-1];}//查找满足kfor(int l 0;l<preSum…