跳到内容

配置域名

您可以自定义单个 Knative Service 的域名,或为集群上创建的所有 Services 设置全局默认域名。默认情况下,路由的完全限定域名是 {route}.{namespace}.svc.cluster.local

为单个 Knative Service 配置域名

如果您想自定义单个 Service 的域名,请参阅有关 DomainMapping 的文档。

为集群上所有 Knative Services 配置默认域名

您可以通过修改 config-domain ConfigMap 来更改集群上所有 Knative Services 的默认域名。

步骤

  1. 在文本编辑器中打开 config-domain ConfigMap

    kubectl edit configmap config-domain -n knative-serving
    
  2. 编辑文件以将 svc.cluster.local 替换为您想要使用的域名,并保存更改。在此示例中,knative.dev 被配置为所有路由的域名

    apiVersion: v1
    data:
      knative.dev: ""
      _example: | ...
    kind: ConfigMap
    [...]
    

如果您有现有部署,Knative 会协调对 ConfigMap 所做的更改,并自动更新所有已部署 Services 和 Routes 的主机名。

验证步骤

  1. 将应用程序部署到您的集群。
  2. 检索路由的 URL

    kubectl get route <route-name> --output jsonpath="{.status.url}"
    

    其中 <route-name> 是路由的名称。

  3. 观察您配置的自定义域名。

发布您的域名

要使您的域名可公开访问,您必须更新您的 DNS 提供商,使其指向您的服务入口的 IP 地址。

  1. 为命名空间和自定义域名创建指向入口 IP 地址的通配符记录,这将使同一命名空间中多个服务的主机名无需创建额外的 DNS 条目即可工作。

    *.default.knative.dev                   59     IN     A   35.237.28.44
    
  2. 创建 A 记录以将完全限定域名指向您的 Knative 网关的 IP 地址。此步骤需要为创建的每个 Knative Service 或 Route 执行。

    helloworld-go.default.knative.dev       59     IN     A   35.237.28.44
    
  3. 域名更新传播后,您可以使用已部署路由的完全限定域名访问您的应用程序。

我们使用分析和 cookie 来了解网站流量。有关您使用我们网站的信息会与 Google 共享以达到此目的。了解更多。