2016-09-29 102 views
2

什么是使用Docker运行Hadoop的最简单方法(适用于开发人员和真实环境)?使用Docker运行Hadoop(适用于DEV和PROD环境)

这是对于本地开发环境和真实环境的区别应该只是目标机器。

P.S.有关

和许多https://stackoverflow.com/questions/tagged/hadoop+docker

回答

2

有几个Hadoop images on Docker Hub,但是如果你想要适合不同环境的东西,你需要完全分布式运行 - 即用HDFS和YARN主节点的容器以及工作节点的多个容器。

我有一个可以用作起点的图像:sixeyed/hadoop-dotnet。您可以从Dockerfile中看到它从Java基本映像开始,安装Hadoop并使用startup script,以便容器可以作为主服务器或工作服务器运行。

这意味着你可以运行一个码头工人分布式集群,利用最新的网络堆栈:

docker network create hadoop 

docker run -d -p 50070:50070 -p 8088:8088 \ 
    --network hadoop --name hadoop-dotnet-master \ 
    sixeyed/hadoop-dotnet master 

docker run -d -p 50075:50075 -p 8142:8042 -p 19888:19888 \ 
    --network hadoop 
    sixeyed/hadoop-dotnet worker 

或者你可以用a Docker Compose file运行一个完全分布式集群。

该映像还包含.NET Core,但如果不使用它,则可以删除该部分