新手学习 Linux + HDFS 配置,建议按“先 Linux 基础 → 再 Hadoop/HDFS 概念 → 最后实操配置”的路线来。下面给你一个循序渐进的学习路径 + 实操示例。
HDFS 是运行在 Linux 上的,以下至少要会:
ls / pwd / cd
mkdir / rm / cp / mv
chmod / chown
ps / top / netstat
scp / ssh
vi / nano
useradd hadoop
passwd hadoop
visudo
hadoop ALL=(ALL) NOPASSWD:ALL
ssh-keygen -t rsa
ssh-copy-id localhost
✅ 目标:
你能不用密码 ssh 到本机或集群机器
| 角色 | 作用 |
|---|---|
| NameNode | 管理元数据(文件在哪) |
| DataNode | 真正存数据 |
| SecondaryNameNode | 辅助 NameNode |
java -version
wget https://downloads.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -zxvf hadoop-3.3.6.tar.gz -C /opt
vi ~/.bashrc
export HADOOP_HOME=/opt/hadoop-3.3.6
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source ~/.bashrc
hadoop-env.shexport JAVA_HOME=/usr/java/jdk1.8.0_xxx
core-site.xml<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
hdfs-site.xml<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop/data/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hadoop/data/data</value>
</property>
</configuration>
hdfs namenode -format
start-dfs.sh
jps
应看到:
NameNode
DataNode
SecondaryNameNode
网页查看:
http://localhost:9870
hdfs dfs -mkdir /test
hdfs dfs -put file.txt /test
hdfs dfs -ls /
hdfs dfs -cat /test/file.txt
hdfs dfs -rm -r /test
❌ 没配 SSH 免密
❌ JAVA_HOME 不对
❌ 多次 format NameNode
❌ 防火墙没关
systemctl stop firewalld
如果你愿意,我可以:
你现在是 完全零基础,还是已经会一点 Linux?