Function 参数说明

Function CRD 参数规范说明

Function

字段描述
apiVersion stringcore.openfunction.io/v1alpha1
kind stringFunction
metadata v1.ObjectMeta(可选) 参考 v1.ObjectMeta 文档
spec FunctionSpecFunction 的规格,参考 FunctionSpec
status FunctionStatusFunction 的状态,参考 FunctionStatus

FunctionSpec

从属 Function

字段描述
version string(可选) 函数版本,如:“v1.0.0”
image string函数构建后的镜像上传路径,如:“demorepo/demofunction:v1”
imageCredentials v1.LocalObjectReference(可选) 访问镜像仓库的凭证,参考 v1.LocalObjectReference
port int32(可选) 函数应用监听的端口,如:“8080”
build BuildImpl(可选) 函数的 Builder 规格,参考 BuildImpl
serving ServingImpl(可选) 函数的 Serving 规格,参考 ServingImpl

BuildImpl

从属 FunctionSpec

字段描述
builder string镜像构建器的名称
builderCredentials v1.LocalObjectReference(可选) 访问镜像仓库的凭证,参考 v1.LocalObjectReference
shipwright ShipwrightEngine(可选) Shipwright 引擎的规格,参考 ShipwrightEngine
params map[string]string(可选) 传递给 Shipwright 的参数
env map[string]string(可选) 传递给镜像构建器的参数
srcRepo GitRepo源代码仓库的配置,参考 GitRepo
dockerfile string(可选) Dockerfile 文件的路径,用于指导 Shipwright 使用 Dockerfile 构建镜像

ShipwrightEngine

从属 BuildImpl

字段描述
strategy Strategy(可选) 镜像构建策略的名称,参考 Strategy
timeout v1.Duration(可选) 镜像构建超时时间,参考 v1.Duration

Strategy

从属 ShipwrightEngine

字段描述
name string镜像构建策略的名称
kind string(可选) 镜像构建策略的 Kind,默认为“BuildStrategy”,可选“ClusterBuildStrategy”

GitRepo

从属 BuildImpl

字段描述
url string代码仓库地址
revision string(可选) 代码仓库中的可引用实例,如 commit id,branch name 等
sourceSubPath string(可选) 目标函数在代码仓库中的目录,如:“functions/function-a/”
credentials v1.LocalObjectReference(可选) 代码仓库的访问凭证,参考 v1.LocalObjectReference

ServingImpl

从属 FunctionSpec

字段描述
runtime string负载运行时的类型,可选:“Knative” 和 “OpenFuncAsync
params map[string]string(可选) 传递给应用负载的环境变量参数
openFuncAsync OpenFuncAsyncRuntime(可选) 当 runtime 为 OpenFuncAsync 时,用于定义 OpenFuncAsync 的配置,参考 OpenFuncAsyncRuntime
template v1.PodSpec(可选) 应用负载中 Pod 的定义模板,参考 v1.PodSpec

OpenFuncAsyncRuntime

从属 ServingImpl

字段描述
dapr Dapr(可选) Dapr components 的定义,参考 Dapr
keda Keda(可选) Keda 的定义,参考 Keda

Dapr

从属 OpenFuncAsyncRuntime

字段描述
annotations map[string]string(可选) Dapr components 的注解,参考 Dapr 相关文档
components []DaprComponent(可选) Dapr Components Spec 数组,参考 DaprComponent
subscriptions []DaprSubscription(可选) Dapr Subscription Spec 数组,参考 DaprSubscription
inputs []DaprIO(可选) 函数输入端的定义,参考 DaprIO
outputs []DaprIO(可选) 函数输出端的定义,参考 DaprIO

DaprComponent

从属 Dapr

字段描述
name stringDapr component 的名称
v1alpha1.ComponentSpecDapr Components Spec 定义,参考 Dapr 相关文档

DaprSubscription

从属 Dapr

字段描述
name stringDapr components 的注解,参考 Dapr 相关文档
v1alpha1.SubscriptionSpecDapr Subscription Spec 定义,参考 Dapr 相关文档
scopes []string

DaprIO

从属 Dapr

字段描述
name string函数输入、输出端的名称,与 DaprComponent 的 name 一致即表示关联
type stringDapr component 的类型,可选:bindingspubsubinvoke
topic string(可选)typepubsub 时,需要设置 topic
methodName string(可选)typeinvoke 时,需要设置 methodName,参考 Dapr 相关文档
params map[string]string(可选) 传递给 Dapr 的参数

Keda

从属 OpenFuncAsyncRuntime

字段描述
scaledObject KedaScaledObjectKEDA 可扩展对象(Deployments)定义,参考 KedaScaledObject
scaledJob KedaScaledJobKEDA 可扩展任务定义,参考 KedaScaledJob

KedaScaledObject

从属 Keda

你可以参考 Scaling Deployments, StatefulSets & Custom Resources 获得更多信息

字段描述
workloadType string以何种方式运行函数,可选:DeploymentStatefulSet,默认为 Deployment.
pollingInterval int32(可选) pollingInterval 的单位是秒。这是 KEDA 检查触发器的队列长度或流滞后的时间间隔。默认是 30 秒。
cooldownPeriod int32(可选) cooldownPeriod 也是以秒为单位,它是在最后一个触发器激活后等待的时间段,然后再缩减到 0。 默认是 300 秒。
minReplicaCount int32(可选) KEDA 在收缩资源的最小副本数。默认情况下为 0
maxReplicaCount int32(可选) KEDA 会将该值传递给为资源创建的 HPA 定义。
advanced kedav1alpha1.AdvancedConfig(可选) 此属性指定在删除 “ScaledObject” 后,目标资源(“Deployments”、“StatefulSet”…)是否应被缩减到原始副本数量。默认行为是保持复制数量与删除 “ScaledObject” 时的数量相同。参考 kedav1alpha1.AdvancedConfig
triggers []kedav1alpha1.ScaleTriggers触发工作负载动态伸缩的事件源,参考 kedav1alpha1.ScaleTriggers

KedaScaledJob

从属 Keda

你可以参考 Scaling Jobs 获得更多信息

字段描述
restartPolicy v1.RestartPolicy在 pod 内所有容器的重启策略。可选择 OnFailureNever。默认为 Never
pollingInterval int32(可选) pollingInterval 的单位是秒。这是 KEDA 检查触发器的队列长度或流滞后的时间间隔。默认是 30 秒。
successfulJobsHistoryLimit int32(可选) 应该保留多少个已完成的 Job。默认为 100
failedJobsHistoryLimit int32(可选) 应该保留多少个失败的 Job。默认为 100
maxReplicaCount int32(可选) 在一个轮询周期内可以创建的最大 pod 的数量。
scalingStrategy kedav1alpha1.ScalingStrategy(可选) 选择一个缩放策略。可能的值是 defaultcustomaccurate。默认值是 default。参考 kedav1alpha1.ScalingStrategy
triggers []kedav1alpha1.ScaleTriggers触发工作负载动态伸缩的事件源,参考kedav1alpha1.ScaleTriggers