Personalizzazione dell'installazione di Google Cloud

Scopri come installare Knative serving nei tuoi cluster GKE su Google Cloud. Knative serving ora utilizza i fleet Cloud Service Mesh e GKE Enterprise. Scopri le novità e le modifiche apportate a Knative serving del parco risorse.

Utilizza questa pagina per personalizzare una nuova installazione o per configurare un'installazione del parco risorse esistente di Knative serving. Ad esempio, puoi configurare cluster privati o impostare le credenziali di Cloud Monitoring.

I passaggi di installazione predefiniti eseguono automaticamente il deployment della seguente risorsa personalizzata CloudRun che abilita le metriche su GKE Enterprise nei cluster Google Cloud:

  apiVersion: operator.run.cloud.google.com/v1alpha1
  kind: CloudRun
  metadata:
    name: cloud-run

Per saperne di più sulle risorse personalizzate in generale, consulta risorse personalizzate.

Prima di iniziare

  • Devi assicurarti di soddisfare i prerequisiti di installazione.

  • Se nel cluster è installato il servizio Knative, devi assicurarti che il "componente aggiuntivo GKE" non esista prima di eseguire questi passaggi di installazione del componente della flotta. Se hai installato il "componente aggiuntivo", devi invece seguire i passaggi per l'upgrade ai parchi risorse GKE Enterprise.

    Controlla se il "componente aggiuntivo GKE" è installato.

    Per verificare se la tua installazione di Knative Serving è il "componente aggiuntivo GKE", esegui il seguente comando:

    gcloud container clusters describe \
    CLUSTER_NAME \
    --region CLUSTER_LOCATION \
    --project PROJECT_ID --format='get(addonsConfig.cloudRunConfig)'

    Sostituisci:

    • CLUSTER_NAME con il nome del cluster.
    • CLUSTER_LOCATION con la posizione in cui si trova il tuo cluster.
    • PROJECT_ID con l'ID del tuo progetto Google Cloud.

    Risultati:

    • "Componente aggiuntivo GKE" non installata:
      • Se il componente aggiuntivo non è mai stato installato, non viene restituito nulla al terminale.
      • Se il componente aggiuntivo è stato disinstallato in precedenza, viene restituito disabled=true.
    • Il "componente aggiuntivo GKE" è installato: se il componente aggiuntivo è installato nel tuo cluster, vengono restituiti i dettagli di configurazione del componente aggiuntivo. Esempio: loadBalancerType=LOAD_BALANCER_TYPE_EXTERNAL
    Esempio:
    L'esempio seguente dimostra che il servizio Knative è stato installato nel cluster my-addon-cluster tramite il "componente aggiuntivo GKE", che è configurato per gestire il traffico esterno:
    gcloud container clusters describe my-addon-cluster \
    --region us-central1-c --project my-gcp-project \
    --format='get(addonsConfig.cloudRunConfig)'

    Risposta:

    loadBalancerType=LOAD_BALANCER_TYPE_EXTERNAL

Configura la tua risorsa personalizzata CloudRun

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

Per creare manualmente una risorsa personalizzata CloudRun per i cluster GKE su Google Cloud:
  1. Crea un file YAML e includi la configurazione predefinita, ad esempio cloudrunanthos.yaml:

    apiVersion: operator.run.cloud.google.com/v1alpha1
    kind: CloudRun
    metadata:
      name: cloud-run
    
  2. In cloudrunanthos.yaml puoi personalizzare l'installazione configurando Uno o più dei seguenti attributi in una sezione spec:

    • Cluster privati: devi aggiungere clusterConfig e isPrivate di attributi per installare Knative serving su cluster privati su Google Cloud.

      Attributi clusterConfig e isPrivate:

      spec:
        clusterConfig:
          isPrivate: true
      

      Tieni presente che questa impostazione disattiva TLS gestito perché i cluster privati non sono in grado di comunicare con l'autorità di certificazione per impostazione predefinita.

    • Metriche: aggiungi l'insieme di attributi metricscollector per configurare Cloud Monitoring. Per impostazione predefinita, le metriche sono abilitate per GKE Enterprise su cluster Google Cloud.

      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 la regione o la zona in cui si trova il cluster.
      • CLUSTER_NAME con l'ID del cluster o con l'identificatore completamente qualificato del cluster.
      • SECRET_NAME con il nome del segreto per l'account di servizio dello spazio dei nomi knative-serving.
      • SECRET_KEY con la chiave del secret per l'account di servizio del spazio dei nomi knative-serving. Ad esempio: key.json

        Per informazioni dettagliate sugli account di servizio, consulta:

Esempio

In questo esempio di risorsa personalizzata CloudRun, i dettagli di configurazione Cloud Monitoring ha specificato di utilizzare 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
 ```

Attivare e installare Knative serving

Abilita il componente di pubblicazione Knative nel tuo parco risorse GKE Enterprise e poi esegui il deployment della 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 attivo:

    Console

    Controlla se il componente Knative serving è 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, consulta il elenco delle funzionalità di gcloud container fleet informazioni di riferimento.

    Risultato:

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

    gcloud

    gcloud container fleet cloudrun apply --gke-cluster=CLUSTER_LOCATION/CLUSTER_NAME --config=CONFIG_FILE
    

    Sostituisci quanto segue:

    • CLUSTER_LOCATION con regione o zona in cui in un cluster Kubernetes.
    • CLUSTER_NAME con l'ID del cluster o con l'identificatore completamente qualificato del cluster.
    • 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 alla risorsa personalizzatacloudRun. Esempio: cloudrunanthos.yaml.

    Per dettagli e opzioni aggiuntive, consulta la documentazione di riferimento di kubectl apply.

  4. Verifica che il servizio Knative sia stato attivato nel 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 siano in stato di esecuzione nei namespace knative-serving e appdevexperience.

Passaggi successivi

Configura l'installazione di Knative serving.