要快速在 Linux 上配置 HDFS(Hadoop 分布式文件系统),下面给你一个从零到可用的精简流程,适合单机伪分布式(最常用、最快上手)。如果你需要完全分布式,我也可以再补充。
# CentOS / Rocky
yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
# Ubuntu
apt install -y openjdk-8-jdk
验证:
java -version
ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
测试:
ssh localhost
cd /opt
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
mv hadoop-3.3.6 hadoop
编辑 ~/.bashrc:
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
生效:
source ~/.bashrc
验证:
hadoop version
core-site.xmlvim $HADOOP_HOME/etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
hdfs-site.xmlvim $HADOOP_HOME/etc/hadoop/hdfs-site.xml
<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>
创建目录:
mkdir -p /opt/hadoop/data/{namenode,datanode}
⚠️ 只在首次执行
hdfs namenode -format
start-dfs.sh
验证:
jps
应看到:
NameNode
DataNode
SecondaryNameNode
hdfs dfs -ls /
hdfs dfs -mkdir /test
hdfs dfs -put /etc/hosts /test
hdfs dfs -ls /test
访问 Web UI:
http://localhost:9870
vim $HADOOP_HOME/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
netstat -tunlp | grep 9000
使用 Docker:
docker run -d -p 9870:9870 -p 9000:9000 bde2020/hadoop-namenode
✅ MapReduce
✅ YARN
✅ 完全分布式 HDFS
✅ 高可用(HA)
如果你告诉我:
我可以给你定制版配置方案。