Installazione di Knative al di fuori di Google Cloud

Scopri come installare Knative server nei tuoi cluster GKE all'esterno di Google Cloud. Knative serve ora i parchi risorse Anthos Service Mesh e GKE Enterprise. Scopri le novità e le modifiche apportate con le installazioni del parco risorse di gestione di Knative.

Per la gestione con Knative su VMware, consulta la guida all'installazione a livello di GA.

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

Utilizza i passaggi riportati in questa pagina per configurare una nuova installazione o per aggiornare un'installazione del parco risorse esistente di Knative.

Prima di iniziare

Devi assicurarti di soddisfare i prerequisiti di installazione.

Configura la tua risorsa personalizzata CloudRun

Per configurare l'installazione, devi creare e configurare manualmente la risorsa personalizzata CloudRun.

Per creare manualmente una risorsa CloudRun personalizzata per i cluster GKE all'esterno di Google Cloud:

  1. Devi creare o avere un account di servizio esistente a cui è stato concesso il ruolo Writer metriche Monitoring (monitoring.metricWriter) obbligatorio.

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

    • Se hai un account di servizio esistente con le autorizzazioni necessarie, trova la chiave che hai scaricato al momento della creazione dell'account.

  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 l'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 le tue credenziali. Esempio: key.json
    • PATH_TO_KEY_FILE con il percorso della directory del SECRET_KEY.

    Per scoprire di più, consulta il riferimento kubectl create secret, inclusi i 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 progetto Google Cloud.
    • CLUSTER_LOCATION con l'area geografica o la zona in cui si trova il cluster.
    • CLUSTER_NAME con l'ID del cluster o l'identificatore completo del 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 dello 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 per Cloud Monitoring sono specificati in modo da utilizzare il secret my-gcp-logging-secret e la chiave 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
     ```
    

Abilita e installa la gestione di Knative

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

  1. Attiva la pubblicazione Knative 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, consulta la pagina di riferimento gcloud container Flex cloudrunenable.

  2. (Facoltativo) Verifica che il componente della funzionalità di pubblicazione Knative sia abilitato:

    Console

    Controlla se il componente di pubblicazione Knative è impostato su Abilitato nella console Google Cloud:

    Vai alle funzionalità di GKE Enterprise

    Riga di comando

    Visualizza se lo stato di 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, consulta la documentazione sull'elenco delle funzionalità del parco risorse di container di gcloud.

    Risultato:

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

    gcloud

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

    Sostituisci quanto segue:

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

    Per dettagli e opzioni aggiuntive, consulta la pagina di riferimento gcloud container Fleet cloudrun apply.

    kubectl

    kubectl apply --kubeconfig=KUBECONFIG --filename CONFIG_FILE
    

    Sostituisci quanto segue:

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

    Per dettagli e opzioni aggiuntive, consulta il riferimento kubectl apply.

  4. Verifica che la pubblicazione Knative sia stata abilitata nel tuo cluster:
    1. Apri la console Google Cloud:

      Vai ai cluster GKE Enterprise

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

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

Passaggi successivi

Configura l'installazione della pubblicazione di Knative.