鲲鹏社区首页
中文
注册
开发者
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

OmniAdvisor配置文件说明

OmniAdvisor参数调优2.0的配置文件包括common_config.ini和native_config.ini。

common_config.ini配置说明

common_config.ini为OmniAdvisor参数调优2.0的基础配置文件,用于选择调优方式、设置复测轮次、配置数据库信息以及Spark History Server相关参数。

后端数据库PostgreSQL和Spark History Server使能TLS双向认证时,common_config.ini配置文件中客户端私钥或客户端私钥密码需要为明文,存在信息泄漏风险,相关代码已开源,软件使用者可以根据实际情况进行安全加固。

[common]
# 调优复测次数
tuning.retest.times=1
# 评估配置失效的阈值,当配置执行失败次数大于等于此值,则配置失效
config.fail.threshold=1
# 调优策略
tuning.strategy=[["transfer", 1],["expert", 2],["iterative", 10]]
# 后台复测使用的队列,若不设置,则保持用户队列
backend.retest.queue=

[database]
# 后端数据库PostgreSQL的database名称
postgresql.database.name=
# 后端数据库PostgreSQL的用户
postgresql.database.user=
# 后端数据库PostgreSQL的连接host
postgresql.database.host=
# 后端数据库PostgreSQL的连接端口
postgresql.database.port=
#后端数据库PostgreSQL的SSLmode
postgresql.database.sslmode=verify-full
#后端数据库PostgreSQL的服务端CA根证书路径
postgresql.database.sslrootcert=
#后端数据库PostgreSQL的客户端证书路径
postgresql.database.sslcert=
#后端数据库PostgreSQL的客户端私钥路径
postgresql.database.sslkey=
#后端数据库PostgreSQL的客户端私钥密码
postgresql.database.sslpassword=

[spark]
# Spark History Server的URL仅用于Rest模式
spark.history.rest.url=http://localhost:18080
# Spark History Server的URL的用户名,仅需要时填写
spark.history.username=
# Spark从History Server抓取Trace的超时时间
spark.fetch.trace.timeout=30
# Spark从History Server抓取Trace的间隔用时
spark.fetch.trace.interval=5
# Spark任务执行的超时时间除以基线时间倍数
spark.exec.timeout.ratio=10.0
# 控制Spark的输出结果中stdout和stderr是否要分开
spark.output.merge.switch=False
# Spark History Server的SSL双向校验开关,默认为开启状态,不可为空必须配置
spark.history.sslverify = True
# Spark History Server的SSL双向校验证书相关文件,仅在sslverify为True时生效
spark.history.sslrootca =
spark.history.sslcrt =
spark.history.sslkey =

[crypto]
# KMC占用的信号量,范围是0x1111~0x9999,只支持十六进制
kmc.sem.key=0x1111
  • 如果spark.fetch.trace.timeout参数设置过小,可能导致在抓取Spark任务的trace信息时偶发失败。

    该问题不会影响后续调优流程的继续执行,但适当增大该值可以降低抓取失败的概率。

    在当前网络环境稳定的情况下,默认值30已能较好地保障trace信息的抓取成功率。

  • 如果spark.exec.timeout.ratio参数设置过低,增加因超时导致调优配置执行失败的概率,特别是在基线性能值较小的情况下。

    当前的默认值10已能满足大多数情况下的调优配置的正常执行。

    如果在使用过程中频繁出现因超时引发的调优失败,可尝试适当调高该参数的值。

  • tuning.retest.times参数的值必须大于0

native_config.ini配置说明

native_config.ini为OmniAdvisor参数调优2.0中针对Native调优的配置文件,用户可通过该文件指定OmniOperator的部署路径以及版本号等信息。

[native]
# OmniOperator部署根目录
omnioperator_home = /opt/omni-operator
# OmniOperator版本号
omnioperator_version = 1.7.0
# OmniOperator关联Spark版本,用于组成类似boostkit-omniop-spark-3.3.1-1.7.0-aarch64.jar的内容
omnioperator_spark_version = 3.3.1
# Hadoop部署根目录
hadoop_home = /usr/local/hadoop