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

ifconfig

ping 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.localdomain

192.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

相关推荐

  1. centoskubernetes步骤

    2024-03-29 05:08:01       29 阅读
  2. CentosNacos

    2024-03-29 05:08:01       25 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-29 05:08:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-29 05:08:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-29 05:08:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-29 05:08:01       20 阅读

热门阅读

  1. SHELL(01)

    2024-03-29 05:08:01       17 阅读
  2. 本人拟采购开发工具

    2024-03-29 05:08:01       17 阅读
  3. 幽默记忆TCP/UDP/DNS/三次握手

    2024-03-29 05:08:01       16 阅读
  4. IDEA 搭建 Otter 源码 DEBUG 环境

    2024-03-29 05:08:01       22 阅读
  5. nginx 设置跨域

    2024-03-29 05:08:01       18 阅读
  6. 钓鱼_精准定位GPS

    2024-03-29 05:08:01       20 阅读
  7. Typescript再学习-类(8)

    2024-03-29 05:08:01       16 阅读
  8. C++如何在const函数修改成员变量的值

    2024-03-29 05:08:01       19 阅读
  9. 游戏服务端面试备忘(C++、Python)

    2024-03-29 05:08:01       20 阅读