sparkctl x86/arm不同平台编译使用

本文详细介绍了Spark Operator的命令行工具sparkctl,包括其功能、子命令用法以及如何在x86和arm64平台上进行编译。文章提供了创建、列表、状态检查、日志获取等操作的示例,并特别强调了在arm64环境下的编译步骤,涉及修改build.sh脚本和解决编译报错问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1.sparkctl简介

2.环境准备

3.sparkctl编译


1.sparkctl简介

sparkctl是 Spark Operator 的一个命令行工具,用于创建、列出、检查状态、获取日志和删除SparkApplication。它还可以进行从本地端口到 Spark Web UI 端口的端口转发,以访问驱动程序上的 Spark Web UI。每个功能都是作为子命令实现的sparkctl

以下全局标志可用于所有子命令:

  • --namespace:(s) 的 Kubernetes 命名空间SparkApplication。默认为default.
  • --kubeconfig:访问 Kubernetes API 服务器的配置文件的路径。默认为 $HOME/.kube/config

创建

createsparkctl是用于创建对象的子命令SparkApplication。创建对象有两种方法SparkApplication。一种是在给定 YAML 文件SparkApplication指定的命名空间中解析并创建对象。--namespace这样就create解析了YAML文件,并将解析后的SparkApplication对象发送到Kubernetes API服务器。这种方式的用法如下所示:

用法:

$ sparkctl create <path to YAML file>

另一种方法是SparkApplication从命名创建对象ScheduledSparkApplication以手动强制运行ScheduledSparkApplication.这种方式的用法如下所示:

用法:

$ sparkctl create <name of the SparkApplication> --from <name of the ScheduledSparkApplication>

create命令还支持将本地 Hadoop 配置文件传送到驱动程序和执行程序 Pod 中。具体来说,它会检测位于环境变量指定的路径中的本地 Hadoop 配置文件HADOOP_CONF_DIR,从这些文件创建 Kubernetes ConfigMap,并将其添加到ConfigMap对象中SparkApplication,以便操作员将其安装到驱动程序和执行程序 Pod 中。环境变量HADOOP_CONF_DIR也在驱动程序和执行程序容器中设置。

暂存本地依赖项

create命令还支持暂存本地应用程序依赖项,但目前仅支持上传到 Google Cloud Storage (GCS) 存储桶。其工作方式如下。它检查解析对象中的spec.mainApplicationFilespec.deps.jarsspec.deps.files等是否存在任何本地依赖关系SparkApplication。如果是这样,它会尝试将本地依赖项上传到 指定的远程位置--upload-to。如果使用本地依赖项但未--upload-to指定,该命令将失败。默认情况下,远程已经存在的本地文件,即远程存在同名同上传路径的文件,将被忽略。如果应该覆盖远程文件,--override则应指定该标志。

上传至GCS

对于上传到 GCS,该值应为gs://<bucket>.该桶必须存在,否则上传失败。本地依赖项将上传到spark-app-dependencies/<SparkApplication namespace>/<SparkApplica

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hay_lee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值