Linux 系统 CentOS7 上搭建 Hadoop HDFS集群详细步骤

集群搭建

整体思路:先在一个节点上安装、配置,然后再克隆出多个节点,修改 IP ,免密,主机名等

提前规划:

需要三个节点,主机名分别命名:node1、node2、node3

在下面对 node1 配置时,先假设 node2 和 node3 是存在的

**注意:**整个搭建过程,除了1和2 步,其他操作都使用普通用户权限

1. 修改时区 (可选)

# 编辑 配置文件 profile
vim /etc/profile

添加如下内容:

TZ='Asia/Shanghai'; export TZ

保存退出后,在执行 source ,让修改立即生效

source /etc/profile  # 立即起效

2. 修改普通用户权限

sudo 是一个在类 Unix 操作系统(如 Linux 和 macOS)中广泛使用的命令行程序,它提供了对系统权限的精细控制。sudo 允许经过授权的普通用户以超级用户(root)或其他用户的安全上下文执行命令,而无需知道超级用户的密码。这样做的好处是可以限制用户仅能在需要更高权限时暂时提升权限,同时系统管理员可以在 /etc/sudoers 配置文件中精确地配置每个用户能够执行哪些命令以及何时需要进行密码验证。

当用户在命令前加上 sudo 并成功通过密码验证后,系统将以具有相应权限的用户身份执行该命令。这有助于提高系统的安全性,因为不是所有操作都要求用户直接拥有 root 密码,而是按需授权。此外,sudo 还支持日志记录功能,可以追踪谁在何时使用 sudo 执行了哪些操作,这对于审计和安全审查至关重要。

新建用户

#新建用户
useradd zhang
#修改密码
passwd zhang

操作如下:

#-------操作如下:
[root@node3 hadoop-3.2.4]# useradd zhang
[root@node3 hadoop-3.2.4]# passwd zhang
Changing password for user zhang.
New password: 
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.
[root@node3 hadoop-3.2.4]# su zhang

修改 /etc/sudoers 文件权限

# 切换到超级管理员
su root 
# 修改文件权限,允许root 可以修改文件
chmod u+w,g+w /etc/sudoers
# 编辑配置文件
vim /etc/sudoers

在 /etc/sudoers 文件中,找到 root 所在的位置

在 sudoers 文件中添加如下内容:

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL   ## 找到这一行
zhang   ALL=(ALL)       NOPASSWD:ALL

添加完成后,在切换回普通用户

su zhang

下面的所有操作都是在普通用户 zhang 下完成的!!

注意:

没有上面的配置时,是不能使用 sudo 命令的,否则会报错如下:

[sudo] password for zhang: zhang is not in the sudoers file.  This incident will be reported.上面问题说明 zhang 没有权限使用sudo ,需要在 /etc/sudoers 文件中配置zhang=(ALL)  NOPASSWD:ALL

3. 修改静态IP

注意:

修改前,先使用名 ifconfig 查看默认主动分配的 IP

在修改时,需要用到默认 IP 相同的网段。

# 在普通用户下使用如下命令
sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33

修改添加内容如下:

IPADDR=192.168.184.11

DNS1=8.8.8.8

DNS2=114.114.114.114

NETMASK=255.255.255.0

GATEWAY=192.168.184.2

修改后的内容如下:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"  # 这里修改为静态
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="1249af60-5ecf-452b-b0fb-20f154a73147"
DEVICE="ens33"
ONBOOT="yes"
#============添加下面的配置,注意网段和默认网段相同============
IPADDR=192.168.184.13
DNS1=8.8.8.8
DNS2=114.114.114.114
NETMASK=255.255.255.0
GATEWAY=192.168.184.2

**注意:**后面在克隆时,其他节点的 ip 只修改 IPADDR 中的 .11 即可,其他网段保持一致不动

修改完成后重启:

sudo systemctl restart network.service

注意: 有时会遇到重启网卡无效的情况,这时在确认修改没问题的前提下,reboot 重启系统即可

再次查看IP

ifconfigping www.baidu.com ## 测试外网

修改完IP后,可以切换使用 xshell 客户端

4. 修改主机名

命令:set-hostname 主机名

sudo hostnamectl set-hostname node1

5. 配置 主机名和 IP 映射

配置主机名和 IP 的映射

/etc/hosts

sudo vim /etc/hosts

编辑内容如下:

127.0.0.1  localhost localhost.localdomain::1     localhost localhost.localdomain192.168.184.11 node1
192.168.184.12 node2
192.168.184.13 node3

6. 新建/opt/apps

本教程相关的安装软件及安装目录都会放置在 /opt 和 /opt/apps 目录下

# 切换到 /opt 目录下
cd /opt
# 在 /opt 目录下新建 apps 文件夹
sudo mkdir apps

7. 上传 jdk 和hadoop

使用 xftp 上传

上传 JDK 和 hadoop 到 /opt 目录下

对于单个文件上传,也可以直接拖拽文件到 XShell 窗口上传

在这里插入图片描述

8. 安装JDK 和 配置

(1) 先解压

注意:

  • 当前位置 /opt 下;
  • 下面 -C 为大写
# jdk-8u281-linux-x64.tar.gz 为你自己的安装包名  
sudo t

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

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

相关文章

VMware vSAN OSA存储策略 - 基于虚拟机的分布式对象存储

简介 博客:https://songxwn.com/ 存储策略 (Storage Policy) 是管理员定义的一组规则,这组规则定义了数据对象在 vSAN 存储上是如何保存的,存储策略定义了数据存储的可靠性、访问性能等特性。vSAN 提供了基于存储策略的存储管理 SPBM (Stor…

TheMoon 恶意软件短时间感染 6,000 台华硕路由器以获取代理服务

文章目录 针对华硕路由器Faceless代理服务预防措施 一种名为"TheMoon"的新变种恶意软件僵尸网络已经被发现正在侵入全球88个国家数千台过时的小型办公室与家庭办公室(SOHO)路由器以及物联网设备。 "TheMoon"与“Faceless”代理服务有关联,该服务…

Leetcode 128. 最长连续序列

心路历程: 这道题一开始没想出来该怎么做,以看到要求O(N)的时间复杂度,第一反应是用双指针,但是后来发现双指针很难和连续这个概念联系起来。后来发现集合的查询复杂度是O(1)的,在一次遍历中可以进行任意次数的查询。…

【python】flask模板渲染引擎Jinja2中的模板继承,简化前端模块化开发

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

aws 入门篇 01.aws学习的方法论

aws入门篇 01.aws学习的方法论 第1章 aws学习的方法论 aws的服务很多,现在应该有100多个服务了,怎么来学习aws呢? 这几年也使用了一些aws的服务,谈谈自己对学习aws的理解。 1.先横向,后纵深 比如说,aws最…

LLM之RAG实战(三十五)| 使用LangChain的3种query扩展来优化RAG

RAG有时无法从矢量数据库中检索到正确的文档。比如我们问如下问题: 从1980年到1990年,国际象棋的规则是什么? RAG在矢量数据库中进行相似性搜索,来查询与国际象棋规则问题相关的相关文档。然而,在某些情况下&#xff0…

JAVA使用POI实现Excel单元格合并-02

JAVA使用POI实现Excel单元格合并 实现效果 解释&#xff1a;只要是遇见与前一行相同的数据就合并 引入jar <dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>5.2.2</version></depe…

乐维更改IP地址

1.1 系统IP调整 vim /etc/sysconfig/network-scripts/ifcfg-ens1921.2 Web相关服务IP变更 1.2.1 编辑/itops/nginx/html/lwjkapp/.env文件,更改ZABBIXSERVER、ZABBIXRPCURL、DB_HOST中的IP 1.2.2 进入/itops/nginx/html/lwjk_app/目录下,执行php bin/manager process-conso…

Intellij IDEA安装配置Spark与运行

目录 Scala配置教程 配置Spark运行环境 编写Spark程序 1、包和导入 2、定义对象 3、主函数 4、创建Spark配置和上下文 5、定义输入文件路径 6、单词计数逻辑 7、输出结果 8、完整代码&#xff1a; Scala配置教程 IDEA配置Scala&#xff1a;教程 配置Spark运行环境 …

HTTP

HTTP 概念&#xff1a;HyperTextTransferProtocol&#xff0c;超文本传输协议&#xff0c;规定了浏览器和服务器之间数据传输的规则 HTTP协议特点&#xff1a; 1.基于TCP协议&#xff1a;面向连接&#xff0c;安全 2.基于请求-响应模型的&#xff1a;一次请求对应一次响应 …

【计算机网络】第 9 问:四种信道划分介质访问控制?

目录 正文什么是信道划分介质访问控制&#xff1f;什么是多路复用技术&#xff1f;四种信道划分介质访问控制1. 频分多路复用 FDM2. 时分多路复用 TDM3. 波分多路复用 WDM4. 码分多路复用 CDM 正文 什么是信道划分介质访问控制&#xff1f; 信道划分介质访问控制&#xff08;…

RabbitMQ 实验消费原始队列消息, 拒绝(reject)投递死信交换机过程

如果你想通过 RabbitMQ 的死信队列功能实现消费者拒绝消息投递到死信交换机的行为&#xff0c;你可以按照以下步骤操作&#xff1a; 创建原始队列&#xff0c;并将其绑定到一个交换机上&#xff1a; export RABBITMQ_SERVER127.0.0.1 export RABBITMQ_PORT5672 export RAB…

WordPress Git主题 响应式CMS主题模板

分享的是新版本&#xff0c;旧版本少了很多功能&#xff0c;尤其在新版支持自动更新后&#xff0c;该主题可以用来搭建个人博客&#xff0c;素材下载网站&#xff0c;图片站等 主题特点 兼容 IE9、谷歌 Chrome 、火狐 Firefox 等主流浏览器 扁平化的设计加响应式布局&#x…

Xcode删除原本的Git,再添加新的git

本文参考&#xff1a;Xcode怎么删除原本git,在重新设置新的git地址_ios xcode 删除原本git-CSDN博客 开发中会有一个问题。Xcode项目A 提交到Git服务器server1&#xff0c;此时项目A内部已经存在一个Git文件&#xff0c;与server1相关联。 此时你想将项目A提交到 另一个Git…

verilog设计-cdc:多比特信号跨时钟域(DMUX)

一、前言 多比特一般为数据&#xff0c;其在跨时钟域传输的过程中有多种处理方式&#xff0c;比如DMUX&#xff0c;异步FIFO&#xff0c;双口RAM&#xff0c;握手处理。本文介绍通过DMUX的方式传输多比特信号。 二、DMUX同步跨时钟域数据 dmux表示数据分配器&#xff0c;该方…

GPT-1原理-Improving Language Understanding by Generative Pre-Training

文章目录 前言提出动机模型猜想模型提出模型结构模型参数 模型预训练训练的目标训练方式训练参数预训练数据集预训练疑问点 模型微调模型输入范式模型训练微调建议微调疑问点 实验结果分析 前言 首先想感慨一波 这是当下最流行的大模型的的开篇之作&#xff0c;由OpenAI提出。…

程序员35岁会失业吗?

在科技日新月异的时代&#xff0c;程序员这一职业群体成为了社会发展的重要推动力。然而&#xff0c;随着技术的不断更新迭代和职场竞争的加剧&#xff0c;许多程序员开始担忧自己的职业前景&#xff0c;特别是那些即将步入或已经步入35岁的程序员。他们面临着一个现实的问题&a…

专业130+总分410+西南交通大学924信号与系统考研经验西南交大电子信息通信工程,真题,大纲,参考书。

初试分数出来&#xff0c;专业课924信号与系统130&#xff0c;总分410&#xff0c;整体上发挥正常&#xff0c;但是还有遗憾&#xff0c;其实自己可以做的更好&#xff0c;总结一下经验&#xff0c;希望对大家有所帮助。专业课&#xff1a;&#xff08;130&#xff09; 西南交…

【React】onClick点击事件传参的4种方式

记录React onClick 点击事件传参的 4 种方式 方式一&#xff1a;使用内联箭头函数 import React, { MouseEvent } from "react";function App() {const handleClick (event: MouseEvent<HTMLButtonElement>, name: string) > {console.log(event)console.…

Nginx第三方模块---nginx-sticky-module的使用(基于cookie的会话保持)

目录 Nginx和Sticky介绍 编译安装sticky的nginx环境 安装过程碰到的问题和编译安装过程遇到的错误&#xff1a; &#xff08;1&#xff09;第一个错误&#xff1a;修改源代码ngx_http_sticky_module.c &#xff08;2&#xff09;第二个错误&#xff1a;修改源代码ngx_http_s…