在 Linux 环境下,HDFS(Hadoop Distributed File System)配置主要是指对 Hadoop 中 HDFS 相关配置文件进行修改,以使 NameNode、DataNode 等组件能够正常启动和运行。下面从核心配置文件、关键参数、配置示例、启动方式几个方面说明。
$HADOOP_HOME/etc/hadoop/)| 文件 | 作用 |
|---|---|
hadoop-env.sh |
设置 Java 环境、Hadoop 运行参数 |
core-site.xml |
全局配置(HDFS 入口地址) |
hdfs-site.xml |
HDFS 专属配置(副本数、目录等) |
workers(或 slaves) |
指定 DataNode 节点 |
mapred-site.xml / yarn-site.xml |
非 HDFS 必需,但常一起配置 |
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export HADOOP_HOME=/opt/hadoop
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hadoop/data/datanode</value>
</property>
</configuration>
localhost
<property>
<name>fs.defaultFS</name>
<value>hdfs://namenode:9000</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.http-address</name>
<value>namenode:9870</value>
</property>
datanode1
datanode2
datanode3
需配置 SSH 无密码登录 和 hosts 文件
# 格式化 NameNode(仅第一次)
hdfs namenode -format
# 启动 HDFS
start-dfs.sh
# 查看进程
jps
# NameNode / DataNode / SecondaryNameNode
Web 管理页面:
http://localhost:9870
| 参数 | 说明 |
|---|---|
dfs.replication |
数据副本数(默认3) |
dfs.blocksize |
块大小(默认128MB) |
dfs.namenode.name.dir |
NameNode 元数据目录 |
dfs.datanode.data.dir |
DataNode 数据目录 |
fs.defaultFS |
HDFS 访问入口 |
fs.defaultFSdata 目录重新 format如果你愿意,我可以:
你现在是 学习 / 面试 / 生产环境 用?