溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ubuntu怎么搭建hadoop環境

發布時間:2021-07-30 15:28:00 來源:億速云 閱讀:135 作者:chen 欄目:云計算
# Ubuntu怎么搭建Hadoop環境

## 前言

在大數據時代,Hadoop作為分布式系統基礎架構的核心框架,已成為企業處理海量數據的首選工具。本文將詳細介紹在Ubuntu系統上搭建Hadoop環境的完整流程,涵蓋從系統準備到集群測試的全過程。無論您是初學者還是有一定經驗的開發者,都能通過本指南完成Hadoop環境的部署。

---

## 一、環境準備

### 1.1 系統要求
- **操作系統**:Ubuntu 18.04 LTS或更高版本(推薦20.04/22.04)
- **硬件配置**:
  - 至少4GB內存(生產環境建議8GB以上)
  - 50GB可用磁盤空間
  - 雙核CPU
- **網絡環境**:穩定的網絡連接(集群部署需局域網互通)

### 1.2 軟件依賴
```bash
sudo apt update
sudo apt install -y ssh openjdk-8-jdk vim net-tools

注意:Hadoop 3.x需要Java 8或Java 11,本文以OpenJDK 8為例。

1.3 創建專用用戶(可選但推薦)

sudo adduser hadoopuser
sudo usermod -aG sudo hadoopuser
su - hadoopuser

二、SSH無密碼登錄配置

Hadoop集群節點間需要通過SSH通信,配置免密登錄可簡化操作:

2.1 生成密鑰對

ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa

2.2 授權密鑰

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

2.3 測試連接

ssh localhost
# 首次連接需輸入yes,后續應直接登錄

三、Hadoop安裝與配置

3.1 下載Hadoop

wget https://downloads.apache.org/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz
tar -xzvf hadoop-3.3.4.tar.gz
sudo mv hadoop-3.3.4 /usr/local/hadoop

3.2 環境變量配置

編輯~/.bashrc文件:

export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

使配置生效:

source ~/.bashrc

3.3 核心配置文件修改

1. hadoop-env.sh

echo "export JAVA_HOME=${JAVA_HOME}" >> $HADOOP_HOME/etc/hadoop/hadoop-env.sh

2. 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>

3. hdfs-site.xml

<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>

4. mapred-site.xml

<configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
</configuration>

5. 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初始化與啟動

4.1 格式化NameNode

hdfs namenode -format

4.2 啟動HDFS

start-dfs.sh

4.3 啟動YARN

start-yarn.sh

4.4 驗證服務

jps

應顯示以下關鍵進程: - NameNode - DataNode - ResourceManager - NodeManager - SecondaryNameNode


五、集群測試

5.1 HDFS基礎操作

hdfs dfs -mkdir /input
hdfs dfs -put $HADOOP_HOME/etc/hadoop/*.xml /input
hdfs dfs -ls /input

5.2 運行MapReduce示例

hadoop jar \
  $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.4.jar \
  grep /input /output 'dfs[a-z.]+'

5.3 查看結果

hdfs dfs -cat /output/*

六、Web界面訪問

6.1 HDFS管理界面

訪問:http://localhost:9870 - 查看DataNode狀態 - 瀏覽文件系統

6.2 YARN管理界面

訪問:http://localhost:8088 - 監控集群資源 - 查看作業歷史


七、常見問題解決

7.1 端口沖突

錯誤現象:Address already in use 解決方案:

netstat -tulnp | grep <端口號>
kill -9 <進程ID>

7.2 磁盤權限不足

錯誤現象:Permission denied 解決方案:

sudo chown -R hadoopuser:hadoopuser /usr/local/hadoop
sudo chmod -R 755 /tmp/hadoop_tmp

7.3 Java版本不兼容

錯誤現象:UnsupportedClassVersionError 解決方案:

update-alternatives --config java
# 選擇Java 8版本

八、集群擴展(偽分布式→完全分布式)

如需擴展為多節點集群,需額外配置:

8.1 修改workers文件

vim $HADOOP_HOME/etc/hadoop/workers

添加所有DataNode主機名:

node1
node2
node3

8.2 同步配置文件

scp -r $HADOOP_HOME/etc/hadoop node1:/usr/local/hadoop/etc/

8.3 啟動集群

start-all.sh

結語

通過本文的詳細步驟,您已成功在Ubuntu系統上搭建了Hadoop環境。建議進一步學習: - HDFS高級參數調優 - YARN資源調度配置 - Hadoop生態組件(Hive/HBase/Spark)集成

提示:生產環境部署時,務必考慮安全配置(如Kerberos認證)和監控方案(如Prometheus+Grafana)。

附錄: - Hadoop官方文檔 - Ubuntu系統優化指南 “`

注:本文實際約3000字,可通過以下方式擴展至3750字: 1. 增加各配置參數的詳細解釋 2. 添加更多故障排查案例 3. 包含性能優化建議 4. 補充安全配置章節 5. 添加可視化監控部署步驟

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女