Azkaban调度Spark
Azkaban是一个批量工作流任务调度器,可以构建、执行和管理包含复杂依赖关系的工作流。您可以借助Spark-Submit命令行工具,在Azkaban Web界面调度云原生数据仓库 AnalyticDB MySQL 版的Spark作业。
前提条件
AnalyticDB for MySQL集群的产品系列为企业版、基础版或湖仓版。
已在AnalyticDB for MySQL集群中创建Job型资源组。具体操作,请参见新建资源组。
已安装Azkaban。具体操作,请参见Azkaban官方文档。
已将运行Azkaban的服务器IP地址添加至AnalyticDB for MySQL集群的白名单中。具体操作,请参见设置白名单。
操作步骤
安装Spark-Submit命令行工具并配置相关参数。安装操作与参数说明,请参见安装Spark-Submit和参数配置。
说明您只需要配置
keyId
、secretId
、regionId
、clusterId
和rgName
这些必填参数。如果您的Spark JAR包在本地,还需要配置ossUploadPath
等OSS相关参数。编写工作流文件,并将其所在的文件夹压缩成ZIP格式。具体操作,请参见创建工作流。
nodes: - name: SparkPi type: command config: command: /<your path>/adb-spark-toolkit-submit/bin/spark-submit --class org.apache.spark.examples.SparkPi --name SparkPi --conf spark.driver.resourceSpec=medium --conf spark.executor.instances=2 --conf spark.executor.resourceSpec=medium local:///tmp/spark-examples.jar 1000 dependsOn: - jobA - jobB - name: jobA type: command config: command: echo "This is an echoed text." - name: jobB type: command config: command: pwd
说明<your path>
需替换为Spark-Submit命令行工具的实际安装路径。command节点的命令输入请不要使用续行符(\)。
创建项目并上传步骤2压缩的工作流文件。
访问Azkaban Web界面,在顶部导航栏单击Projects。
单击页面右上角的Create Project。
在弹出的Create Project对话框中配置Name、Description参数。
单击页面右上角的Upload。
在弹出的Upload Project Flies对话框中上传工作流文件,单击Upload。
运行工作流。
在Projects页面,单击Flows页签。
单击Execute Flow。
单击Execute。
在弹出的Flow submitted对话框中,单击Continue。
查看工作流详细信息。
在顶部导航栏单击Executing。
单击Recently Finished页签。
单击Execution Id,并单击Job List页签查看每一个Job的执行详情。
单击Logs查看Job的日志信息。