跳至內容

Kubernetes 服務

本指南說明執行 Knative Serving 時會啟用的 Kubernetes 服務

開始之前

  1. 本指南假設您已安裝 Knative Serving
  2. 確認您的叢集中具有適當的元件。若要檢視叢集中安裝的服務,請使用以下命令

    $ kubectl get services -n knative-serving
    

    這會傳回類似下列的輸出

    NAME                TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                  AGE
    activator-service   ClusterIP   10.96.61.11      <none>        80/TCP,81/TCP,9090/TCP   1h
    autoscaler          ClusterIP   10.104.217.223   <none>        8080/TCP,9090/TCP        1h
    controller          ClusterIP   10.101.39.220    <none>        9090/TCP                 1h
    webhook             ClusterIP   10.107.144.50    <none>        443/TCP                  1h
    
  3. 若要檢視叢集中的部署,請使用以下命令

    $ kubectl get deployments -n knative-serving
    

    這會傳回類似下列的輸出

    NAME                         DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
    activator                    1         1         1            1           1h
    autoscaler                   1         1         1            1           1h
    controller                   1         1         1            1           1h
    net-certmanager-controller   1         1         1            1           1h
    net-istio-controller         1         1         1            1           1h
    webhook                      1         1         1            1           1h
    

這些服務和部署會在安裝期間由 serving.yaml 檔案安裝。下一節將說明它們的功能。

元件

服務:activator

activator 負責接收和緩衝非使用中修訂版本的請求,並向自動調整器報告指標。它也會在自動調整器根據報告的指標調整修訂版本之後,重試對修訂版本的請求。

服務:autoscaler

autoscaler 接收請求指標並調整處理流量負載所需的 Pod 數量。

服務:controller

controller 服務會調和所有公開的 Knative 物件和自動調整 CRD。當使用者將 Knative 服務套用至 Kubernetes API 時,這會建立組態和路由。它會將組態轉換為修訂版本,並將修訂版本轉換為部署和 Knative Pod 自動調整器 (KPA)。

服務:webhook

webhook 會攔截所有 Kubernetes API 呼叫以及所有 CRD 插入和更新。它會設定預設值、拒絕不一致和無效的物件,並驗證和修改 Kubernetes API 呼叫。

部署:net-certmanager-controller

certmanager 會將叢集 Ingress 調和為 cert manager 物件。

部署:net-istio-controller

net-istio-controller 部署會將叢集的 Ingress 調和為 Istio 虛擬服務

下一步

我們使用分析和 Cookie 來了解網站流量。您使用我們網站的相關資訊會與 Google 分享,以達成該目的。了解更多。