設定網域名稱¶
您可以自訂個別 Knative 服務的網域,或為叢集上建立的所有服務設定全域預設網域。預設情況下,路由的完整網域名稱是 {route}.{namespace}.svc.cluster.local
。
設定單一 Knative 服務的網域¶
如果您想要自訂個別服務的網域,請參閱關於 DomainMapping
的文件。
設定叢集上所有 Knative 服務的預設網域¶
您可以修改 config-domain
ConfigMap 來變更叢集上所有 Knative 服務的預設網域。
程序¶
-
在您的預設文字編輯器中開啟
config-domain
ConfigMapkubectl edit configmap config-domain -n knative-serving
-
編輯檔案,將
svc.cluster.local
取代為您想要使用的網域,然後移除_example
鍵並儲存您的變更。在此範例中,knative.dev
設定為所有路由的網域apiVersion: v1 data: knative.dev: "" kind: ConfigMap [...]
如果您有現有的部署,Knative 會調解對 ConfigMap 所做的變更,並自動更新所有已部署服務和路由的主機名稱。
驗證步驟¶
- 將應用程式部署到您的叢集。
-
擷取路由的 URL
kubectl get route <route-name> --output jsonpath="{.status.url}"
其中
<route-name>
是路由的名稱。 -
觀察您已設定的自訂網域。
發佈您的網域¶
若要讓您的網域可公開存取,您必須更新您的 DNS 提供者,以指向您的服務入口的 IP 位址。
-
為命名空間和自訂網域建立指向入口 IP 位址的萬用字元記錄,這將允許相同命名空間中多個服務的主機名稱運作,而無需建立額外的 DNS 項目。
*.default.knative.dev 59 IN A 35.237.28.44
-
建立 A 記錄,將完整網域名稱指向您的 Knative 閘道的 IP 位址。必須為建立的每個 Knative 服務或路由執行此步驟。
helloworld-go.default.knative.dev 59 IN A 35.237.28.44
-
在網域更新傳播後,您可以使用已部署路由的完整網域名稱來存取您的應用程式。