3.2. 安装 Knative Serving
安装 Knative Serving 可让您在集群中创建 Knative 服务和功能。它还允许您为应用程序使用自动扩展和网络选项等其他功能。
安装 OpenShift Serverless Operator 后,您可以使用默认设置安装 Knative Serving,或者在 KnativeServing
自定义资源 (CR) 中配置更高级的设置。如需有关 KnativeServing
CR 的配置选项的更多信息,请参阅全局配置。
如果要在 OpenShift Serverless 中使用 Red Hat OpenShift distributed tracing,则必须在安装 Knative Serving 前安装和配置 Red Hat OpenShift distributed tracing。
3.2.1. 使用 Web 控制台安装 Knative Serving
安装 OpenShift Serverless Operator 后,使用 OpenShift Container Platform Web 控制台安装 Knative Serving。您可以使用默认设置安装 Knative Serving,或者在 KnativeServing
自定义资源 (CR) 中配置更高级的设置。
先决条件
- 您可以访问具有集群管理员权限的 OpenShift Container Platform 帐户。
- 已登陆到 OpenShift Container Platform Web 控制台。
- 已安装 OpenShift Serverless Operator。
流程
-
在 OpenShift Container Platform web 控制台的 Administrator 视角中,进入 Operators
Installed Operators。 - 检查页面顶部的 Project 下拉菜单是否已设置为 Project: knative-serving。
- 点 OpenShift Serverless Operator 的 Provided APIs 列表中的 Knative Serving 来进入 Knative Serving 选项卡。
- 点 Create Knative Serving。
在 Create Knative Serving 页中,您可以使用默认设置安装 Knative Serving。点 Create。
您还可以使用提供的表单或编辑 YAML 来修改
KnativeServing
对象来修改 Knative Serving 安装的设置。-
建议您在不需要完全控制
KnativeServing
对象创建的简单配置中使用该表单。 对于更复杂的配置,建议编辑 YAML,这可以完全控制
KnativeServing
对象的创建。您可以通过点 Create Knative Serving 页右上角的 edit YAML 链接来访问 YAML。完成表单后,或者完成对 YAML 的修改后,点 Create。
注意如需有关 KnativeServing 自定义资源定义的配置选项的更多信息,请参阅高级安装配置选项。
-
建议您在不需要完全控制
-
安装 Knative Serving 后,会创建
KnativeServing
对象,并自动定向到 Knative Serving 选项卡。您可以在资源列表中看到knative-serving
自定义资源。
验证
-
在 Knative Serving 选项卡中点
knative-serving
自定义资源。 您将被自动定向到 Knative Serving Overview 页面。
- 向下滚动查看条件列表。
您应该看到一个状况为 True 的条件列表,如示例镜像所示。
注意创建 Knative Serving 资源可能需要几秒钟时间。您可以在 Resources 选项卡中查看其状态。
- 如果条件状态为 Unknown 或 False,请等待几分钟,然后在确认已创建资源后再重新检查。
3.2.2. 使用 YAML 安装 Knative Serving
安装 OpenShift Serverless Operator 后,您可以使用默认设置安装 Knative Serving,或者在 KnativeServing
自定义资源 (CR) 中配置更高级的设置。您可以使用 YAML 文件和 oc
CLI 安装 Knative Serving。
先决条件
- 您可以访问具有集群管理员权限的 OpenShift Container Platform 帐户。
- 已安装 OpenShift Serverless Operator。
-
安装 OpenShift CLI (
oc
) 。
流程
创建名为
serving.yaml
的文件并将以下示例 YAML 复制到其中:apiVersion: operator.knative.dev/v1beta1 kind: KnativeServing metadata: name: knative-serving namespace: knative-serving
应用
service.yaml
文件:$ oc apply -f serving.yaml
验证
使用以下命令校验安装是否完成:
$ oc get knativeserving.operator.knative.dev/knative-serving -n knative-serving --template='{{range .status.conditions}}{{printf "%s=%s\n" .type .status}}{{end}}'
输出示例
DependenciesInstalled=True DeploymentsAvailable=True InstallSucceeded=True Ready=True
注意创建 Knative Serving 资源可能需要几秒钟时间。
如果条件状态为
Unknown
或False
,请等待几分钟,然后在确认已创建资源后再重新检查。检查是否已创建 Knative Serving 资源:
$ oc get pods -n knative-serving
输出示例
NAME READY STATUS RESTARTS AGE activator-67ddf8c9d7-p7rm5 2/2 Running 0 4m activator-67ddf8c9d7-q84fz 2/2 Running 0 4m autoscaler-5d87bc6dbf-6nqc6 2/2 Running 0 3m59s autoscaler-5d87bc6dbf-h64rl 2/2 Running 0 3m59s autoscaler-hpa-77f85f5cc4-lrts7 2/2 Running 0 3m57s autoscaler-hpa-77f85f5cc4-zx7hl 2/2 Running 0 3m56s controller-5cfc7cb8db-nlccl 2/2 Running 0 3m50s controller-5cfc7cb8db-rmv7r 2/2 Running 0 3m18s domain-mapping-86d84bb6b4-r746m 2/2 Running 0 3m58s domain-mapping-86d84bb6b4-v7nh8 2/2 Running 0 3m58s domainmapping-webhook-769d679d45-bkcnj 2/2 Running 0 3m58s domainmapping-webhook-769d679d45-fff68 2/2 Running 0 3m58s storage-version-migration-serving-serving-0.26.0--1-6qlkb 0/1 Completed 0 3m56s webhook-5fb774f8d8-6bqrt 2/2 Running 0 3m57s webhook-5fb774f8d8-b8lt5 2/2 Running 0 3m57s
检查所需的网络组件是否已安装到自动创建的
knative-serving-ingress
命名空间:$ oc get pods -n knative-serving-ingress
输出示例
NAME READY STATUS RESTARTS AGE net-kourier-controller-7d4b6c5d95-62mkf 1/1 Running 0 76s net-kourier-controller-7d4b6c5d95-qmgm2 1/1 Running 0 76s 3scale-kourier-gateway-6688b49568-987qz 1/1 Running 0 75s 3scale-kourier-gateway-6688b49568-b5tnp 1/1 Running 0 75s
3.2.3. 后续步骤
- 如果要使用 Knative 事件驱动的架构,您可以安装 Knative Eventing。