溫馨提示×

Ubuntu Hadoop 虛擬機怎么配置

小樊
40
2025-10-14 11:59:22
欄目: 云計算

Ubuntu虛擬機配置Hadoop(偽分布式/單節點模式)

1. 前置準備

  • 環境要求:Ubuntu 22.04/20.04/18.04虛擬機(建議內存≥4GB,磁盤≥20GB);虛擬機軟件(如VMware Workstation/Player)。
  • 基礎工具:終端(Terminal)、文本編輯器(vim/nano)、網絡工具(Xshell/Xftp,可選)。

2. 安裝與配置Java(Hadoop依賴)

Hadoop是用Java開發的,需先安裝JDK(推薦OpenJDK 8/11/17):

# 更新軟件包列表
sudo apt update
# 安裝OpenJDK 11(可根據需求替換為8/17)
sudo apt install -y openjdk-11-jdk
# 驗證安裝
java -version  # 應輸出JDK版本信息

配置Java環境變量(編輯~/.bashrc):

vim ~/.bashrc

在文件末尾添加:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64  # 根據實際JDK路徑調整
export PATH=$PATH:$JAVA_HOME/bin

使配置生效:

source ~/.bashrc

3. 下載與安裝Hadoop

從Apache官網下載穩定版Hadoop(如3.3.4),解壓至/usr/local/

# 下載Hadoop(以3.3.4為例)
wget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz
# 解壓
tar -xzvf hadoop-3.3.4.tar.gz
# 移動至/usr/local/并重命名
sudo mv hadoop-3.3.4 /usr/local/hadoop
# 修改目錄權限(避免后續操作權限問題)
sudo chown -R $USER:$USER /usr/local/hadoop

4. 配置Hadoop環境變量

編輯~/.bashrc,添加Hadoop相關變量:

vim ~/.bashrc

在文件末尾添加:

export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"

使配置生效:

source ~/.bashrc

5. 配置Hadoop核心文件

進入Hadoop配置目錄($HADOOP_HOME/etc/hadoop),修改以下文件:

(1) core-site.xml(HDFS默認文件系統)

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>  <!-- HDFS NameNode地址 -->
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop/tmp</value>  <!-- 臨時目錄 -->
    </property>
</configuration>

(2) hdfs-site.xml(HDFS存儲配置)

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>  <!-- 副本數(偽分布式模式設為1) -->
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:///usr/local/hadoop/dfs/name</value>  <!-- NameNode數據目錄 -->
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:///usr/local/hadoop/dfs/data</value>  <!-- DataNode數據目錄 -->
    </property>
</configuration>

(3) mapred-site.xml(MapReduce框架配置)

若文件不存在,可復制模板生成:

cp mapred-site.xml.template mapred-site.xml

修改內容:

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>  <!-- 使用YARN作為資源管理器 -->
    </property>
</configuration>

(4) yarn-site.xml(YARN配置)

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>  <!-- Shuffle服務 -->
    </property>
    <property>
        <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
        <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
</configuration>

6. 創建HDFS數據目錄

# 創建NameNode數據目錄
mkdir -p /usr/local/hadoop/dfs/name
# 創建DataNode數據目錄
mkdir -p /usr/local/hadoop/dfs/data

7. 格式化HDFS(首次啟動前必須執行)

格式化會清除HDFS中的所有數據,僅首次啟動時執行:

hdfs namenode -format

8. 啟動Hadoop集群

啟動HDFS和YARN服務:

# 啟動HDFS
start-dfs.sh
# 啟動YARN
start-yarn.sh

查看服務狀態:

# 查看Hadoop進程
jps  # 應顯示NameNode、DataNode、ResourceManager、NodeManager等進程
# 查看HDFS健康狀態
hdfs dfsadmin -report

9. 驗證Hadoop功能

運行Hadoop自帶的WordCount示例,驗證集群是否正常工作:

# 創建輸入目錄
hdfs dfs -mkdir -p /input
# 將Hadoop配置文件復制到輸入目錄(作為測試數據)
hdfs dfs -put $HADOOP_HOME/etc/hadoop/*.xml /input
# 運行WordCount程序
hdfs dfs -cat /output/*

常見問題解決

  • 權限問題:若啟動時報權限錯誤,執行chmod -R 755 /usr/local/hadoop調整目錄權限。
  • 端口沖突:若HDFS端口(9000)被占用,修改core-site.xml中的fs.defaultFS端口(如改為9001)。
  • 環境變量未生效:確保~/.bashrc修改后執行了source ~/.bashrc,或重啟終端。

通過以上步驟,即可在Ubuntu虛擬機上完成Hadoop的單節點(偽分布式)配置,并驗證其基本功能。

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