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 分布式部署的过程,避免以后踩坑。