在上一篇文章中,我们使用Docker-Compose来完成HDFS群集的构建。这篇文章将继续使用Docker-Compose来实现Spark群集的构建。
对于火花群集,我们使用一个mater节点和两个工人节点进行构造。它们在它们中,所有作品节点分配了1个核心和1GB内存。
Docker Mirror选择了Bitnami/Spark的开源图像。选择的SPARK版本为2.4.3,并且Docker-Compose配置如下:
在主节点中,A/Python目录还将其映射到存储Pyspark代码以方便操作。
对于主节点,7077端口和端口8080用于连接到Spark和浏览器以查看Spark UI。在Spark UI中,群集状态如下所示(启动后):
如有必要,您可以自己添加一个工作节点,可以修改该节点以修改分配给节点的资源。
对于此图像,默认的EXEC没有用户进入,这将导致一些安装命令权限,无法安装。使用PIP完成安装。您可以将默认用户设置为root用户,以避免上述问题。
如上所述,在docker-compose.yml目录中执行命令,您可以单击一键构建群集(但是,如果您需要使用numpy和其他库,则仍然需要在每个节点中安装它)。
输入主节点执行并成功输入:
获取新的docker-compose.yml:
运行群集(也需要一个hadoop.env文件才能查看上一篇文章):
通过Docker容器的映射函数,执行了Spark群集的主节点的本地文件和火花集群。Pyspark可以通过映射与容器同步,并且代码通过Docker Exec指令执行:
运行回归程序后,群集函数正常:
原始:https://juejin.cn/post/7102632597691301895