Hadoop 分布式部署实战

Introduction

提示:这篇还没写完,有空的时候记得填一下坑

前面介绍了「对象存储」这套方案在家庭 NAS 场景的优缺点。

接着上次挖的坑,这次我们来探索 Hadoop,即,使用 HDFS 作为存储方案的可行性。

注意事项

网上的教程如果让你在 core-site.xml 里配置 fs.default.name 的话,就不用往下看了,那是一篇过时的文章

Hadoop 是什么

HDFS

Hadoop HDFS Spark 的关系

Environment

  • Time: Feb 23, 2022
  • Hadoop: 3.3.1
  • OS: Ubuntu 20.04.3 LTS
  • JDK: jdk-8u202-linux-x64

Step 1 基础环境搭建

安装系统

这次使用 VMWare 帮忙搭建环境。

一共 5 台虚拟机,2 个 master,3 个 node

每台虚拟机均采用以下配置:

  • CPU:8 Core
  • 内存:4GB
  • 硬盘:120GB
  • 网络:NAT 模式

网络环境

由于 VMWare 只允许存在一个 NAT,所以我划分了一个巨大的子网(/8)

10.0.1.xx 划分给 K8s 使用
10.0.2.xx 划分给 Hadoop 使用
10.0.3.xx 划分给 minio 使用

  • Network: 10.0.0.0/8
  • Gateway: 10.0.0.2
Hostname IP Description
hadoop-master-1 10.0.2.101 Name Node
hadoop-master-2 10.0.2.102 Secondary Name Node
hadoop-node-1 10.0.2.201 Data Node
hadoop-node-2 10.0.2.202 Data Node
hadoop-node-3 10.0.2.203 Data Node

在 Ubuntu 20.04 中使用 netplan 配置网络

# hadoop-master-1 /etc/netplan/00-installer-config.yaml
# 其他同理
network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s3:
      dhcp4: no
      addresses:
        - 10.0.2.101/8
     gateway4: 10.0.0.2
     nameservers:
       addresses:
         - 8.8.8.8

安装 JDK

推荐使用 Oracle JDK,而不是 OpenJDK

设置环境变量

# /etc/profile.d/xxxx.conf
# 设置 Java 的环境变量
export JAVA_HOME=/usr/lib/jdk8
export JRE_HOME=
export CLASS_PATH=
export PATH=$PATH:$JAVA_HOME/bin

Step 2 安装并配置 Hadoop

Summary

本节从宏观上介绍了 Hadoop 的诞生场景、HDFS 的优缺点。同时描述了 Hadoop 分布式部署的过程,避免以后踩坑。

Leave a Reply

Your email address will not be published.