Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 在k8s上运行spark作业时,无法从GCP铲斗中拉出jar_Apache Spark_Kubernetes_Google Cloud Platform - Fatal编程技术网

Apache spark 在k8s上运行spark作业时,无法从GCP铲斗中拉出jar

Apache spark 在k8s上运行spark作业时,无法从GCP铲斗中拉出jar,apache-spark,kubernetes,google-cloud-platform,Apache Spark,Kubernetes,Google Cloud Platform,我正在k8s 2.4.5版上运行spark。我已将spark图像存储在GCS中,spark.kubernetes.container.image.pullSecrets配置可以访问这些图像。我还将spark应用程序jar存储在GCP bucket中。公开bucket时,spark submit可以正常工作。我的问题是如何访问私有bucket,是否有任何配置可以通过spark传递?我有在GCP中创建的服务帐户,还有json.keyfile。下面是spark提交命令: bin/spark提交——主k

我正在k8s 2.4.5版上运行spark。我已将spark图像存储在GCS中,spark.kubernetes.container.image.pullSecrets配置可以访问这些图像。我还将spark应用程序jar存储在GCP bucket中。公开bucket时,spark submit可以正常工作。我的问题是如何访问私有bucket,是否有任何配置可以通过spark传递?我有在GCP中创建的服务帐户,还有json.keyfile。下面是spark提交命令:


bin/spark提交——主k8s://https://host:port --部署模式集群——名称spark pi——类org.apache.spark.examples.SparkPi——conf spark.kubernetes.authenticate.driver.serviceAccountName=spark sa——conf spark.executor.instances=3——conf spark.kubernetes.container.image.pullSecrets=cr-k8s-key——confspark.kubernetes.container.image=eu.gcr.io/Project ID/spark image/spark_2.4.5/spark:0.1.0https://storage.googleapis.com/Bucket-name/spark-examples_2.11-2.4.5.jar

我使用gsutil签名url来解决这个问题。 1.gsutil signurl-d 10m-r eu/home/centos/private-key.json gs://bucket name/spark-examples_2.11-2.4.5.jar。(其中-r eu是我的地区(欧洲多地区)

  • 执行了一些awk转换:awk-F'\t''FNR==2{print$4}通过管道传输第一个输出

  • 这个已签名的url可以从任何地方(在我的例子中是10分钟)用来访问bucket对象