目錄
- 背景?
- 一、環境規劃與依賴準備?
- 1. 服務器規劃(3節點集群)
- 2. 系統與依賴?
- 3. Hadoop生態組件版本與下載路徑
- 4. 架構圖
- 二、Hadoop(HDFS+YARN)安裝與配置?
- 1. 下載與解壓(所有節點)
- 2. HDFS高可用配置
- 3. YARN資源配置?
- 4. 啟動Hadoop集群
- 三、MySQL安裝與Hive元數據配置?
- 1. 安裝MySQL(Master節點)
- 2. Hive配置連接MySQL
- 3. 初始化Hive元數據
- 四、Sqoop安裝與數據遷移實戰?
- 1. 下載與配置(Master節點)
- 2. 配置環境變量
- 五、Azkaban工作流調度系統部署?
- 1. 安裝Azkaban(Master和Worker1節點)
- 2. 配置Azkaban?
- 3. 啟動服務
- 六、Hue可視化平臺與ZooKeeper配置?
- 1. Hue安裝與配置(Master節點)?
- 2. ZooKeeper集群配置?
- 六、常見問題解決方案
- 七、總結與維護指南?
- 1. 核心組件配置表
- 2. 維護建議?
- 3. ?部署建議?
背景?
對于中小企業,構建一套完整的本地化大數據平臺需兼顧成本(5w內)、易用性和擴展性。基于Hadoop生態的組件(HDFS、YARN、Hive)結合數據工具(Sqoop、Azkaban)、可視化工具(Hue)和協調服務(ZooKeeper),能夠實現從數據存儲、計算、調度到可視化的全鏈路管理。
本文基于生產環境實踐,詳細講解以下組件的安裝、配置與聯動:
- 存儲與計算?:HDFS、YARN、Hive
- 數據遷移?:Sqoop(Hive與MySQL數據互通)
- 調度系統?:Azkaban
- 可視化與協調?:Hue、ZooKeeper
- 元數據管理?:MySQL
(一、環境規劃與依賴準備?中)提供全組件官方下載地址? 和 ?配置模板?,助您快速搭建企業級數據平臺!
一、環境規劃與依賴準備?
1. 服務器規劃(3節點集群)
節點角色 | IP地址 | 部署服務 |
---|---|---|
Master? | 192.168.1.101 | NameNode、ResourceManager、Hive、Hue、ZooKeeper、Azkaban Web Server、MySQL |
Worker1? | ?192.168.1.102 | DataNode、NodeManager、ZooKeeper、Azkaban Executor |
Worker2? | ?192.168.1.103 | DataNode、NodeManager、ZooKeeper |
2. 系統與依賴?
- 操作系統?:CentOS 7.9(所有節點)
- JDK?:JDK 8u381(下載地址)
- ?MySQL?:5.7.44(存儲Hive元數據)
- Python?:3.6+(Hue依賴)
3. Hadoop生態組件版本與下載路徑
組件 | 穩定版本 | 官方下載路徑 |
---|---|---|
?HDFS? | 3.3.6 | Apache Hadoop Releases |
?YARN? | 3.3.6 | 同上 |
?Hive? | 3.1.3 | Apache Hive Downloads |
?Hue? | 4.11.0 | Gethue Releases |
?ZooKeeper? | 3.7.1 | Apache ZooKeeper |
?MySQL? | 5.7.44 | MySQL Community Server |
?Sqoop? | 1.4.7 | Apache Sqoop |
?Azkaban? | 4.0.0 | Azkaban GitHub Releases |
?Python 3.6+? | EPEL 倉庫安裝 | 1. sudo yum install -y epel-release 2. sudo yum install -y python36 python36-devel |
4. 架構圖
二、Hadoop(HDFS+YARN)安裝與配置?
1. 下載與解壓(所有節點)
wget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -zxvf hadoop-3.3.6.tar.gz -C /opt
mv /opt/hadoop-3.3.6 /opt/hadoop
2. HDFS高可用配置
1)core-site.xml?
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://mycluster</value> </property> <property> <name>hadoop.tmp.dir