gpt4 book ai didi

docker - 无法访问Docker中的Spark节点

转载 作者:行者123 更新时间:2023-12-02 19:16:51 26 4
gpt4 key购买 nike

我正在使用此设置(https://github.com/mvillarrealb/docker-spark-cluster.git)建立一个Spark集群,但其中没有提及的IP,例如10.5.0.2区域,可通过浏览器访问并给出超时。我无法弄清楚我在做什么错?
我在macOS Catalina上使用Docker 2.3。
spark-base Dockerfile中,我使用以下设置,而不是那里提供的设置:

ENV DAEMON_RUN=true
ENV SPARK_VERSION=3.0.0
ENV HADOOP_VERSION=3.2
ENV SCALA_VERSION=2.12.4
ENV SCALA_HOME=/usr/share/scala
ENV SPARK_HOME=/spark
同样在运行时,尝试运行Web UI时,控制台上仍显示Spark 2.4.3。

最佳答案

Dockerfile告诉容器公开哪个端口。
compose文件告诉主机要暴露的端口以及应将容器内部转发的流量传递给哪些端口。
如果未指定源端口,则应生成一个随机端口。此语句在这种情况下会有所帮助,因为您有多个工作程序,并且无法为所有工作程序指定唯一的源端口-这将导致冲突。

version: "3.7"
services:
spark-master:
image: spydernaz/spark-master:latest
ports:
- "9090:8080"
- "7077:7077"
volumes:
- ./apps:/opt/spark-apps
- ./data:/opt/spark-data
environment:
- "SPARK_LOCAL_IP=spark-master"
spark-worker:
image: spydernaz/spark-worker:latest
depends_on:
- spark-master
ports:
- "8081"
environment:
- SPARK_MASTER=spark://spark-master:7077
- SPARK_WORKER_CORES=1
- SPARK_WORKER_MEMORY=1G
- SPARK_DRIVER_MEMORY=128m
- SPARK_EXECUTOR_MEMORY=256m
volumes:
- ./apps:/opt/spark-apps
- ./data:/opt/spark-data
要查找每个 worker 的随机生成的发布端口,请运行 docker ps。在“端口”列下,您应该找到所需的内容:
PORTS 
0.0.0.0:32768->8080/tcp
32768将从主机( localhost:32768)转发到 [worker-IP]:8080

关于docker - 无法访问Docker中的Spark节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63035419/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com