×

如果 Knative Serving 控制器可以访问容器注册表,则在创建服务版本时,Knative Serving 会将镜像标签解析为摘要。这被称为标签到摘要解析,有助于为部署提供一致性。

标签到摘要解析

要使控制器能够访问 OpenShift Container Platform 上的容器注册表,必须创建一个密钥,然后配置控制器自定义证书。可以通过修改KnativeServing自定义资源 (CR) 中的controller-custom-certs规范来配置控制器自定义证书。密钥必须位于与KnativeServing CR 相同的命名空间中。

如果KnativeServing CR 中不包含密钥,则此设置默认为使用公钥基础设施 (PKI)。使用 PKI 时,集群范围的证书会使用config-service-sa配置映射自动注入到 Knative Serving 控制器中。OpenShift Serverless 运算符使用集群范围的证书填充config-service-sa配置映射,并将配置映射作为卷安装到控制器中。

使用密钥配置标签到摘要解析

如果controller-custom-certs规范使用Secret类型,则密钥将作为密钥卷安装。Knative 组件直接使用密钥,假设密钥具有所需的证书。

前提条件
  • 您拥有 OpenShift Container Platform 上的集群管理员权限,或者您拥有 Red Hat OpenShift Service on AWS 或 OpenShift Dedicated 上的集群或专用管理员权限。

  • 您已在集群上安装了 OpenShift Serverless 运算符和 Knative Serving。

步骤
  1. 创建密钥

    示例命令
    $ oc -n knative-serving create secret generic custom-secret --from-file=<secret_name>.crt=<path_to_certificate>
  2. 配置KnativeServing自定义资源 (CR) 中的controller-custom-certs规范以使用Secret类型

    示例 KnativeServing CR
    apiVersion: operator.knative.dev/v1beta1
    kind: KnativeServing
    metadata:
      name: knative-serving
      namespace: knative-serving
    spec:
      controller-custom-certs:
        name: custom-secret
        type: Secret