数据湖探索 DLI-使用Livy提交Spark Jar作业:修改DLI Livy工具配置文件
修改 DLI Livy工具配置文件
- 上传指定的DLI Livy工具jar资源包到OBS桶路径下。
- 登录OBS控制台,在指定的OBS桶下创建一个存放Livy工具jar包的资源目录。例如:“obs://bucket/livy/jars/”。
- 进入3.a中DLI Livy工具所在E CS 服务器的安装目录,获取以下jar包,将获取的jar包上传到1.a创建的OBS桶资源目录下。
例如,当前Livy工具安装路径为“/opt/livy”,则当前需要上传的jar包名称如下:
/opt/livy/rsc-jars/livy-api-0.7.2.0107.jar /opt/livy/rsc-jars/livy-rsc-0.7.2.0107.jar /opt/livy/repl_2.11-jars/livy-core_2.11-0.7.2.0107.jar /opt/livy/repl_2.11-jars/livy-repl_2.11-0.7.2.0107.jar
- 修改DLI Livy工具配置文件。
- 编辑修改配置文件“ /opt/livy/conf/livy-client.conf”。
vi /opt/livy/conf/livy-client.conf
添加如下内容,并根据注释修改配置项。#当前ECS的私有IP地址,也可以使用ifconfig命令查询。 livy.rsc.launcher.address = X.X.X.X #当前ECS服务器放通的端口号 livy.rsc.launcher.port.range = 30000~32767
- 编辑修改配置文件“ /opt/livy/conf/livy.conf”。
添加如下内容。根据注释说明修改具体的配置项。
livy.server.port = 8998 livy.spark.master = yarn livy.server.contextLauncher.custom.class=org.apache.livy.rsc.DliContextLauncher livy.server.batch.custom.class=org.apache.livy.server.batch.DliBatchSession livy.server.interactive.custom.class=org.apache.livy.server.interactive.DliInteractiveSession livy.server.sparkApp.custom.class=org.apache.livy.utils.SparkDliApp livy.server.recovery.mode = recovery livy.server.recovery.state-store = filesystem #以下文件路径请根据情况修改 livy.server.recovery.state-store.url = file:///opt/livy/store/ livy.server.session.timeout-check = true livy.server.session.timeout = 1800s livy.server.session.state-retain.sec = 1800s livy.dli.spark.version = 2.3.2 livy.dli.spark.scala-version = 2.11 # 填入存储livy jar包资源的OBS桶路径。 livy.repl.jars = obs://bucket/livy/jars/livy-core_2.11-0.7.2.0107.jar, obs://bucket/livy/jars/livy-repl_2.11-0.7.2.0107.jar livy.rsc.jars = obs://bucket/livy/jars/livy-api-0.7.2.0107.jar, obs://bucket/livy/jars/livy-rsc-0.7.2.0107.jar
- 编辑修改配置文件“/opt/livy/conf/spark-defaults.conf”。
vi /opt/livy/conf/spark-defaults.conf
添加如下必选参数内容。配置项参数填写说明,详见表1。
# 以下参数均支持在提交作业时覆盖。 spark.yarn.isPython=true spark.pyspark.python=python3 # 当前参数值为生产环境web地址 spark.dli.user.uiBaseAddress=https://console.huaweicloud.com/dli/web # 队列所在的region。 spark.dli.user.regionName=XXXX # dli endpoint 地址。 spark.dli.user.dliEndPoint=XXXX # 用于指定队列,填写已创建DLI的队列名。 spark.dli.user.queueName=XXXX # 提交作业使用的access key。 spark.dli.user.access.key=XXXX # 提交作业使用的secret key。 spark.dli.user.secret.key=XXXX # 提交作业使用的projectId。 spark.dli.user.projectId=XXXX
表1 spark-defaults.conf必选参数说明 参数名
参数填写说明
spark.dli.user.regionName
DLI队列所在的区 域名 。
从地区和终端节点获取,对应“区域”列就是regionName。
spark.dli.user.dliEndPoint
DLI队列所在的终端节点。
从地区和终端节点获取,对应的“终端节点(Endpoint)”就是该参数取值。
spark.dli.user.queueName
DLI队列名称。
spark.dli.user.access.key
对应用户的访问密钥。该用户需要有Spark作业相关权限,权限说明详见权限管理。
密钥获取方式请参考获取AK/SK。
spark.dli.user.secret.key
spark.dli.user.projectId
参考获取项目ID获取项目ID。
以下参数为可选参数,请根据参数说明和实际情况配置。详细参数说明请参考Spark Configuration。
表2 spark-defaults.conf可选参数说明 Spark作业参数
对应Spark批处理参数
备注
spark.dli.user.file
file
如果是对接notebook工具场景时不需要设置。
spark.dli.user.className
class_name
如果是对接notebook工具场景时不需要设置。
spark.dli.user.scType
sc_type
推荐使用livy原生配置。
spark.dli.user.args
args
推荐使用livy原生配置。
spark.submit.pyFiles
python_files
推荐使用livy原生配置。
spark.files
files
推荐使用livy原生配置。
spark.dli.user.modules
modules
-
spark.dli.user.image
image
提交作业使用的 自定义镜像 ,仅容器集群支持该参数,默认不设置。
spark.dli.user.autoRecovery
auto_recovery
-
spark.dli.user.maxRetryTimes
max_retry_times
-
spark.dli.user.catalogName
catalog_name
访问元数据时,需要将该参数配置为dli。
- 编辑修改配置文件“ /opt/livy/conf/livy-client.conf”。
- 什么是Spark SQL作业_数据湖探索DLISpark SQL作业
- 什么是数据湖探索服务_数据湖探索DLI用途与特点
- 数据治理中心_数据开发_数据开发示例_使用教程-华为云
- 什么是Flink OpenSource SQL_数据湖探索_Flink OpenSource SQL
- 什么是跨源连接-数据湖探索DLI跨源连接
- 华为云内容审核服务_内容审核有什么作用_华为云内容审核的优势
- 什么是Spark_如何使用Spark_Spark的功能是什么
- 数据治理中心_数据开发_数据开发能力_脚本和节点介绍-华为云
- MapReduce服务_什么是Flink_如何使用Flink
- 数据治理中心_数据开发_最佳实践_-华为云