更新時間:2021-06-17 16:35:23 來源:動力節點 瀏覽1405次
將Hadoop打包到Docker鏡像中,就可以快速地在單個機器上搭建Hadoop集群,這樣可以方便新手測試和學習。
如下圖所示,Hadoop的master和slave分別運行在不同的Docker容器中,其中hadoop-master容器中運行NameNode和ResourceManager,hadoop-slave容器中運行DataNode和NodeManager。NameNode和DataNode是Hadoop分布式文件系統HDFS的組件,負責儲存輸入以及輸出數據,而ResourceManager和NodeManager是Hadoop集群資源管理系統YARN的組件,負責CPU和內存資源的調度。
之前的版本使用serf/dnsmasq為Hadoop集群提供DNS服務,由于Docker網絡功能更新,現在并不需要了。更新的版本中,使用以下命令為Hadoop集群創建單獨的網絡:
sudo docker network create --driver=bridge hadoop
然后在運行Hadoop容器時,使用”–net=hadoop”選項,這時所有容器將運行在hadoop網絡中,它們可以通過容器名稱進行通信。
1.下載Docker鏡像
sudo docker pull kiwenlau/hadoop:1.0
2.下載GitHub倉庫
git clone https://github.com/kiwenlau/hadoop-cluster-docker
3.創建Hadoop網絡
sudo docker network create --driver=bridge hadoop
4.運行Docker容器
cd hadoop-cluster-docker
./start-container.sh
運行結果
start hadoop-master container...
start hadoop-slave1 container...
start hadoop-slave2 container...
root@hadoop-master:~#
5.啟動hadoop
./start-hadoop.sh
6.運行wordcount
./run-wordcount.sh
運行結果
input file1.txt:
Hello Hadoop
input file2.txt:
Hello Docker
wordcount output:
Docker 1
Hadoop 1
Hello 2
Hadoop網頁管理地址:
NameNode:http://192.168.59.1:50070/
ResourceManager:http://192.168.59.1:8088/
192.168.59.1為運行容器的主機的IP。
以上就是動力節點小編介紹的"Docker搭建hadoop集群",希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為您服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習