12.5. 使用 Administrator 视角的域映射
如果您不想在 OpenShift Container Platform web 控制台中切换到 Developer 视角,或使用 Knative (kn
) CLI 或 YAML 文件,您可以使用 OpenShift Container Platform Web 控制台的 Administator 视角。
12.5.1. 使用 Administrator 视角将自定义域映射到服务
Knative 服务会自动根据集群配置分配默认域名。例如,<service_name>-<namespace>.example.com
。您可以通过将您自己的自定义域名映射到 Knative 服务来自定义 Knative 服务域。
您可以通过为服务创建 DomainMapping
资源来完成此操作。您还可以创建多个 DomainMapping
资源,将多个域和子域映射到单个服务。
如果您在 OpenShift Container Platform 上具有集群管理员权限(或 OpenShift Dedicated 或 Red Hat OpenShift Service on AWS 的集群管理员权限),您可以使用 web 控制台中的 Administrator 视角创建一个 DomainMapping
自定义资源(CR)。
先决条件
- 已登陆到 web 控制台。
- 您处于 Administrator 视角。
- 已安装 OpenShift Serverless Operator。
- 已安装 Knative Serving。
- 您已创建了一个项目,或者具有适当的角色和权限访问项目,以创建应用程序和其他工作负载。
您已创建了 Knative 服务,并控制要映射到该服务的自定义域。
注意您的自定义域必须指向集群的 IP 地址。
流程
- 导航到 CustomResourceDefinitions,并使用搜索框查找 DomainMapping 自定义资源定义 (CRD) 。
- 点 DomainMapping CRD,然后导航到 Instances 选项卡。
- 单击 Create DomainMapping。
修改
DomainMapping
CR 的 YAML,使其为您的实例包含以下信息:apiVersion: serving.knative.dev/v1beta1 kind: DomainMapping metadata: name: <domain_name> 1 namespace: <namespace> 2 spec: ref: name: <target_name> 3 kind: <target_type> 4 apiVersion: serving.knative.dev/v1
到 Knative 服务的域映射示例
apiVersion: serving.knative.dev/v1beta1 kind: DomainMapping metadata: name: custom-ksvc-domain.example.com namespace: default spec: ref: name: showcase kind: Service apiVersion: serving.knative.dev/v1
验证
使用
curl
请求访问自定义域。例如:示例命令
$ curl custom-ksvc-domain.example.com
输出示例
{"artifact":"knative-showcase","greeting":"Welcome"}
12.5.2. 使用 Administrator 视角限制密码套件
当您为 ingress 指定 net-kourier
并使用 DomainMapping
时,OpenShift 路由的 TLS 被设置为 passthrough,TLS 由 Kourier 网关处理。在这种情况下,您可能需要限制用户允许 Kourier 的 TLS 密码套件。
先决条件
- 已登陆到 web 控制台。
- 您处于 Administrator 视角。
- 已安装 OpenShift Serverless Operator。
- 已安装 Knative Serving。
您已创建了一个项目,或者具有适当的角色和权限访问项目,以创建应用程序和其他工作负载。
注意您的自定义域必须指向集群的 IP 地址。
流程
在
KnativeServing
CR 中,使用cipher-suites
值来指定您要启用的密码套件:KnativeServing CR 示例
spec: config: kourier: cipher-suites: ECDHE-ECDSA-AES128-GCM-SHA256,ECDHE-ECDSA-CHACHA20-POLY1305
将禁用其他密码套件。您可以使用逗号分隔多个套件。
注意Kourier 网关的容器镜像使用 Envoy 代理镜像,默认启用的密码套件取决于 Envoy 代理的版本。