当前位置: 首页 > news >正文

从零开始Hadoop集群环境搭建

目录

  • 1. Centos7.5硬件配置
    • 1.1 创建虚拟机
    • 1.2 虚拟机系统设置
  • 2. IP地址和主机名称配置
  • 3. 软件配置
    • 3.1 安装 epel-release
    • 3.2 卸载虚拟机自带的JDK
    • 3.3 克隆虚拟机
    • 3.4 修改克隆虚拟机的IP
    • 3.5 JDK安装
    • 3.6 Hadoop安装
  • 4. Hadoop目录结构

1. Centos7.5硬件配置

1.1 创建虚拟机

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

1.2 虚拟机系统设置

开启虚拟化(Win10一般都是开启的)
在这里插入图片描述
下载Centos7.5镜像
链接:xxxxxxx
在这里插入图片描述
在这里插入图片描述
然后开启此虚拟机开始安装。
(安装需要一些时间,ctrl+alt呼出鼠标)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述e
设置密码,简单点就好
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
设置一个普通账号
在这里插入图片描述
至此安装完毕!!!

2. IP地址和主机名称配置

有三个地方需要配置IP地址:VMware、Win10服务器、hadoop100服务器

  1. 配置VMware IP,设置顺序
    在这里插入图片描述
    选择VMnet8,设置的网段避开1就行
    在这里插入图片描述
    在这里插入图片描述
    (DHCP设置时注意区间)
  2. 配置Win10 IP
    在这里插入图片描述
    在这里插入图片描述
    注意:设置后会影响浏览器访问速度!
    如果Windows中没有出现上面的VMnet8,可在VMware中点还原默认配置试试:
    在这里插入图片描述
  3. 配置hadoop100 IP和主机名称
    进入虚拟机——打开终端
    su root
    vim /etc/sysconfig/network-scripts/ifcfg-ens33
    
    在这里插入图片描述
    修改主机名称为hadoop100:
    vim /etc/hostname
    
    修改主机名称映射:
    vim /etc/hosts
    
    在这里插入图片描述
    修改完后reboot重启
    重新进入虚拟机,打开终端检查下修改是否成功:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

3. 软件配置

下面操作都在Xshell中执行。
配置IP地址映射(可选项)
进入电脑 C:\Windows\System32\drivers\etc路径下,打开hosts文件添加如下内容:

192.168.10.100 hadoop100
192.168.10.101 hadoop101
192.168.10.102 hadoop102
192.168.10.103 hadoop103
192.168.10.104 hadoop104
192.168.10.105 hadoop105
192.168.10.106 hadoop106
192.168.10.107 hadoop107
192.168.10.108 hadoop108

3.1 安装 epel-release

注:Extra Packages for Enterprise Limux是为“红帽系”的操作系统提供额外的软件包适用于 RHEL、CentOS和 Scientific Linux。相当于是一个软件仓库,大多数 rpm 包在官方repository 中是找不到的)
注意在root账号下操作

su root
yum install -y epel-release

——自己执行安装命令的时候出现了如下问题:

在这里插入图片描述
排查了一下发现是镜像原因,解决方案:使用阿里云或其他国内镜像源
设置YUM仓库源为阿里云镜像源:

sudo nano /etc/yum.repos.d/CentOS-Base.repo

将内容替换为以下内容:

[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7[updates]
name=CentOS-$releasever - Updates - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7[extras]
name=CentOS-$releasever - Extras - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7[centosplus]
name=CentOS-$releasever - Plus - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

保存文件并退出。


关闭防火墙,关闭防火墙开机自启

systemctl stop firewalld
systemctl disable firewalld.service

创建用户并设置密码

useradd xxx
passwd 123456

配置创建的用户具有root权限,方便后期加sudo执行root权限的命令

vim /etc/sudoers

在这里插入图片描述
在 /opt 目录下创建文件夹,并修改所属主和所属组

[root@hadoop100 ~] mkdir /opt/module
[root@hadoop100 ~] mkdir /opt/software
[root@hadoop100 ~] chown xxx:xxx /opt/module
[root@hadoop100 ~] chown xxx:xxx /opt/software

3.2 卸载虚拟机自带的JDK

(注意:如果你的虚拟机是最小化安装则不需要执行这一步)

[root@hadoop100 ~] rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps
  • rpm -qa:查询安装的所有rpm软件包
  • grep -i:忽略大小写
  • xargs -n1:表示每次只传递一个参数
  • rpm -e --nodeps:强制卸载软件
    重启虚拟机
[root@hadoop100 ~] reboot

3.3 克隆虚拟机

先关闭虚拟机
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
同理克隆得到 hadoop103、hadoop104

3.4 修改克隆虚拟机的IP

分别root账号进入hadoop102、hadoop103、hadoop104,打开终端

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

分别修改IPADDR=192.168.10.102、IPADDR=192.168.10.103、IPADDR=192.168.10.104

vim /etc/hostname

分别修改名称为 hadoop102、hadoop103、hadoop104

reboot

3.5 JDK安装

进入到之前创建的software目录,通过

[root@hadoop102 opt] cd software/

通过Xftp或其他工具将JDK和Hadoop安装包一起上传至该目录,
执行下面命令安装

[root@hadoop102 software] tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/

配置JDK环境变量

[root@hadoop102 software] cd /opt/module/jdk1.8.0_212
[root@hadoop102 jdk1.8.0_212] cd /etc/profile.d
[root@hadoop102 jdk1.8.0_212] ll

在这里插入图片描述

[root@hadoop102 profile.d] sudo vim my_env.sh

在这里插入图片描述
重新加载环境变量配置:

[root@hadoop102 profile.d] source /etc/profile

测试:

[root@hadoop102 profile.d] java -version

3.6 Hadoop安装

[root@hadoop102 software] tar -zxvf hadoop-3.1.3.tar.gz -C /opt/module/

配置Hadoop环境变量

[root@hadoop102 hadoop-3.1.3] sudo vim /etc/profile.d/my_env.sh

在这里插入图片描述

#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

重新加载环境变量配置:

[root@hadoop102 hadoop-3.1.3] source /etc/profile

测试:

[root@hadoop102 hadoop-3.1.3] hadoop

4. Hadoop目录结构

(1)bin目录:存放对Hadoop相关服务(hdfs,yarn,mapred)进行操作的脚本
(2)etc目录:Hadoop的配置文件目录,存放Hadoop的配置文件
(3)lib目录:存放Hadoop的本地库(对数据进行压缩解压缩功能)
(4)sbin目录:存放启动或停止Hadoop相关服务的脚本
(5)share目录:存放Hadoop的依赖jar包、文档、和官方案例

后续经常使用的目录如下:
在这里插入图片描述
在这里插入图片描述


至此大功告成!!!!!!!!!!

相关文章:

从零开始Hadoop集群环境搭建

目录 1. Centos7.5硬件配置1.1 创建虚拟机1.2 虚拟机系统设置 2. IP地址和主机名称配置3. 软件配置3.1 安装 epel-release3.2 卸载虚拟机自带的JDK3.3 克隆虚拟机3.4 修改克隆虚拟机的IP3.5 JDK安装3.6 Hadoop安装 4. Hadoop目录结构 1. Centos7.5硬件配置 1.1 创建虚拟机 1.2…...

Copley耐环境伺服驱动器 极端环境下高精度控制解决方案

全球工业环境的日益复杂多变,对伺服驱动器的要求不再局限于基本的性能参数,而是在极端环境下的稳定性与可靠性。Copley耐环境伺服驱动器以卓越的性能和出色的环境适应性,为工业自动化领域的高精度控制提供了可靠的解决方案。 一、多样化的产…...

前端的全栈混合之路Meteor篇:分布式数据协议DDP深度剖析

本文属于进阶篇,并不是太适合新人阅读,但纯粹的学习还是可以的,因为后续会实现很多个ddp的版本用于web端、nodejs端、安卓端和ios端,提前预习和复习下。ddp协议是一个C/S架构的协议,但是客户端也同时可以是服务端。 什…...

基于Zynq SDIO WiFi移植一(支持2.4/5G)

基于SDIO接口的WIFI&#xff0c;在应用上&#xff0c;功耗低于USB接口&#xff0c;且无须USB Device支持&#xff0c;满足某些应用场景 1 硬件连接 2 Vivado工程配置 3 驱动编译 3.1 KERNRL CONFIG (build ENV) 修改 export KERNELPATH<path of kernel header>export T…...

数据结构与算法篇(刷题篇 - 链表)

目录 1. 反转链表&#xff08;简单&#xff09; 1.1. 题目描述 1.2. 解题思路 方法一&#xff1a;迭代&#xff08;推荐使用&#xff09; 方法二&#xff1a;递归&#xff08;扩展思路&#xff09; 方法三&#xff1a;使用栈解决 方法四&#xff1a;双链表求解 2. 链表内…...

TinyAgent: 从零开始构建最小化Agent系统

引言 随着大模型&#xff08;LLM&#xff09;的崛起&#xff0c;特别是ChatGPT等大模型的广泛应用&#xff0c;基于LLM的系统越来越受欢迎。然而&#xff0c;尽管大模型具备强大的生成能力和推理能力&#xff0c;它们在处理某些专有领域或实时问题时仍然存在局限性。因此&#…...

Android Studio New里面没有New Flutter Project

跟着Flutter中文网的配置教程&#xff0c;安装好了flutter,在Android studio里面也安装了dart和flutter的插件。重启后还是在FIle->New里面没有显示New Flutter Project。 反复卸载重装dart和flutter插件好几次&#xff0c;依然没有效果。 原来是没有把Android APK Suppor…...

linux信号 | 学习信号四步走 | 透析信号是如何被处理的?

前言&#xff1a;本节内容讲述linux信号的捕捉。 我们通过前面的学习&#xff0c; 已经学习了信号的概念&#xff0c; 信号的产生&#xff0c; 信号的保存。 只剩下信号的处理。 而信号的处理我们应该着重注意的是第三种处理方式——信号的捕捉。 也就是说&#xff0c; 这篇文章…...

mysql语句执行过程

具体流程如下: 1】当客户端的SOL发送到MySQL时&#xff0c;首先是到达服务器层的连接器&#xff0c;连接器会对你此次发起的连接进行权限校验&#xff0c;以此来获取你这个账号拥有的权限。当你的账号或密码不正确时&#xff0c;会报用户错误。连接成功如果后续没有任何操作&am…...

最新版本SkyWalking【10.1.0】部署

这里写目录标题 前言前置条件启动Skywalking下载解压启动说明 集成Skywalking Agent下载Agent在IDEA中添加agent启动应用并访问SpringBoot接口 说明 前言 基于当前最新版10.1.0搭建skywalking 前置条件 装有JDK11版本的环境了解SpringBoot相关知识 启动Skywalking 下载 地…...

WSL2 中配置桥接模式、虚拟交换机及固定 IP

WSL2 中配置桥接模式、虚拟交换机及固定 IP 一、创建虚拟交换机1.1 使用 Hyper-V 管理器创建虚拟交换机1.2 使用 PowerShell 创建虚拟交换机 二、更新 WSL 配置三、设置 WSL2 中的静态 IP、网关和 DNS3.1 编辑网络配置文件3.2 应用网络配置3.3 测试网络连接 四、重启 WSL 在使用…...

Unite Shanghai 2024 团结引擎专场 | 团结引擎 OpenHarmony 工程剖析

在 2024 年 7 月 24 日的 Unite Shanghai 2024 团结引擎专场演讲中&#xff0c;Unity中国 OpenHarmony 技术负责人刘伟贤对团结引擎导出的 OpenHarmony 工程进行了细节剖析&#xff0c;详细讲解 XComponent 如何与引擎结合&#xff0c;UI 线程和引擎线程的关联以及 ts/ets 的代…...

计算机毕业设计 基于Hadoop的智慧校园数据共享平台的设计与实现 Python毕业设计 Python毕业设计选题 Spark 大数据【附源码+安装调试】

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…...

2022CCPC绵阳站VP题解报告(CGHMAE六题)

文章目录 2022CCPC绵阳站VP题解报告前言[Problem - C ](https://codeforces.com/gym/104065/problem/C) &#xff08;签到思维&#xff09;[H (codeforces.com)](https://codeforces.com/gym/104065/problem/H) &#xff08;签到构造&#xff09;[Problem - G ](https://codefo…...

代码随想录day23:贪心part1

455. 分发饼干 class Solution {public int findContentChildren(int[] g, int[] s) {Arrays.sort(g);Arrays.sort(s);int res 0;int index s.length - 1;for(int i g.length - 1; i > 0; i--){if(index > 0 && s[index] > g[i]){res;index--;}}return r…...

通过网页设置参数,submit还是json

在通过网页设置参数并发送到服务器时&#xff0c;选择使用submit&#xff08;通常是通过HTML表单的提交&#xff09;还是直接发送JSON数据&#xff08;通常是通过AJAX请求&#xff0c;如使用fetch API&#xff09;取决于几个因素&#xff0c;包括你的服务器端如何处理这些请求、…...

C语言 | Leetcode C语言题解之第463题岛屿的周长

题目&#xff1a; 题解&#xff1a; const int dx[4] {0, 1, 0, -1}; const int dy[4] {1, 0, -1, 0};int dfs(int x, int y, int** grid, int n, int m) {if (x < 0 || x > n || y < 0 || y > m || grid[x][y] 0) {return 1;}if (grid[x][y] 2) {return 0;}g…...

逼近理论及应用精解【12】

文章目录 卷积卷积层与滤波层定义数学原理与公式定理架构例子例题 卷积层和滤波层概念的详细解释卷积层滤波层 滤波层和卷积层在卷积神经网络&#xff08;CNN&#xff09;中区别滤波层卷积层总结卷积层的数学原理滤波层的数学原理 参考文献 卷积 卷积层与滤波层 定义 卷积层…...

LIN总线学习大全(基于CANoe和CAPL)

&#x1f345; 我是蚂蚁小兵&#xff0c;专注于车载诊断领域&#xff0c;尤其擅长于对CANoe工具的使用&#x1f345; 寻找组织 &#xff0c;答疑解惑&#xff0c;摸鱼聊天&#xff0c;博客源码&#xff0c;点击加入&#x1f449;【相亲相爱一家人】&#x1f345; 玩转CANoe&…...

国庆作业

day1 1.开发环境 Linux系统GCCFDBmakefilesqlite3 2.功能描述 项目功能: 服务器&#xff1a;处理客户端的请求&#xff0c;并将数据存入数据库中&#xff0c;客户端请求的数据从数据库进行获取&#xff0c;服务器转发给客户端。 用户客户端&#xff1a;实现账号的注册、登…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中&#xff0c;结构体可以嵌套使用&#xff0c;形成更复杂的数据结构。例如&#xff0c;可以通过嵌套结构体描述多层级数据关系&#xff1a; struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版

7种色调职场工作汇报PPT&#xff0c;橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版&#xff1a;职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...

vulnyx Blogger writeup

信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面&#xff0c;gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress&#xff0c;说明目标所使用的cms是wordpress&#xff0c;访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...

day36-多路IO复用

一、基本概念 &#xff08;服务器多客户端模型&#xff09; 定义&#xff1a;单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用&#xff1a;应用程序通常需要处理来自多条事件流中的事件&#xff0c;比如我现在用的电脑&#xff0c;需要同时处理键盘鼠标…...

PHP 8.5 即将发布:管道操作符、强力调试

前不久&#xff0c;PHP宣布了即将在 2025 年 11 月 20 日 正式发布的 PHP 8.5&#xff01;作为 PHP 语言的又一次重要迭代&#xff0c;PHP 8.5 承诺带来一系列旨在提升代码可读性、健壮性以及开发者效率的改进。而更令人兴奋的是&#xff0c;借助强大的本地开发环境 ServBay&am…...

【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案

目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后&#xff0c;迭代器会失效&#xff0c;因为顺序迭代器在内存中是连续存储的&#xff0c;元素删除后&#xff0c;后续元素会前移。 但一些场景中&#xff0c;我们又需要在执行删除操作…...

掌握 HTTP 请求:理解 cURL GET 语法

cURL 是一个强大的命令行工具&#xff0c;用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中&#xff0c;cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...

使用SSE解决获取状态不一致问题

使用SSE解决获取状态不一致问题 1. 问题描述2. SSE介绍2.1 SSE 的工作原理2.2 SSE 的事件格式规范2.3 SSE与其他技术对比2.4 SSE 的优缺点 3. 实战代码 1. 问题描述 目前做的一个功能是上传多个文件&#xff0c;这个上传文件是整体功能的一部分&#xff0c;文件在上传的过程中…...