# Ubuntu下Hadoop如何安裝與部署
## 1. 環境準備
### 1.1 系統要求
- **操作系統**:Ubuntu 20.04 LTS 或更高版本(本文以Ubuntu 22.04為例)
- **硬件配置**:
- 至少4GB內存(建議8GB以上)
- 50GB可用磁盤空間
- 多核CPU
- **網絡**:穩定的網絡連接(用于下載依賴包)
### 1.2 安裝必要工具
```bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y ssh openjdk-11-jdk vim net-tools
注意:Hadoop 3.x需要Java 8或11,推薦使用OpenJDK 11。
Hadoop集群節點間需要通過SSH通信,需配置免密登錄:
# 生成密鑰對(連續回車默認設置)
ssh-keygen -t rsa -P ""
# 將公鑰寫入授權文件
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
# 測試本地免密登錄
ssh localhost
從Apache官網下載穩定版(本文以3.3.6為例):
wget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -xzvf hadoop-3.3.6.tar.gz
sudo mv hadoop-3.3.6 /usr/local/hadoop
編輯~/.bashrc
文件:
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
使配置生效:
source ~/.bashrc
編輯$HADOOP_HOME/etc/hadoop/core-site.xml
:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/tmp/hadoop_tmp</value>
</property>
</configuration>
編輯$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>file:///usr/local/hadoop/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///usr/local/hadoop/data/datanode</value>
</property>
</configuration>
編輯$HADOOP_HOME/etc/hadoop/yarn-site.xml
:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.env-whitelist</name>
<value>JAVA_HOME,HADOOP_COMMON_HOME</value>
</property>
</configuration>
首次使用前需格式化:
hdfs namenode -format
# 啟動HDFS
start-dfs.sh
# 啟動YARN
start-yarn.sh
驗證服務:
jps
應看到以下進程: - NameNode - DataNode - ResourceManager - NodeManager - SecondaryNameNode
# 創建HDFS目錄
hdfs dfs -mkdir /input
# 上傳測試文件
hdfs dfs -put $HADOOP_HOME/etc/hadoop/*.xml /input
# 運行MapReduce示例
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.6.jar wordcount /input /output
# 查看結果
hdfs dfs -cat /output/*
若遇到端口占用錯誤,可通過netstat -tulnp
查找并終止沖突進程。
確保JAVA_HOME
在$HADOOP_HOME/etc/hadoop/hadoop-env.sh
中正確配置。
使用chmod
修改相關目錄權限:
sudo chown -R $USER:$USER /usr/local/hadoop
本文詳細介紹了Ubuntu系統下單節點Hadoop集群的部署流程。實際生產環境中,還需根據集群規模調整配置文件參數,并考慮安全加固措施。建議通過閱讀官方文檔深入了解各組件配置選項。
擴展建議:下一步可嘗試配置多節點集群,或集成Hive、Spark等大數據生態工具。 “`
(全文約1150字)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。