文档
注册
评分
提单
论坛
小智

OmniShuffle Shuffle加速配置文件说明

spark.conf

表1 默认配置说明

参数

取值范围和缺省值

取值范围和缺省值说明

spark.executor.extraClassPath

$OCK_HOME/jars/*:.

OmniShuffle的JAR包存放路径,“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

spark.driver.extraClassPath

$OCK_HOME/jars/*:.

OmniShuffle的JAR包存放路径,“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

spark.driver.extraJavaOptions

-Djava.library.path=$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/openssl:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/ucx:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/ucx/ucx:$OCK_HOME/ock/ucache/23.0.0/linux-aarch64/lib/datakit:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/mf -Dlog4j.configuration=/usr/local/spark/conf/log4j.properties -Xms8g -XX:+UseParallelGC

传递给driver的JVM选项字符串,“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

spark.executor.extraJavaOptions

-Djava.library.path=$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/openssl:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/ucx:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/ucx/ucx:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/datakit:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/mf -Xms8g -XX:+UseParallelGC -XX:ParallelGCThreads=6 -XX:ErrorFile=/tmp/hs_err_pid%p.log

传递给Executor的JVM选项字符串,“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

spark.driver.extraLibraryPath

$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/openssl:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/ucx:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/ucx/ucx:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/datakit:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/mf:.

指定启动driver的JVM时使用的库路径,“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

spark.executor.extraLibraryPath

$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/openssl:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/ucx:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/common/ucx/ucx:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/datakit:$OCK_HOME/ucache/23.0.0/linux-aarch64/lib/mf:.

指定启动Executor的JVM时使用的库路径,“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

spark.shuffle.manager

  • 取值:org.apache.spark.shuffle.ock.OCKShuffleManager/

    OckColumnarShuffleManager

  • 默认值:org.apache.spark.shuffle.ock.OCKShuffleManager
说明:
  • 当设置为OckColumnarShuffleManager时,需要先安装OmniOperator,安装方式请参见《OmniRuntime 特性指南》中“安装算子加速特性”章节。
  • 当设置为OckColumnarShuffleManager时,需要将ock-omniop-shuffle-manager-23.0.0-for-spark-3.1.jar包放到“$OCK_HOME/jars”目录下,下载链接为:下载链接

OCK Shuffle Manager的类路径。

spark.blacklist.enabled

  • 取值:true/false
  • 默认值:false

Spark自带参数,作业级应当设置为“true”以开启黑名单机制使能故障恢复。

spark.blacklist.application.fetchFailure.enabled

  • 取值:true/false
  • 默认值:false

Spark自带参数,作业级应当设置为“true”以开启FetchFailure拉黑机制使能故障恢复。

spark.files.fetchFailure.unRegisterOutputOnHost

  • 取值:true/false
  • 默认值:false

Spark自带参数,作业级应当设置为“true”以开启FetchFailure移除已有Map任务的输出使能故障恢复。

spark.yarn.blacklist.executor.launch.blacklisting.enabled

  • 取值:true/false
  • 默认值:false

Spark for Yarn自带参数,作业级应当设置为“true”以开启Yarn的节点黑名单机制。

spark.shuffle.service.enabled

  • 取值:true/false
  • 默认值:false

Spark自带参数,作业级应当设置为“false”以防止开启Spark External Shuffle Service。

spark.shuffle.ock.home

  • 取值:OmniShuffle home文件夹位置,如/home/ockadmin/opt/ock
  • 默认值:/home/ockadmin/opt/ock

OmniShuffle home文件夹位置。

spark.shuffle.ock.version

  • 取值:OmniShuffle支持版本号,仅支持21.0.0、22.0.0、23.0.0
  • 默认值:23.0.0

OmniShuffle的版本号。

spark.shuffle.ock.binaryType

  • 取值:OmniShuffle软件架构类型,仅支持linux-aarch64, linux-x86_64
  • 默认值:linux-aarch64

OmniShuffle软件架构类型。

spark.shuffle.ock.isIsolated

  • 取值:true/false
  • 默认值:true

是否开启OmniShuffle的APP资源隔离功能,配合OmniShuffle Server端参数使用。

spark.shuffle.ock.scheduler.excludeUnavailableNodes

  • 取值:true/false
  • 默认值:true

是否开启Shuffle Manager的失效节点拉黑机制。

spark.shuffle.ock.removeShuffleDataAfterJobFinished

  • 取值:true/false
  • 默认值:false

(调优项)是否在一个Job完成后释放对应的Shuffle文件,在绝大多数场景下应设置为false,仅当用户确认不存在跨Job的Shuffle数据复用时可设置为true。

spark.hadoop.mapreduce.fileoutputcommitter.algorithm.version

2

Hadoop原生配置,用于性能调优,减少Shuffle输出文件耗时。

spark.shuffle.ock.aggregateFlags

  • 取值:true/false
  • 默认值:true

是否进行汇聚。

spark.broadcast.ock.manager

  • 取值:true/false
  • 默认值:false

是否开启OmniShuffle BroadCast特性。

spark.broadcast.ock.robustness

  • 取值:true/false
  • 默认值:false

OmniShuffle BroadCast可靠性开关。

  • true:广播变量初始化时会远程写到两个节点。
  • false:仅会写到一个节点。

spark.broadcast.ock.ockThresholdInMb

缺省值:100

广播变量类型阈值(Mb)。当广播变量大小超过该阈值且spark.broadcast.ock.manager=true,设置为OmniShuffle BroadCast变量;否则设置为原生BroadCast变量。

spark.sql.ock.autoConfig.enable

  • 取值:true/false
  • 默认值:false

OmniShuffle BoostTuning并行度调整使能开关。

spark.sql.adaptive.enabled

  • 取值:true/false
  • 默认值:false

Spark原生AQE的功能开关,当前OmniShuffle BoostTuning仅使能AQE生效的Spark SQL作业,该配置项应开启为true。

spark.sql.ock.autoConfig.history

  • 取值:true/false
  • 默认值:true

OmniShuffle BoostTuning是否开启基于历史的并行度调整,绝大多数场景下不修改。

spark.sql.ock.autoConfig.sample

  • 取值:true/false
  • 默认值:true

OmniShuffle BoostTuning是否开启基于采样的并行度调整,如果sample与history都不开启,则并行度将不会变化,绝大多数场景下不修改。

spark.sql.ock.autoConfig.historyRelation

  • 取值:true/false
  • 默认值:true

(调优项)OmniShuffle BoostTuning是否采用关系式历史记录的算法,绝大多数场景下不修改。

spark.sql.ock.autoConfig.globalRuntimePartition

  • 取值:true/false
  • 默认值:false

(调优项)OmniShuffle BoostTuning是否在AQE不使能且无历史记录的场景下通过集群运行资源推理并行度,绝大多数场景下不修改。

spark.sql.ock.autoConfig.skipSample

  • 取值:true/false
  • 默认值:true

(调优项)OmniShuffle BoostTuning是否在上游数据量较小时跳过采样流程,绝大多数场景下不修改。

spark.sql.ock.autoConfig.skipSampleThreshold

  • 取值:按Spark标准数据量大小格式,如“100M,1K”等
  • 默认值:10G

(调优项)OmniShuffle BoostTuning是否在上游数据量较小时跳过采样流程的阈值,绝大多数场景下不修改。

spark.sql.ock.autoConfig.historyStrategy

  • 取值:default、override、readOnly、isolate
  • 默认值:default

OmniShuffle BoostTuning基于历史进行并行度调整的策略,绝大多数场景下不修改,具体含义如下。

  • default:在不存在历史时采用在线推理,存在历史时使用历史数据。
  • override:新提交的作业将会读取历史数据,且会覆盖所有历史数据,成为唯一历史数据。
  • readOnly:新提交的作业运行时数据将不会持久化,即不会写入历史服务。
  • isolate:新提交的作业既不读取历史数据,也不写入历史数据。

spark.sql.ock.autoConfig.samplePartitionFraction

  • 取值小于1大于0的小数
  • 默认值:0.01

(调优项)OmniShuffle BoostTuning采样流程中对数据量的采样比例,绝大多数场景下不修改。

spark.sql.ock.autoConfig.sampleRDDFraction

  • 取值小于1大于0的小数
  • 默认值:0.01

(调优项)OmniShuffle BoostTuning采样流程中对数据分区的采样比例,绝大多数场景下不修改。

spark.sql.ock.autoConfig.partitionRatio

  • 取值大于0的值
  • 默认值:3.0

(调优项)OmniShuffle BoostTuning计算Shuffle分区时的系数,绝大多数场景下不修改。

spark.ock.decimal.optimize

  • 取值:true/false
  • 默认值:false

(调优项)OmniShuffle针对Decimal类型数据计算的优化,绝大多数场景下不修改,本调优项只支持Spark 3.1.1版本。如果打开,需要以下配置。

  1. Java 9及以上,在Java启动选项加上 -Djdk.attach.allowAttachSelf=true
  2. 修改spark.conf文件,增加spark.executor.extraClassPath=${JAVA_HOME}/lib/*

mf.conf

参数

参考值

参考值说明

ock.mf.ip_mask

172.17.0.0~172.17.0.125

修改为集群配置mf节点的业务IP地址范围。此配置不包含管理节点IP地址。

ock.mf.ip

127.0.0.1

本节点的环路IP地址,保持默认值。

ock.mf.port

9999

  • mf端口号,可保持默认。
  • 需确保此端口以及此端口+1未被占用。

ock.mf.protocol

rc

  • mf protocol。
  • 有IB网卡(RDMA)且可用时选rc,否则修改为tcp。
  • 需确保与ock.conf中的ock.ucache.rpc.transport.protocol一致。

ock.mf.mem_size

53687091200

  • mf内存需不少于50G,目前默认值即为50G。
  • 如果有共享内存配额限制,rc通讯使用内存+mf内存,不超过共享内存配额。rc通讯使用内存要预留10G。单位:bit。

ock.mf.water_mark_timer

50

融合场景下内存水位扫描周期,单位:ms。保持默认值。

ock.mf.rpc.timeout

600000

  • mf之间消息超时时间限制,单位:ms。
  • 保持默认10min。

ock.ucache.rpc.enableAuthentication

false

是否开启安全特性。

  • true:开启安全特性。
  • false:不开启安全特性。

若此三项设置为false,后续项不需要再设置。

ock.ucache.rpc.enableTLS

false

ock.ucache.rpc.enableAuthorization

false

ock.ucache.rpc.tls.ca.cert.path

$OCK_HOME/security/tls/server/ca.cert.pem

证书分发agent_node_list中节点生成的OmniShuffle使用的ca.cert.pem文件路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.ucache.rpc.tls.cert.path

$OCK_HOME/security/tls/server/server.cert.pem

证书分发agent_node_list中节点生成的OmniShuffle使用的server.cert.pem文件路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.ucache.rpc.tls.key.path

$OCK_HOME/security/tls/server/server.private.key.pem

证书分发agent_node_list中节点生成的OmniShuffle使用的server.private.key.pem文件路径。$OCK_HOME为OmniShuffle安装路径需按实际配置。

ock.ucache.rpc.tls.key.pass.path

$OCK_HOME/security/tls/server/server.keypass.key

证书分发agent_node_list中节点生成的OmniShuffle使用的server.keypass.key文件路径。“$OCK_HOME”为OmniShuffle安装路径,需按实际配置。

ock.ucache.rpc.tls.crl.path

-

OmniShuffle用户吊销列表。若无用户吊销列表的路径,则删除该参数。

ock.ucache.rpc.auth.type

kerberos

身份认证协议,目前使用kerberos协议。

ock.ucache.rpc.auth.kerb.client.keytab

/home/Sparkadmin/huawei/ock/security/kdc/krb5-client_en.keytab

  • kdc服务器分发给各节点提交Spark任务用户使用的krb5-client.keytab文件路径。修改“/home/Sparkadmin”为实际的安装路径。

ock.ucache.rpc.auth.kerb.server.keytab

$OCK_HOME/security/kdc/krb5-server_en.keytab

  • KDC服务器分发给各节点OmniShuffle使用的krb5-server.keytab文件路径。
  • “$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.ucache.rpc.auth.kerb.keytab.encrypted

true

keytab加密时设置为true,不加密时设置为false。

ock.ucache.rpc.auth.domain

EXAMPLE.COM

修改为KDC服务器指定的域名。

ock.ucache.rpc.auth.server.principle.name

ock_server

OmniShuffle Server端的principal名字 ,目前设置为ock_server。

ock.ucache.rpc.auth.client.principle.name

ock_client

OmniShuffle Client端的principal名字,目前设置为ock_client。

ock.ucache.rpc.author.type

whitelist

默认设置为whitelist。

ock.ucache.rpc.author.file.path

$OCK_HOME/security/authorization/whitelist

  • KDC配置生成的whitelist所在的路径。
  • $OCK_HOME为OmniShuffle安装路径需按实际配置。
  • “ock.ucache.rpc.author.file.encrypted”参数设置为“true”时修改whitelist为whitelist_en。

ock.ucache.rpc.author.file.encrypted

true

whitelist文件加密时设置为true,不加密时设置为false。

ock.ucache.kmc.ksf.primary.path

$OCK_HOME/security/pmt/master/ksfa

OmniShuffle用户kmc_tool生成的kmc.primary.ks文件。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.ucache.kmc.ksf.standby.path

$OCK_HOME/security/pmt/standby/ksfb

ock用户kmc_tool生成的kmc.standby.ks文件。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.ucache.kmc.ksf.backup.path

$OCK_HOME/security/pmt/kmcbakup

ock用户kmc.primary.ks文件和kmc.standby.ks文件的备份位置。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。用户可以自行备份,可以改为自己的备份位置。

ock.ucache.sdk.kmc.ksf.primary.path

/home/Sparkadmin/huawei/ock/security/pmt/master/ksfa

提交Spark任务用户kmc_tool生成的kmc.primary.ks文件。修改“/home/Sparkadmin”为实际的安装路径。

ock.ucache.sdk.kmc.ksf.standby.path

/home/Sparkadmin/huawei/ock/security/pmt/standby/ksfb

提交Spark任务用户kmc_tool生成的kmc.standby.ks文件。修改“/home/Sparkadmin”为实际的安装路径。

ock.ucache.sdk.kmc.ksf.backup.path

/home/Sparkadmin/huawei/ock/security/pmt/kmcbakup

提交Spark任务用户kmc.primary.ks文件和kmc.standby.ks文件的备份位置。修改“/home/Sparkadmin”为实际的安装路径。用户可以自行备份,可以改为自己的备份位置。

ock.mf.capacity.report.period

取值范围:[100, 180000]

mf刷新ZooKeeper记录的最新容量情况周期,单位:ms。

ock.ucache.server.isIsolated

true

是否开启多租户检查特性,默认开启,保持默认值即可。

  • true:开启
  • false:不开启

ock.ucache.worker.thread.groups

1,1

配置1,1时可在TCP场景下,mfserver间通过多条链路建链,提升性能, 默认关闭,无需配置。

ock.ucache.sdk.thread.groups

1

配置>=1时,ockclient和mfserver间通过多条链路建链,提升性能, 默认关闭,无需配置。

ock.ucache.rpc.client.auth.timeout

[15000, 180000]

RPC建链超时时间,单位:ms。

ock.ucache.rpc.tls.sdk.crl.path

-

提交Spark任务用户吊销列表。若无用户吊销列表的路径,则删除该参数。

ock.ucache.rpc.tls.sdk.ca.cert.path

/home/Sparkadmin/huawei/ock/security/tls/ca.cert.pem

证书分发agent_node_list中节点生成的提交Spark任务用户使用的ca.cert.pem文件路径。修改“/home/Sparkadmin”为实际的安装路径。

ock.hswap.path

${OCK_HOME}/hswappath

换盘路径。

ock.hswap.queue.cap.per.path

65535

每个路径下的换盘队列容量。

ock.hswap.task.pool.size

65535

线程池大小。

ock.hswap.max.aio.count.per.thread

65535

每个线程的最大同时处理aio事件的计数。

ock.hswap.media.type

0

盘类型,目前只支持一种类型,0表示NVMe。

ock.conf

以下带timeout字样的参数,除个别已标出单位的,单位为ms,网络状况差时可适当调大。端口配置范围为3000~65535。

参数

参考值

参考值说明

ock.log.dir

${OCK_HOME}/logs/

OmniShuffle运行日志目录,“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.workers.dir

${OCK_HOME}/conf/workers

运行的工作节点主机名目录,一般与Hadoop的工作节点目录相同,“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.log.level

INFO

运行日志级别,保持默认。

ock.log.fileSize

20

单个运行日志文件大小,单位:M。取值范围:2~20

ock.log.rotation.file.num

10

运行日志绕接的数量,超过该数量的日志会被删除。取值范围:1~20

ock.kv.levelDB.path

/home/ockadmin/opt/ock/leveldb

levelDB存放文件夹,保持默认。

ock.kv.levelDB.write_buffer_size

67108864

levelDB一个memtable的最大大小,用于性能调优。

ock.kv.levelDB.max_file_size

2097152

levelDB一个文件的最大大小,用于性能调优。

ock.ucache.enabled

true

Shuffle服务是否可用。

ock.ucache.rpc.shuffle_server.timeout

150000

Shuffle Server RPC超时时间,单位:ms。

ock.ucache.rpc.shuffle_meta.timeout

120000

元数据服务RPC超时时间,单位:ms。

ock.ucache.rpc.client.auth.timeout

60000

节点的RPC的建链超时时间,单位:ms。

ock.ucache.rpc.local_blob.get.timeout

150000

get LocalBlob单独的RPC超时时间,优先级高于默认时间,单位:ms。

ock.ucache.rpc.local_blob.commit.timeout

150000

commit LocalBlob单独的RPC超时时间,优先级高于默认时间,单位:ms。

ock.ucache.rpc.transport.tcp.port.range

60000-61000

TCP网络协议需要额外占用的端口范围。

ock.ucache.rpc.transport.protocol

rc

有IB网卡(RDMA)且可用时选“rc”,否则修改为“tcp”

ock.ucache.rpc.transport.devices

所使用的网卡设备名称,当环境存在多网卡运行时需要指定所使用的网卡,否则节点间通信可能失败。

ock.ucache.shuffle.profile.level

0

性能统计的开关与等级。

ock.ucache.rpc.shuffle_meta.worker.thread.group

1,3,3

元数据节点的线程池线程数量。

ock.ucache.rpc.shuffle_meta.worker.thread.cpuset

元数据节点的通信工作线程CPU绑核参数。

ock.ucache.rpc.shuffle_meta.eventMgr.thread.cpuset

元数据节点的通信事件管理线程CPU绑核参数。

ock.ucx.tcp.keepintvl

60s

TCP连接的存续时间,单位:s。在网络状况极差时可以调大。

ock.ucache.rpc.shuffle_server.port

3891

Shuffle Server的服务端口,用户可以自己指定,在端口配置范围内即可。

ock.ucache.rpc.shuffle_meta.port

3892

Shuffle Meta的服务端口,用户可以自己指定,在端口配置范围内即可。

ock.ucache.rpc.manager.port

3899

Shuffle Client的服务端口。

ock.ucache.meta.node_lists

127.0.0.1

Meta IP地址需改为127.0.0.X,为集群中设置为管理节点的业务IP地址,多个之间以“,”隔开。例如127.0.0.1,127.0.0.2。

ock.ucache.server.max_local_blob_capacity

25769803776

最大local_local容量,用户可自行设置大于等于24GB,小于MF内存容量的50%。

目前参考值为24GB,单位:bit。

ock.ucache.server.data.isolation

true

是否开启OmniShuffle的APP资源隔离功能,配置Client端参数使用。

ock.zookeeper.server.url

127.0.0.1:2181

配置ZooKeeper Server IP地址与端口。

  • 仅开启Kerberos功能则端口号配成“2181”
  • 开启TLS+Kerberos功能则端口配成“2281”

ock.zookeeper.session.timeout

30000

连接ZooKeeper会话超时时间。

ock.zookeeper.connect.timeout

30

ZooKeeper尝试连接的超时时间,单位:s。节点数量多,连接延迟大的时候,可以把参数改大。

ock.ucache.server.swap.threshold.higher_watermark

60

将只读的ShuffleBlob向外交换的内存水位线,范围0~100。不建议修改。

ock.ucache.server.swap.threshold.lower_watermark

20

将只有外部存储的ShuffleBlob向内存池交换的内存水位线,范围0~100。不建议修改。

ock.ucache.server.swap.threshold.free_water_mater

80

mf内存使用率超过设置值后,开始准备释放已经交换出去的ShuffleBlob占用的内存,范围为0~100。不建议修改。

ock.ucache.server.swap.path

-

交换到外部存储的文件目录,多个目录用逗号分隔。必填字段,否则无法启动。建议权限设置为750。

ock.ucache.rpc.enableAuthentication

true

是否开启安全特性。

  • true:开启安全特性
  • false:不开启安全特性

ock.ucache.rpc.enableTLS

true

是否开启传输加密。

ock.ucache.rpc.enableAuthorization

true

是否开启登录认证。

ock.ucache.rpc.tls.ca.cert.path

${OCK_HOME}/security/tls/server/ca.cert.pem

证书分发时agent_node_list中节点生成的ock用户使用的ca.cert.pem文件路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置

ock.ucache.rpc.tls.cert.path

${OCK_HOME}/security/tls/server/server.private.key.pem

证书分发agent_node_list中节点生成的ock用户使用的server.private.key.pem文件路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置

ock.ucache.rpc.tls.key.path

${OCK_HOME}/security/tls/server/server.cert.pem

证书分发agent_node_list中节点生成的ock用户使用的agent.private.key.pem文件路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.ucache.rpc.tls.key.pass.path

${OCK_HOME}/security/tls/server/server.keypass.key

证书分发agent_node_list中节点生成的ock用户使用的server.keypass.key文件路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.ucache.rpc.tls.crl.path

-

ock用户使用的吊销列表。若无用户吊销列表的路径,可以为空。

ock.ucache.rpc.auth.type

kerberos

身份认证协议,目前使用Kerberos协议。

ock.ucache.rpc.auth.kerb.client.keytab

${OCK_HOME}/security/authentication/krb5-client_en.keytab

KDC服务器分发给各节点提交Spark任务用户使用的krb5-client.keytab文件路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.ucache.rpc.auth.kerb.server.keytab

${OCK_HOME}/security/kdc/krb5-server_en.keytab

  • KDC服务器分发给各节点ock用户使用的krb5-server.keytab文件路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.ucache.rpc.auth.kerb.keytab.encrypted

true

keytab是否加密,安全特性开启时设置才有效。

  • true:keytab加密
  • false:keytab不加密

ock.ucache.rpc.auth.domain

EXAMPLE.COM

KDC服务器指定的域名。

ock.ucache.rpc.auth.server.principle.name

ock_server

OmniShuffle Server端的principal名字 ,目前设置为ock_server。

ock.ucache.rpc.auth.client.principle.name

ock_client

OmniShuffle Client的principal名称,目前设置为ock_client。

ock.ucache.rpc.auth.meta.principle.mapping

127.0.0.1:hostname

与ock.ucache.meta.node_lists中IP地址一致,多个之间以“,”隔开,比如127.0.0.1:hostname1,127.0.0.2:hostname2。

ock.ucache.rpc.author.type

whitelist

默认设置为whitelist。

ock.ucache.rpc.author.file.path

${OCK_HOME}/security/authorization/whitelist

KDC配置生成的whitelist所在的路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。“ock.ucache.rpc.author.file.encrypted”参数设置为“true”时修改whitelist为whitelist_en。

ock.ucache.rpc.author.file.encrypted

true

whitelist文件是否加密。

  • true:加密
  • false:不加密

ock.daemon.expireChecker.period

86400

安全证书检查周期。单位:s。

ock.ucache.kmc.ksf.primary.path

${OCK_HOME}/security/pmt/master/ksfa

ock用户kmc_tool生成的kmc.primary.ks文件。“${OCK_HOME}”为OmniShuffle安装路径需按实际配置。

ock.ucache.kmc.ksf.standby.path

${OCK_HOME}/security/pmt/standby/ksfb

ock用户kmc_tool生成的kmc.standby.ks文件。“${OCK_HOME}”为OmniShuffle安装路径需按实际配置。

ock.ucache.kmc.ksf.backup.path

${OCK_HOME}/security/pmt/kmcbakup

ock用户kmc.primary.ks文件和kmc.standby.ks文件的备份位置。“${OCK_HOME}”为OmniShuffle安装路径需按实际配置。用户可以自行备份,可以改为自己的备份位置。

ock.zookeeper.security.principle.name

zookeeper

配置Kerberos认证server端principle名,代表principle的第1部分。

ock.zookeeper.security.principle.hostname

master

配置Kerberos认证ZooKeeper Server端principle名,代表principle的第2部分。

ock.zookeeper.security.strategy

GSSAPI

配置sasl支持的Kerberos认证机制,保持默认值GSSAPI。

ock.zookeeper.security.enable

true

是否开启ZooKeeper加密。

  • true:开启ZooKeeper加密,后续跟ZooKeeper相关的安全配置参数均需要配置。
  • false:关闭ZooKeeper加密。

ock.zookeeper.security.isKeytabEncrypt

true

client.keytab是否是加密的。

  • true:加密的
  • false:非加密的

ock.zookeeper.security.certs

/home/ockadmin/opt/ock/security/tls/server.crt.pem,/home/ockadmin/opt/ock/security/tls/client.crt.pem,***

开启TLS+Kerberos功能时ock用户配置TLS所需的证书,包括server.crt.pem,client.crt.pem,client.pem,以及用kmc加密的pem证书口令4部分。仅开启TLS功能则赋值为“false”

ock.zookeeper.security.client.principle

zkcli/master@HUAWEI.COM

配置ock用户Kerberos认证ZooKeeper Client端principle(master为节点hostname,HUAWEI.COM为KDC设置的域名)。

ock.zookeeper.security.client.keytab

${OCK_HOME}/security/kdc/krb5-server_en.keytab

配置ock用户Kerberos认证ZooKeeper Client端keytab路径。“${OCK_HOME}”为OmniShuffle安装路径需按实际配置

ock.ucache.broadcast.variable.create.timeout

600000

创建广播变量的超时时间,单位:ms。 -1表示不超时。

ock.ucache.broadcast.variable.fetch.timeout

600000

拉取广播变量的超时时间,单位:ms。-1表示不超时。

ock.ucache.broadcast.bt.percent

10

广播变量拉取过程中,BT server占集群节点数的百分比。取值范围:1~100。

ock.ucache.rpc.transport.ipfilter

-

根据节点所在网段选择通信设备名称,例如192.168.100.194/24<,192.168.200.194/24>,支持英文逗号分割配置多个网段。可通过ip a查看网段信息。最好每个节点都统一配置。

ock.ucache.rpc.transport.devices.path

/sys/class/infiniband/

rc网卡相关信息所在目录,一般采用默认值,不需要配置。

ock.ucache.rpc.openssl.path

${OCK_HOME}/ucache/23.0.0/linux-aarch64/lib/common/openssl/libssl.so

OmniShuffle所依赖的openssl so加载路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.ucache.rpc.crypto.path

${OCK_HOME}/ucache/23.0.0/linux-aarch64/lib/common/openssl/libcrypto.so

OmniShuffle所依赖的crypto so加载路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock.ucache.rpc.tls.sdk.ca.cert.path

/home/Sparkadmin/huawei/ock/security/tls/ca.cert.pem

证书分发时agent_node_list中节点生成的提交Spark任务用户使用的ca.cert.pem文件路径。修改“/home/Sparkadmin”为实际的安装路径

ock.ucache.rpc.tls.sdk.crl.path

-

提交Spark任务用户使用的吊销列表。若没有用户吊销列表的路径,则可以为空。

ock.ucache.sdk.kmc.ksf.primary.path

/home/Sparkadmin/huawei/ock/security/pmt/master/ksfa

提交Spark任务用户kmc_tool生成的kmc.primary.ks文件。修改/“home/Sparkadmin”为实际的安装路径。

ock.ucache.sdk.kmc.ksf.standby.path

/home/Sparkadmin/huawei/ock/security/pmt/standby/ksfb

提交Spark任务用户kmc_tool生成的kmc.standby.ks文件。修改“/home/Sparkadmin”为实际的安装路径。

ock.ucache.sdk.kmc.ksf.backup.path

/home/Sparkadmin/huawei/ock/security/pmt/kmcbakup

提交Spark任务用户kmc.primary.ks文件和kmc.standby.ks文件的备份位置。修改“/home/Sparkadmin”为实际的安装路径。用户可以自行备份,可以改为自己的备份位置。

ock.zookeeper.sdk.security.certs

/home/Sparkadmin/huawei/ock/security/tls/server.crt.pem,/home/Sparkadmin/huawei/ock/security/tls/client.crt.pem,/home/Sparkadmin/huawei/ock/security/tls/client.pem,***

开启TLS+Kerberos功能时提交Spark任务用户配置TLS所需的证书,包括server.crt.pem,client.crt.pem,client.pem,以及用kmc加密的pem证书口令4部分。仅开启TLS功能则赋值为“false”

ock.zookeeper.sdk.security.client.principle

zkcli/master@HUAWEI.COM

配置提交Spark任务用户Kerberos认证ZooKeeper Client端principle(master为节点hostname,HUAWEI.COM为KDC设置的域名)。

ock.zookeeper.sdk.security.client.keytab

/home/Sparkadmin/huawei/ock/security/kdc/krb5-client_en.keytab

配置提交Spark任务用户Kerberos认证ZooKeeper Client端keytab路径。

ock.daemon.expireChecker.lead

-

证书到期提醒,不配置默认到期前7天,配置范围7-180。

ock.ucache.server.aggregator.core.thread.num

4

聚合核心线程数,配置范围1至设备最大核数。

ock.tuning.enabled

true

BoostTuning服务是否可用。

ock.tuning.history.persist.type

local

历史记录持久化方式。

  • local:本地csv文件
  • kv:levelDb存储

ock.tuning.history.persist.path

${OCK_HOME}/history

历史记录存放路径。

ock.tuning.history.file.max.number

5

仅local方式有效,存放历史记录的文件最大个数,取值范围[1,5]。

ock.tuning.history.file.read.number

2

仅local方式有效,读取历史记录的文件个数,每次读取最新的文件,取值范围[1,2]。

ock.tuning.rpc.server.port

3893

RPC服务的端口。

ock.tuning.rpc.timeout

240000

RPC服务超时毫秒数。

ock-start-ockd-by-yarn.sh

参数

参考值

参考值说明

retry_times

5

Yarn尝试启动OCKD的进程次数

interval_time

150

Yarn尝试启动OCKD进程间隔时间,单位:s。

forever_interval_time

600

尝试retry_times次后依然没启动OCKD进程,则每隔forever_interval_time(单位:s)继续尝试启动OCKD进程。

agent_node_list

文件内容格式如下:

IPaddress 运维账号

当有多个节点时,每行写一个IP地址与运维账号,所有节点信息均需写入。

文件内容如下所示。
1.1.1.1 运维用户
1.1.1.3 运维用户
1.1.1.5 运维用户
1.1.1.7 运维用户

CA_node_list

文件内容格式如下:

IPaddress 运维账号

当有多个节点时,每行写一个IP地址与运维账号,仅写入管理节点的信息。

文件内容如下所示。
1.1.1.9 BigDataAdmin

ock-launch-cluster.sh

参数

参考值

参考值说明

ock_vcore

15

OmniShuffle占用的CPU数目。

ock_memory

61440

OmniShuffle占用的内存数目,取mf内存的110%容量和mf内存加上10GB两者之间的最大值,包含自身运行内存。单位:MB。

master_vcore

5

launch master占用的CPU数目。

master_memory

10240

launch master占用的内存数目,单位:MB。

queue

OmniShuffle所在Yarn队列。

ock_master_partition_label

launch master所在的Yarn分区标签。

need_kerberos

任务提交前,是否需要Kerberos认证。

kerberos_conf

Kerberos认证krb5.conf配置文件路径。“need_kerberos”“true”时生效。

kerberos_user

Kerberos认证用户名。“need_kerberos”“true”时生效。

kerberos_key_table

Kerberos认证用户名对应keytable文件路径。“need_kerberos”“true”时生效。

local_dir

$(cd "$(dirname $0)"||exit 0; pwd)

当前路径。

ock_home

$(cd "$(dirname $0)"/../../../..||exit 0; pwd)

OmniShuffle部署路径。

ock_version_dir

$(cd "$(dirname $0)"/../..||exit 0; pwd)

OmniShuffle版本路径。

ock_version

"${ock_version_dir##*/}"

OmniShuffle版本号。

ock_run_shell_path

"${local_dir}/ock-start-ockd-by-yarn.sh"

Yarn启动OmniShuffle的脚本路径。

ock_nodes_list_path

"${ock_home}/conf/ock_node_list"

OmniShuffle所在节点列表配置文件路径。

client_jar_path

"${ock_home}/jars/ock-launch-cluster-${ock_version}.jar"

Yarn启动OmniShuffle的JAR文件路径。

log_path

"${ock_home}/logs/ock-launch-cluster.log"

Yarn启动OmniShuffle的日志文件路径。

appid_path

"${ock_home}/work/yarn-appids/yarn-ock.appid"

Yarn启动OmniShuffle的app id文件路径。

ock-stop-cluster.sh

参数

参考值

参考值说明

ock_home

"$(cd "$(dirname $0)"/../../../..||exit ${EXT}; pwd)"

OmniShuffle部署路径。

appid_path

"${ock_home}/work/yarn-appids/yarn-ock.appid"

Yarn关停OmniShuffle的app id文件路径。

log_path

"${OCK_HOME}/logs/ock-stop-cluster.log"

Yarn关停OmniShuffle的日志文件路径。“$OCK_HOME”为OmniShuffle安装路径需按实际配置。

ock_id

$(cat ${appid_path}|grep -Eo "application_[0-9]+_[0-9]+")

Yarn中OCK的application_id。

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词