Ubuntu環境下HDFS配置的關鍵步驟
sudo apt update && sudo apt install -y openjdk-8-jdkjava -version(需顯示Java版本信息)。sudo apt install -y openssh-server;生成密鑰:ssh-keygen -t rsa -P '';復制公鑰到本地(單機模式無需此步,集群模式需分發到所有節點):ssh-copy-id localhost;測試連接:ssh localhost(無需密碼則成功)。從Apache Hadoop官網下載穩定版本(如3.3.4),解壓至指定目錄(如/usr/local/):
wget https://downloads.apache.org/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz
sudo tar -xzvf hadoop-3.3.4.tar.gz -C /usr/local/
重命名目錄(可選):sudo mv /usr/local/hadoop-3.3.4 /usr/local/hadoop。
編輯~/.bashrc(或/etc/profile),添加Hadoop相關變量:
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
使配置生效:source ~/.bashrc(或source /etc/profile)。
進入Hadoop配置目錄($HADOOP_HOME/etc/hadoop),修改以下文件:
localhost,集群模式為集群名稱)。<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>/usr/local/hadoop/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop/data/datanode</value>
</property>
</configuration>
```。
根據hdfs-site.xml中的配置,創建NameNode和DataNode的物理目錄:
sudo mkdir -p /usr/local/hadoop/data/namenode
sudo mkdir -p /usr/local/hadoop/data/datanode
修改目錄權限(確保Hadoop用戶擁有所有權):
sudo chown -R $USER:$USER /usr/local/hadoop/data。
首次啟動HDFS前,必須格式化NameNode(初始化元數據):
hdfs namenode -format
注意:格式化會清除已有數據,僅首次啟動時執行。
執行以下命令啟動HDFS(包含NameNode、DataNode、SecondaryNameNode):
start-dfs.sh
驗證進程是否啟動:jps(應顯示NameNode、DataNode、SecondaryNameNode進程)。
http://localhost:9870(Hadoop 3.x版本,默認端口為9870,若為2.x則為50070),查看HDFS狀態。hdfs dfs -mkdir -p /user/testhdfs dfs -put /path/to/localfile /user/test/hdfs dfs -ls /user/testhdfs dfs -get /user/test/remotefile /path/to/local/hdfs dfs -rm /user/test/remotefile。若系統啟用防火墻,需開放Hadoop相關端口(如NameNode的9000端口、Web界面的9870端口):
sudo ufw allow 9000
sudo ufw allow 9870。