Installer Knative serving en dehors de Google Cloud

Découvrez comment installer Knative serving dans vos clusters GKE en dehors de Google Cloud. Knative serving utilise désormais Cloud Service Mesh et les parcs GKE Enterprise. Découvrez les nouveautés et les modifications apportées aux installations de parc Knative serving.

Pour Knative serving sur VMware, consultez le guide d'installation de niveau DG.

La compatibilité avec les clusters GKE suivants est disponible en version preview:

Suivez la procédure décrite sur cette page pour configurer une nouvelle installation ou mettre à jour une installation de parc existante de Knative serving.

Avant de commencer

Vous devez vous assurer que vous remplissez les conditions préalables à l'installation.

Configurer votre ressource personnalisée CloudRun

Vous devez créer et configurer manuellement la ressource personnalisée CloudRun pour configurer votre installation.

Pour créer manuellement une ressource personnalisée CloudRun pour les clusters GKE en dehors de Google Cloud:

  1. Vous devez créer ou disposer d'un compte de service disposant du rôle rédacteur de métriques Monitoring requis (monitoring.metricWriter).

    • Pour créer un compte de service puis télécharger la clé, consultez la page Utiliser des comptes de service.

    • Si vous disposez d'un compte de service existant avec les autorisations nécessaires, recherchez la clé que vous avez téléchargée lors de la création de ce compte.

  2. Assurez-vous que Cloud Monitoring est activé dans votre cluster GKE:

  3. Créez l'espace de noms knative-serving :

    kubectl create namespace knative-serving
    
  4. Créez un secret dans l'espace de noms knative-serving contenant le compte de service avec les autorisations monitoring.metricWriter :

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

    Remplacez :

    • SECRET_NAME par le nom que vous avez choisi pour le secret.
    • SECRET_KEY par le nom du fichier qui inclut vos identifiants. Exemple : key.json
    • PATH_TO_KEY_FILE par le chemin d'accès au répertoire de la clé SECRET_KEY.

    Pour en savoir plus, consultez la documentation de référence de kubectl create secret, y compris les options facultatives.

  5. Créez un fichier YAML avec les attributs suivants, par exemple 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
    

    Remplacez les éléments suivants :

    • PROJECT_ID par l'ID de votre projet Google Cloud.
    • CLUSTER_LOCATION par la région ou la zone dans laquelle se trouve votre cluster.
    • CLUSTER_NAME par l'ID de votre cluster ou l'identifiant complet du cluster.
    • SECRET_NAME par le nom du secret pour le compte de service de l'espace de noms knative-serving.
    • SECRET_KEY par la clé du secret pour le compte de service de l'espace de noms knative-serving. Par exemple : key.json.

      Pour en savoir plus sur les comptes de service, consultez les pages suivantes :

    Exemple

    Dans cet exemple de ressource personnalisée CloudRun, les détails de configuration de Cloud Monitoring sont spécifiés pour utiliser le secret my-gcp-logging-secret et la clé 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
     ```
    

Activer et installer Knative serving

Activez le composant Knative serving dans votre parc GKE Enterprise, puis déployez votre ressource personnalisée CloudRun:

  1. Activez Knative serving dans votre parc:

    gcloud container fleet cloudrun enable --project=PROJECT_ID
    

    Remplacez PROJECT_ID par l'ID de votre projet Google Cloud.

    Pour obtenir plus d'informations et d'options, consultez la documentation de référence de gcloud container fleet cloudrun enable.

  2. Facultatif: Vérifiez que le composant de fonctionnalité Knative serving est activé:

    Console

    Vérifiez si le composant Knative serving est activé dans la console Google Cloud:

    Accéder aux fonctionnalités de GKE Enterprise

    Ligne de commande

    Vérifiez si l'état de appdevexperience est défini sur ACTIVE :

    gcloud container fleet features list  --project=PROJECT_ID
    

    Remplacez PROJECT_ID par l'ID de votre projet Google Cloud.

    Pour obtenir plus d'informations et découvrir des options supplémentaires, consultez la documentation de référence de gcloud container fleet features list.

    Résultat :

    NAME               STATE
    appdevexperience   ACTIVE
    
  3. Pour chaque cluster GKE Enterprise sur lequel vous souhaitez installer Knative serving, vous devez déployer votre ressource personnalisée CloudRun:

    gcloud

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

    Remplacez les éléments suivants :

    • KUBECONFIG par le chemin absolu de votre fichier de configuration kubectl.
    • CONTEXT par le nom du contexte de votre fichier de configuration kubectl à utiliser pour la connexion.
    • CONFIG_FILE par le chemin d'accès relatif au nom de fichier de votre ressource personnalisée cloudRun. Exemple cloudrunanthos.yaml.

    Pour obtenir plus d'informations et d'options, consultez la documentation de référence de gcloud container fleet cloudrun apply.

    kubectl

    kubectl apply --kubeconfig=KUBECONFIG --filename CONFIG_FILE
    

    Remplacez les éléments suivants :

    • KUBECONFIG par le chemin absolu de votre fichier de configuration kubectl.
    • CONFIG_FILE par le chemin d'accès relatif au nom de fichier de votre ressource personnalisée cloudRun. Exemple cloudrunanthos.yaml.

    Pour obtenir des détails et des options supplémentaires, consultez la documentation de référence sur kubectl apply.

  4. Vérifiez que Knative serving a été activé dans votre cluster :
    1. Ouvrez la console Google Cloud.

      Accéder aux clusters GKE Enterprise

    2. Cliquez sur le nom de votre cluster pour ouvrir le volet "Détails".

    3. Exécutez la commande suivante pour vérifier si vous pouvez afficher les détails de la version de Knative serving : kubectl get namespace knative-serving -o 'go-template={{index .metadata.labels "serving.knative.dev/release"}}'
    4. Vérifiez que tous les déploiements spécifiques à Knative serving sont en cours d'exécution sous les espaces de noms knative-serving et appdevexperience.

Étapes suivantes

Configurez votre installation de Knative serving.