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
相关文章:

Linux 系统 CentOS7 上搭建 Hadoop HDFS集群详细步骤
集群搭建 整体思路:先在一个节点上安装、配置,然后再克隆出多个节点,修改 IP ,免密,主机名等 提前规划: 需要三个节点,主机名分别命名:node1、node2、node3 在下面对 node1 配置时,先假设 node2 和 node3 是存在的 **注意:**整个搭建过程,除了1和2 步,其他操作都使…...
【Python】python+requests+excel+pytest-实现接口自动化实例
目录 测试需求实现思路完整框架2.1 初始化数据 (test_data.xlsx)2.2 核心脚本 (api_client.py)2.3 测试用例 (test_interfaces.py)2.4 日志 (logging)2.5 pytest配置文件 (pytest.ini)2.6 测试报告 (pytest-html)2.7 入口函数 (run_tests.py)2.8 完整流程注意事项测试需求 简单…...
Django(四)-搭建第一个应用(3)
一、问题详情页 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>展示某个投票的问题和不带结果的选项列表</title> </head> <body><form action"{% url polls:vote questi…...

吴恩达2022机器学习专项课程(一) 4.2 梯度下降实践
问题预览/关键词 本节内容梯度下降更新w的公式梯度下降更新b的公式的含义α的含义为什么要控制梯度下降的幅度?导数项的含义为什么要控制梯度下降的方向?梯度下降何时结束?梯度下降算法收敛的含义正确更新梯度下降的顺序错误更新梯度下降的顺…...

SQL,group by分组后分别计算组内不同值的数量
SQL,group by分组后分别计算组内不同值的数量 如现有一张购物表shopping 先要求小明和小红分别买了多少笔和多少橡皮,形成以下格式 SELECT name,COUNT(*) FROM shopping GROUP BY name;SELECT name AS 姓名,SUM( CASE WHEN cargo 笔 THEN 1 ELSE 0 END)…...
关于python中常用命令(持续更新中)
目录 关于pip 卸载安装pip 更新pip 更换pip镜像源 清除缓存 更新指定包 指定清华镜像下载指定包 关于conda 更换清华镜像源 优先使用清华镜像 清除缓存 关于数据分析、数据挖掘常用 Matplotlib 3.6.0 文档(绘图实例) jupyter字体问题 jup…...

JAVA学习笔记21
1.IDEA的使用 1.ctrl B 快速定位到方法 2.ctrl Y 快速删除行 3.ctrl D 快速复制行 4.ctrl H 查看继承的层级关系 5.快速格式化代码 ctrl shift L 6.alt R 快速允许程序 7.ctrl / 快速添加注释 1.包(软件包) 1.1包的三大作用 1.区分相同名字的类 2.当类很多的…...

如何制作Word模板并用Java导出自定义的内容
1前言 在做项目时会按照指定模板导出word文档,本文讲解分析需求后,制作word模板、修改模板内容,最终通过Java代码实现按照模板自定义内容的导出。 2制作word模板 2.1 新建word文档 新建word文档,根据需求进行编写模板内容,调整行间距和段落格式后将指定替换位置留空。…...
ubuntu 安装配置samba服务器完整教程
ubuntu 安装配置samba服务器完整教程 问题描述解决方法郑重声明:本人原创博文,都是实战,均经过实际项目验证出货的 转载请标明出处:攻城狮2015 Platform: Intel arm64 OS:ubuntu16.04 问题描述 在安卓驱动系统开发的过程中,会需要搭建服务器,又需要搭建samba服务器,下面就…...

【APP_TYC】数据采集案例天眼APP查_查壳脱壳反编译_③
是不是生活太艰难 还是活色生香 我们都遍体鳞伤 也慢慢坏了心肠 你得到你想要的吗 换来的是铁石心肠 可曾还有什么人 再让你幻想 🎵 朴树《清白之年》 查壳 工具介绍Frida-dexDump Frida-dexDump简介 Frida-dexDump是基于Frida的一个工具&…...

通过MobaXterm工具可视化服务器桌面
一、MobaXterm工具 MobaXterm是一款功能强大的远程连接工具,可以连接到各种类型的服务器,包括Linux、Windows和MacOS。支持多种协议,包括SSH、RDP、VNC和Telnet MobaXterm可以通过X11转发功能可视化服务器桌面。 二、MobaXterm工具可视化服务…...

ctf题目
目录 1.文件包含的一道题目,没什么难度, 2.一道sql注入的题目,伪静态 3.限制只能本地访问。 1.文件包含的一道题目,没什么难度, 但是一个点就是它这里去包含的那个文件名就是flag,而不是flag.php也不是f…...
git 更改仓库地址
背景: 项目本来在A仓库进行保管,研发已经开发一段时间了,现在切换到了新的仓库B,研发本地如何将仓库切换到B 解决: # 查看远端地址 git remote -v # 查看远端仓库名 git remote # 重新设置远程仓库 git remote s…...

GLTFExporter是一个用于将3D场景导出为glTF格式的JavaScript库。
demo案例 GLTFExporter是一个用于将3D场景导出为glTF格式的JavaScript库。下面我将逐个讲解其入参、出参、属性、方法以及API使用方式。 入参(Input Parameters): GLTFExporter的主要入参是要导出的场景对象和一些导出选项。具体来说: s…...

消息队列经典应用场景
笔者心中,消息队列,缓存,分库分表是高并发解决方案三剑客。 在职业生涯中,笔者曾经使用过 ActiveMQ 、RabbitMQ 、Kafka 、RocketMQ 这些知名的消息队列 。 这篇文章,笔者结合自己的真实经历,和大家分享消息队列的七种经典应用场景。 1 异步&解耦 笔者曾经负责某电…...

阿里云Salesforce CRM功能差异列表 - Winter‘24
阉割版的阿里云Salesforce由于技术和监管等因素与国际版的Salesforce差距很大! 一、Winter‘ 24版差异概况: 1.1. 主要版本: 阿里云上的 Salesforce 提供两个版本,用于生产用途的 CN 版本(CN Edition)和用…...

WIN10系统下误删除了用户重启无法登录
WIN10系统下误删除了用户重启无法登录 不小心在控制面板的用户组里面删除了当前的用户,在电脑重启后无论怎么输入密码都提示不正确不能登录。 在选择登录的界面同时点击 shift 和重启按钮;在进入的界面选择“疑难问题”;选择进入安全模式&…...

国内ip怎么来回切换:操作指南与注意事项
在数字化时代,互联网已经成为我们日常生活、学习和工作中不可或缺的一部分。然而,随着网络应用的不断深化,用户对于网络环境的稳定性和安全性要求也越来越高。其中,IP地址作为网络中的关键标识,其切换与管理显得尤为重…...

day72Html
常用标签: 分类: 块级标签:独立成行 行级标签:不独立成行,同一行可放多个行级标 注意网页显示时,忽略空白字符,(回车符,空格,tab制表符) 一)块级标签…...

C语言内存函数(超详解)
乐观学习,乐观生活,才能不断前进啊!!! 我的主页:optimistic_chen 我的专栏:c语言 点击主页:optimistic_chen和专栏:c语言, 创作不易,大佬们点赞鼓…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...
【Linux】C语言执行shell指令
在C语言中执行Shell指令 在C语言中,有几种方法可以执行Shell指令: 1. 使用system()函数 这是最简单的方法,包含在stdlib.h头文件中: #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...
基础测试工具使用经验
背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...

基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

AI,如何重构理解、匹配与决策?
AI 时代,我们如何理解消费? 作者|王彬 封面|Unplash 人们通过信息理解世界。 曾几何时,PC 与移动互联网重塑了人们的购物路径:信息变得唾手可得,商品决策变得高度依赖内容。 但 AI 时代的来…...
rnn判断string中第一次出现a的下标
# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...

JVM 内存结构 详解
内存结构 运行时数据区: Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器: 线程私有,程序控制流的指示器,分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 每个线程都有一个程序计数…...

接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...

GO协程(Goroutine)问题总结
在使用Go语言来编写代码时,遇到的一些问题总结一下 [参考文档]:https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现: 今天在看到这个教程的时候,在自己的电…...

[ACTF2020 新生赛]Include 1(php://filter伪协议)
题目 做法 启动靶机,点进去 点进去 查看URL,有 ?fileflag.php说明存在文件包含,原理是php://filter 协议 当它与包含函数结合时,php://filter流会被当作php文件执行。 用php://filter加编码,能让PHP把文件内容…...