4.7. 配置部署资源
在 Knative Serving 中,config-deployment
配置映射包含用于决定如何为 Knative 服务配置 Kubernetes Deployment
资源的设置。在 OpenShift Serverless Serving 中,您可以在 KnativeServing
自定义资源(CR)的 deployment
部分中配置这些设置。
您可以使用 deployment
部分来配置以下内容:
- 标签解析
- 运行时环境
- 进度期限
4.7.1. 跳过标签解析 复制链接链接已复制到粘贴板!
在 OpenShift Serverless Serving 中跳过标签解析可以通过避免对容器 registry 的不必要的查询来加快部署,从而减少对 registry 的延迟和依赖。
您可以通过修改 KnativeServing
自定义资源(CR)中的 registrySkippingTagResolving
设置,将 Serving 配置为跳过标签解析。
流程
在
KnativeServing
CR 中,使用标签重新路由的 registry 列表修改 registrySkippingTagResolving
设置:配置的标签解析跳过示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.7.2. 配置可选择的 RuntimeClassName 复制链接链接已复制到粘贴板!
您可以通过更新 KnativeServing
自定义资源(CR)中的 runtime-class-name
设置,将 OpenShift Serverless Serving 配置为为 Deployment 设置特定的 RuntimeClassName
资源。
此设置与服务标签交互,应用默认 RuntimeClassName
或与服务关联的标签匹配的默认 RuntimeClassName。
流程
在
KnativeServing
CR 中,配置runtime-class-name
设置:配置的
runtime-class-name
设置示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.7.3. 进度期限 复制链接链接已复制到粘贴板!
默认情况下,服务有一个进度期限,用于定义服务的时间限制,以完成其初始启动。
如果您在部署中遇到这些条件,请考虑增加进度期限:
- 服务镜像的大小需要很长时间才能拉取。
-
由于初始缓存 priming,该服务需要很长时间才能变为
READY
。 - 集群依赖于自动扩展来为新 pod 分配资源。
如果没有在指定的时间限制内实现初始扩展,Knative Autoscaler 组件会将修订版本扩展到 0,
服务进入终端 Failed
状态。
4.7.3.1. 配置进度期限 复制链接链接已复制到粘贴板!
配置进度截止时间设置,以便在系统报告 Knative Revision 失败前设置部署进度的最长时间(以秒为单位或分钟)。
默认情况下,进度期限设置为 600 秒。这个值被指定为 Go time.Duration
字符串,且必须舍入到最接近的秒。
流程
通过修改 KnativeServing
自定义资源(CR)来配置进度期限。
在
KnativeServing
CR 中,设置progressDeadline
的值:进程截止时间设置为 60 秒的示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow