# 如何在CentOS6.5-64bit上部署Hadoop2.4.1分布式環境
## 前言
在大數據時代背景下,Hadoop作為開源的分布式計算框架,已成為企業處理海量數據的核心工具。本文將詳細介紹在CentOS 6.5 64位操作系統上搭建Hadoop 2.4.1分布式集群的全過程,涵蓋環境準備、配置優化、集群部署及驗證測試等關鍵環節。
---
## 一、環境準備
### 1.1 硬件需求
| 組件 | 最低配置 | 推薦配置 |
|---------------|----------------|----------------|
| 服務器數量 | 3臺(1主2從) | 5臺以上 |
| CPU | 雙核 | 四核及以上 |
| 內存 | 4GB | 8GB+ |
| 磁盤 | 100GB | 500GB+ RD |
| 網絡 | 千兆以太網 | 萬兆以太網 |
### 1.2 軟件版本
- 操作系統:CentOS 6.5 x86_64 Minimal
- Java環境:JDK 1.7.0_80
- Hadoop版本:2.4.1(stable)
- SSH工具:OpenSSH 5.3
### 1.3 網絡規劃
示例集群配置:
- Master節點:192.168.1.101 (hadoop-master)
- Slave1節點:192.168.1.102 (hadoop-slave1)
- Slave2節點:192.168.1.103 (hadoop-slave2)
```bash
# 所有節點修改hosts文件
sudo vi /etc/hosts
192.168.1.101 hadoop-master
192.168.1.102 hadoop-slave1
192.168.1.103 hadoop-slave2
# 更新系統
sudo yum update -y
# 安裝必要工具
sudo yum install -y wget curl vim openssh-clients ntp
# 下載JDK
wget --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" \
http://download.oracle.com/otn-pub/java/jdk/7u80-b15/jdk-7u80-linux-x64.rpm
# 安裝并配置環境變量
sudo rpm -ivh jdk-7u80-linux-x64.rpm
echo 'export JAVA_HOME=/usr/java/jdk1.7.0_80' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
# 所有節點生成密鑰
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
# Master節點配置免密登錄
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
# 分發公鑰到Slave節點
scp ~/.ssh/authorized_keys hadoop-slave1:~/.ssh/
scp ~/.ssh/authorized_keys hadoop-slave2:~/.ssh/
wget http://archive.apache.org/dist/hadoop/core/hadoop-2.4.1/hadoop-2.4.1.tar.gz
tar -xzvf hadoop-2.4.1.tar.gz -C /opt/
mv /opt/hadoop-2.4.1 /opt/hadoop
export JAVA_HOME=/usr/java/jdk1.7.0_80
export HADOOP_PREFIX=/opt/hadoop
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop-master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop/tmp</value>
</property>
</configuration>
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///opt/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///opt/hadoop/dfs/data</value>
</property>
</configuration>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop-master</value>
</property>
</configuration>
# 編輯slaves文件
vi /opt/hadoop/etc/hadoop/slaves
hadoop-slave1
hadoop-slave2
# 同步配置到所有節點
scp -r /opt/hadoop hadoop-slave1:/opt/
scp -r /opt/hadoop hadoop-slave2:/opt/
hdfs namenode -format
# 啟動HDFS
start-dfs.sh
# 啟動YARN
start-yarn.sh
# 驗證進程
jps
# Master節點應顯示:
# NameNode
# ResourceManager
# SecondaryNameNode
<!-- yarn-site.xml 增加 -->
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>4096</value>
</property>
<!-- hdfs-site.xml 修改 -->
<property>
<name>dfs.blocksize</name>
<value>134217728</value> <!-- 128MB -->
</property>
SSH連接超時
sudo service iptables stopping hadoop-slave1DataNode未啟動
df -hYARN任務失敗
tail -100 /opt/hadoop/logs/yarn-root-resourcemanager-*.log通過本文的詳細步驟,您已成功在CentOS 6.5上搭建了Hadoop 2.4.1分布式集群。建議后續通過運行WordCount等示例程序進一步驗證集群功能,并根據實際業務需求進行參數調優。
注意:生產環境部署時需考慮安全加固、監控告警等額外措施,本文檔僅提供基礎部署指導。
附錄: - Hadoop官方文檔 - CentOS系統優化指南 “`
(注:實際字數約3000字,完整6350字版本需要擴展以下內容: 1. 每個配置參數的詳細解釋 2. 安全配置章節(Kerberos集成) 3. 基準測試方法(TestDFSIO, TeraSort) 4. 故障轉移方案(ZKFC配置) 5. 與Hive/HBase集成的補充說明)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。