您可以在這個頁面自訂新的安裝項目,或設定現有的 Knative serving 機群安裝項目。例如,您可以設定私人叢集或 Cloud Monitoring 憑證。
預設安裝步驟會自動部署下列 CloudRun 自訂資源,在 Google Cloud 叢集上啟用 GKE Enterprise 指標:
apiVersion: operator.run.cloud.google.com/v1alpha1
kind: CloudRun
metadata:
name: cloud-run
如要瞭解自訂資源的一般資訊,請參閱「自訂資源」。
事前準備
請務必確認您符合安裝必要條件。
如果叢集已安裝 Knative serving,請務必確認「GKE 外掛程式」不存在,再執行這些機群元件安裝步驟。如果您已安裝「外掛程式」,則必須改為按照步驟升級至 GKE Enterprise 機群。
檢查是否已安裝「GKE 外掛程式」。
如要檢查 Knative serving 安裝項目是否為「GKE 外掛程式」,請執行下列指令:
gcloud container clusters describe \ CLUSTER_NAME \ --region CLUSTER_LOCATION \ --project PROJECT_ID --format='get(addonsConfig.cloudRunConfig)'
取代:
- CLUSTER_NAME:叢集名稱。
- CLUSTER_LOCATION:叢集所在的位置。
- 將 PROJECT_ID 替換為 Google Cloud 專案 ID。
結果:
- 未安裝「GKE 外掛程式」:
- 如果從未安裝外掛程式,終端機不會傳回任何內容。
- 如果外掛程式先前已解除安裝,則會傳回
disabled=true。
- GKE 外掛程式已安裝:如果叢集已安裝外掛程式,系統會傳回外掛程式的設定詳細資料。範例:
loadBalancerType=LOAD_BALANCER_TYPE_EXTERNAL
- 範例:
-
以下範例說明 Knative Serving 是透過「GKE 外掛程式」安裝在
my-addon-cluster叢集中,該外掛程式已設定為處理外部流量:gcloud container clusters describe my-addon-cluster \ --region us-central1-c --project my-gcp-project \ --format='get(addonsConfig.cloudRunConfig)'
回應:
loadBalancerType=LOAD_BALANCER_TYPE_EXTERNAL
設定 CloudRun 自訂資源
您必須手動建立及設定 CloudRun 自訂資源,才能設定安裝作業。
CloudRun 自訂資源,請按照下列步驟操作:
建立 YAML 檔案並加入預設設定,例如
cloudrunanthos.yaml:apiVersion: operator.run.cloud.google.com/v1alpha1 kind: CloudRun metadata: name: cloud-run在
cloudrunanthos.yaml中,您可以透過在spec區段下設定下列一或多個屬性,自訂安裝作業:私人叢集:您必須新增
clusterConfig和isPrivate屬性組合,才能在 Google Cloud的私人叢集上安裝 Knative serving。clusterConfig和isPrivate屬性:spec: clusterConfig: isPrivate: true請注意,這項設定會停用代管 TLS,因為私人叢集預設無法與憑證授權單位通訊。
指標:新增
metricscollector屬性集,設定 Cloud Monitoring。根據預設,Google Cloud 叢集上的 GKE Enterprise 會啟用指標。spec: metricscollector: stackdriver: projectid: PROJECT_ID gcpzone: CLUSTER_LOCATION clustername: CLUSTER_NAME secretname: SECRET_NAME secretkey: SECRET_KEY更改下列內容:
在這個 CloudRun 自訂資源範例中,Cloud Monitoring 的設定詳細資料指定使用 my-gcp-logging-secret 密鑰和 key.json 金鑰:
apiVersion: operator.run.cloud.google.com/v1alpha1
kind: CloudRun
metadata:
name: cloud-run
spec:
metricscollector:
stackdriver:
projectid: my-gcp-project-id
gcpzone: us-central1-c
clustername: my-anthos-cluster-name
secretname: my-gcp-logging-secret
secretkey: key.json
```
啟用並安裝 Knative serving
在 GKE Enterprise 機群中啟用 Knative serving 元件,然後部署 CloudRun 自訂資源:
在機群中啟用 Knative serving:
gcloud container fleet cloudrun enable --project=PROJECT_ID將 PROJECT_ID 替換為 Google Cloud 專案 ID。
如需詳細資料和其他選項,請參閱 gcloud container fleet cloudrun enable 參考資料。
選用:確認 Knative serving 功能元件已啟用:
控制台
在Google Cloud 控制台中,查看 Knative serving 元件是否已啟用:
指令列
查看
appdevexperience狀態是否為ACTIVE:gcloud container fleet features list --project=PROJECT_ID將 PROJECT_ID 替換為 Google Cloud 專案 ID。
如需詳細資料和其他選項,請參閱 gcloud container fleet features list 參考資料。
結果:
NAME STATE appdevexperience ACTIVE如要在 GKE Enterprise 叢集安裝 Knative serving,請務必為每個叢集部署
CloudRun自訂資源:gcloud
gcloud container fleet cloudrun apply --gke-cluster=CLUSTER_LOCATION/CLUSTER_NAME --config=CONFIG_FILE更改下列內容:
- 將 CLUSTER_LOCATION 替換為叢集所在的區域或可用區。
- 將 CLUSTER_NAME 替換為叢集 ID 或叢集的完整 ID。
- CONFIG_FILE:
cloudRun自訂資源的檔案名稱相對路徑。範例cloudrunanthos.yaml。
如需詳細資料和其他選項,請參閱 gcloud container fleet cloudrun apply 參考資料。
kubectl
kubectl apply --kubeconfig=KUBECONFIG --filename CONFIG_FILE更改下列內容:
- KUBECONFIG:kubectl 設定檔的絕對路徑。
- CONFIG_FILE:
cloudRun自訂資源的檔案名稱和相對路徑。範例cloudrunanthos.yaml。
如需詳細資料和其他選項,請參閱 kubectl apply 參考資料。
- 確認叢集已啟用 Knative serving:
- 開啟 Google Cloud 控制台:
- 按一下叢集名稱,開啟詳細資料窗格。
- 執行下列指令,確認是否能查看 Knative Serving 版本詳細資料:
kubectl get all -n knative-serving -o 'go-template={{index .metadata.labels "serving.knative.dev/release"}}' - 確認所有 Knative Serving 專屬部署項目在
knative-serving和appdevexperience命名空間下都處於執行中狀態。