问题标签 [spark-operator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 使用 Java api 调用 Kubernetes Spark Operator
有很多使用 Kubernetes Spark Operator 创建 Spark 作业的示例,只需使用以下内容提交请求
spark-pi.yaml 可以在这里找到
有谁知道使用 Java K8s api 提交这样的工作的最简单方法?
apache-spark - 如何将 Spark 的 JVM 指标发送到 Kubernetes 中的 Prometheus
我正在使用 Spark 运算符在 Kubernetes 上运行 Spark。( https://github.com/GoogleCloudPlatform/spark-on-k8s-operator )
我正在尝试在 Spark 驱动程序和执行程序 pod 中运行 Java 代理,并通过 Kubernetes 服务将指标发送给 Prometheus 操作员。
Java 代理会在短时间内公开端口 8090 上的指标(我可以通过端口转发 kubctl port-forward < spark-driver-pod-name > 8090:8090 验证),该服务也公开了一些指标分钟(可以通过端口转发 kubctl port-forward svc/< spark-service-name > 8090:8090 验证)。
Promethues 能够在 prometheus 中注册这些 pod 的 URL,但是当它试图抓取指标(每 30 秒运行一次)时,pod 的 URL 已关闭。
如何让 Java 代理 JMX 导出器长时间运行,直到驱动程序和执行程序完成工作。你能在这里指导或帮助我吗,以前谁遇到过这种情况?
apache-spark - 使用 spark-on-k8s 时如何将环境变量注入驱动程序吊舱?
我正在使用 k8s 上的 GCP spark 编写 Kubernetes Spark 应用程序。
目前,我被困在无法将环境变量注入我的容器中。
我在这里关注文档
显现:
在 pod 中设置的环境变量:
apache-spark - spark-operator 登录 k8s
我正在为 Kubernetes 使用 spark-operator。
https://github.com/GoogleCloudPlatform/spark-on-k8s-operator
我能够成功运行作业,但是由于 pod 是动态的,因此在监视和排除作业时遇到了很多麻烦。
我想知道启用历史服务器(到 s3a://<bucket>)以及 spark-operator 的最佳方法。
另外,如何将每个作业的驱动程序/执行程序的标准输出和标准错误日志存储在 s3a://<bucket> 中。
apache-spark - 在 Kubernetes Spark Operator 上部署时,Spark Master 地址设置为什么?
官方spark 文档仅包含有关spark-submit
将代码部署到 spark 集群的方法的信息。它提到我们必须在 kubernetes api 服务器的地址前面加上k8s://
. 通过Spark Operator部署时我们应该怎么做?
例如,如果我有一个像这样启动的基本 pyspark 应用程序,我该如何设置 master:
在这里我有local
,如果我在非 k8 的集群上运行,我会提到带有spark://
前缀或的主地址yarn
。k8s://
如果通过 Spark Operator 部署,我还必须使用前缀吗?如果不是,主参数应该使用什么?
apache-spark - Spark on Kubernetes 故障排除
我有一个 kubernetes 集群,我尝试在其中运行 spark 示例应用程序 (spark-pi)。
我已经设置了一个服务帐户 =spark
设想
当我spark-submit
像下面这样从命令行执行操作时,出现容器错误。
期待:
获取打印在日志中的pi
=值3.14
实际结果:
由于出现错误情况,驱动程序窗格未出现。当我在 pod 上进行描述时,我看到以下内容:
$ kubectl describe pods spark-pi-driver
事件:无
我也没有看到任何事件
有没有更好的方法来解决这种情况?请帮忙。
kubernetes - Kubernetes Spark Operator:配置自动应用重启和故障处理
在 kubernetes 上,可以使用可选字段配置容器重启策略,该字段.spec.restartPolicy
可以设置为type: OnFailure
. 我在这里读到
,在重新启动失败的 Pod 之前,指数回退延迟的上限为 300 秒(5 分钟)。我的第一个困惑是,这个 300 秒的上限是否仅适用于默认配置,还是会影响例如以下配置。另外,我想知道考虑到集群上的资源压力是否增加重试次数,例如onFailureRetries:6
间隔onFailureRetryInterval:9
(考虑到 300 秒上限)是否有意义?是否有资源可以帮助了解使用哪种最佳配置,或者这将基于用户体验,或者我只需要尝试看看什么对我的集群有意义?
scala - 如何检查 spark k8 运算符的 scala 版本兼容性?
目前我正在使用 spark 2.4.6 并在我的 k8
https://github.com/GoogleCloudPlatform/spark-on-k8s-operator中设置了 spark operator 3.0.0
在部署它提供的构建时:
我们可以检查 spark operator 3.0.0 是否与 scala 2.12 兼容?
apache-spark - K8s 上的 Spark:当 Spark 应用程序尝试解析同一集群上不同命名空间中另一个 pod 的 DNS(获取)时,出现 UnknownHostException
我能够在 k8s 中执行 SparkPi 并部署(在 GKE 中)。
但是,当我尝试将 PI 值广播到我的微服务时toys-broadcast-svc.toys.svc.cluster.local
我无法解析 DNS(获取UnknownHostException)。任何人都可以帮忙吗?我在这里错过了什么吗?
供您参考:
我已经用 helm 安装了操作员
helm install sparkoperator incubator/sparkoperator --namespace toys-spark-operator --set sparkJobNamespace=toys-spark,enableWebhook=true
我正在使用 spark-operator(微服务在命名空间中
toys
,火花在命名空间中toys-spark
)
apache-spark - 使用 Spark Operator 在 Kubernetes 中启用多集群故障转移
我想使用多集群 Kubernetes 设置启用故障转移方案。它的行为应该如下所示:
用户在集群 1 中创建 Spark 应用程序。集群 1 失败/Spark 作业无法继续。然后集群 2 应该接管并启动类似的 Spark 应用程序,甚至继续运行在集群 1 中运行的相同 Spark 作业。
是否有任何可用的工具可以实现这一点?如果不是,那么实施它的最佳方式是什么?通过在两个相互通信的集群中部署两个控制器