首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为应用程序jar文件指定主机

为应用程序jar文件指定主机
EN

Stack Overflow用户
提问于 2018-12-26 14:35:01
回答 1查看 239关注 0票数 0

我使用以下命令从目录中创建了一个HTTP服务器:

代码语言:javascript
复制
python -c 'import BaseHTTPServer as bhs, SimpleHTTPServer as shs; bhs.HTTPServer(("0.0.0.0", 8089), shs.SimpleHTTPRequestHandler).serve_forever()'

我使用Spark-K8s操作符执行星火应用程序。作为主文件,我希望使用存储在目录中的jar文件(我从其中创建http服务器)。但是,我不知道应该将我的目录映射到哪个主机上,以便在部署过程中运行的Spark应用程序可以使用它。当我在当前主机上运行它时,会得到以下连接错误:

代码语言:javascript
复制
java.net.ConnectException: Connection refused

基本上,我有HTTP服务器,它引用指定的主机和端口,我想使用K8s上的Spark运行这个jar文件。我如何定义这个主机?

目前,应用程序定义如下:

代码语言:javascript
复制
apiVersion: sparkoperator.k8s.io/v1alpha1
kind: SparkApplication
metadata:
  name: spark-example
  namespace: default
spec:
  type: Scala
  image: gcr.io/spark-operator/spark:v2.4.0
  mainClass: org.apache.spark.examples.SparkExample
  mainApplicationFile: https://0.0.0.0:8089/spark_k8s_airflow.jar
  mode: cluster
  deps: {}
  driver:
    coreLimit: 1000m
    cores: 0.1
    labels:
      version: 2.4.0
    memory: 1024m
    serviceAccount: intended-mink-spark
  executor:
    cores: 1
    instances: 1
    labels:
      version: 2.4.0
    memory: 1024m
  imagePullPolicy: Never
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-26 19:47:29

基本上,我有HTTP服务器,它引用指定的主机和端口,我想使用K8s上的Spark运行这个jar文件。我如何定义这个主机?

kubernetes的方法是通过Service来实现,默认情况下,它会创建表单service-name.service-namespace.svc.cluster.local的DNS条目,其中service-nameservice-namespace不是字面上的单词,但其他的3个则是字面意思。但是,如果您只是想玩一玩,并且创建一个Service太费劲了,那么您可以使用正在运行SimpleHTTPServer的Pod的当前IP。

mainApplicationFile: https://0.0.0.0:8089/spark_k8s_airflow.jar

请注意,至少在编写上面的python示例时,您不能使用https:,因为SimpleHTTPServer只是HTTP。您可以说服其中一个内置包为https提供服务,但这样的输入量要大得多,而且可以说是不值得付出的努力。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53933439

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档