Installazione di Knative serving al di fuori di Google Cloud

Scopri come installare Knative serving nei tuoi cluster GKE al di fuori di Google Cloud. Knative serving ora utilizza Cloud Service Mesh e GKE Enterprise flotte. Scopri le novità e le modifiche apportate a Knative serving del parco risorse.

Per Knative serving su VMware, consulta il Guida all'installazione a livello di GA.

Il supporto per i seguenti cluster GKE è disponibile come anteprima:

Segui i passaggi in questa pagina per configurare una nuova installazione o per aggiorna un'installazione del parco risorse esistente di Knative serving.

Prima di iniziare

Devi assicurarti di rispettare i prerequisiti di installazione.

Configura la tua risorsa personalizzata CloudRun

Devi creare e configurare manualmente la risorsa personalizzata CloudRun per e configurare l'installazione.

Per creare manualmente una risorsa personalizzata CloudRun per i cluster GKE al di fuori di Google Cloud:

  1. Devi creare o disporre di un account di servizio esistente che sia stato ha concesso i requisiti Ruolo Writer metriche Monitoring (monitoring.metricWriter).

    • Per creare un nuovo account di servizio e scaricare la chiave, consulta Utilizzo degli account di servizio.

    • Se hai già un account di servizio con le autorizzazioni necessarie, individua la chiave scaricata quando hai creato quell'account di servizio.

  2. Assicurati che Cloud Monitoring sia abilitato nel tuo cluster GKE:

  3. Crea lo spazio dei nomi knative-serving:

    kubectl create namespace knative-serving
    
  4. Crea un secret nello spazio dei nomi knative-serving che contiene il account di servizio con autorizzazioni monitoring.metricWriter:

    kubectl create secret -n knative-serving generic SECRET_NAME --from-file=PATH_TO_KEY_FILE/SECRET_KEY
    

    Sostituisci:

    • SECRET_NAME con il nome che hai scelto per il secret.
    • SECRET_KEY con il nome del file che include il tuo e credenziali. Esempio: key.json
    • PATH_TO_KEY_FILE con il percorso della directory del SECRET_KEY.

    Consulta le Riferimento a kubectl create secret per saperne di più, inclusi flag facoltativi.

  5. Crea un file YAML con i seguenti attributi, ad esempio cloudrunanthos.yaml:

    apiVersion: operator.run.cloud.google.com/v1alpha1
    kind: CloudRun
    metadata:
      name: cloud-run
    spec:
      metricscollector:
        stackdriver:
          projectid: PROJECT_ID
          gcpzone: CLUSTER_LOCATION
          clustername: CLUSTER_NAME
          secretname: SECRET_NAME
          secretkey: SECRET_KEY
    

    Sostituisci quanto segue:

    • PROJECT_ID con l'ID del tuo account Google Cloud progetto.
    • CLUSTER_LOCATION con regione o zona in cui in un cluster Kubernetes.
    • CLUSTER_NAME con l'ID del cluster o del cluster identificatore qualificato per il cluster.
    • SECRET_NAME con il nome del secret per l'account di servizio dello spazio dei nomi knative-serving.
    • SECRET_KEY con la chiave del secret per l'account di servizio di lo spazio dei nomi knative-serving. Ad esempio: key.json

      Per maggiori dettagli sugli account di servizio, vedi:

    Esempio

    In questo esempio di risorsa personalizzata CloudRun, i dettagli di configurazione Cloud Monitoring ha specificato in modo che utilizzi il secret my-gcp-logging-secret e key.json chiave:

     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
     ```
    

Abilita e installa Knative serving

Abilita il componente Knative serving nel tuo parco risorse GKE Enterprise quindi esegui il deployment della tua risorsa personalizzata CloudRun:

  1. Abilita Knative serving nel tuo parco risorse:

    gcloud container fleet cloudrun enable --project=PROJECT_ID
    

    Sostituisci PROJECT_ID con l'ID del tuo progetto Google Cloud.

    Per dettagli e opzioni aggiuntive, vedi gcloud container Fleet Cloudrun Enable riferimento.

  2. (Facoltativo) Verifica che il componente della funzionalità Knative serving sia attivato:

    Console

    Controlla se il componente Knative serving è impostato su Abilitato nella Console Google Cloud:

    Vai a Gestore funzionalità

    Riga di comando

    Vedi se lo stato appdevexperience è ACTIVE:

    gcloud container fleet features list  --project=PROJECT_ID
    

    Sostituisci PROJECT_ID con l'ID del tuo progetto Google Cloud.

    Per dettagli e opzioni aggiuntive, vedi Elenco delle funzionalità del parco risorse gcloud container riferimento.

    Risultato:

    NAME               STATE
    appdevexperience   ACTIVE
    
  3. Per ogni cluster GKE Enterprise in cui vuoi installare Knative serving, devi eseguire il deployment della tua risorsa personalizzata CloudRun:

    gcloud

    gcloud container fleet cloudrun apply --kubeconfig=KUBECONFIG --context=CONTEXT --config=CONFIG_FILE
    

    Sostituisci quanto segue:

    • KUBECONFIG con il percorso assoluto alla tua configurazione kubectl .
    • CONTEXT con il nome del contesto nel tuo comando kubectl di configurazione da usare per la connessione.
    • CONFIG_FILE con il percorso relativo del nome file al tuo cloudRun risorsa personalizzata. Esempio: cloudrunanthos.yaml.

    Per dettagli e opzioni aggiuntive, vedi gcloud container fleet cloudrun apply riferimento.

    kubectl

    kubectl apply --kubeconfig=KUBECONFIG --filename CONFIG_FILE
    

    Sostituisci quanto segue:

    • KUBECONFIG con il percorso assoluto alla tua configurazione kubectl .
    • CONFIG_FILE con il nome file e il percorso relativo del tuo cloudRun risorsa personalizzata. Esempio: cloudrunanthos.yaml.

    Per dettagli e opzioni aggiuntive, vedi kubectl apply riferimento.

  4. Verifica che Knative serving sia stato abilitato nel tuo cluster:
    1. Apri la console Google Cloud:

      Vai ai cluster GKE

    2. Fai clic sul nome del cluster per aprire il riquadro dei dettagli.

    3. Esegui questo comando per verificare se riesci a vedere i dettagli della versione di Knative serving: kubectl get namespace knative-serving -o 'go-template={{index .metadata.labels "serving.knative.dev/release"}}'
    4. Verifica che tutti i deployment specifici di Knative serving siano in esecuzione negli spazi dei nomi knative-serving e appdevexperience.

Passaggi successivi

Configura la tua installazione di Knative serving.