Utilisez ce guide pour migrer votre installation existante de diffusion Knative sur Google Cloud afin d'utiliser un parc avec Anthos Service Mesh.
La précédente version d'essai gratuit de Knative Serving, également appelée module complémentaire GKE, inclut une version intégrée et simplifiée d'Istio 1.4, qui n'est plus compatible à partir d'Anthos 1.8.
Mettre à niveau votre installation de diffusion Knative pour utiliser des parcs et Anthos Service Mesh offre une meilleure indépendance en termes de mise à niveau et de gestion des produits, ainsi qu'une meilleure intégration des fonctionnalités de GKE Enterprise. En savoir plus sur les nouveautés et les modifications
Deux options s'offrent à vous pour la migration de votre installation :
Le processus recommandé consiste à migrer vos charges de travail depuis le cluster sur lequel la version précédente de Knative Serving est installée ("module complémentaire GKE") vers un nouveau cluster sur lequel vous avez installé et configuré une nouvelle installation de diffusion Knative pour un parc. Bien que ce processus soit relativement simple et idéal, si vos charges de travail diffusent du trafic, la migration vers un nouveau cluster entraîne des temps d'arrêt. Pour effectuer ce processus de migration, procédez comme suit dans le nouveau cluster :
- Installez Knative en tant que composant de parc.
Déployez vos services sur la nouvelle installation.
Par exemple, vous pouvez utiliser les instructions relatives au déploiement d'une révision d'un service existant pour télécharger individuellement un fichier de configuration YAML pour chacun de vos services, puis déployer chaque fichier YAML sur votre nouveau cluster dans l'installation de l'inférence Knative pour un parc:
Dans l'ancienne installation, vous pouvez exécuter la commande suivante pour télécharger un fichier de configuration YAML, tel que
service.yaml
:gcloud run services describe SERVICE --format export > service.yaml
Remplacez SERVICE par le nom de votre service de diffusion Knative.
Dans la nouvelle installation du composant de parc, vous pouvez ensuite exécuter la commande suivante pour déployer le même
service.yaml
:gcloud run deploy service.yaml --cluster CLUSTER_NAME --cluster-location CLUSTER_LOCATION --project PROJECT_ID
Remplacez :
CLUSTER_NAME par le nom du cluster dans votre nouvelle installation de composants de parc pour la diffusion Knative.
CLUSTER_LOCATION par la zone ou la région du cluster dans votre nouvelle installation de composants de parc pour la diffusion Knative.
PROJECT_ID par l'ID du projet Google Cloud dans lequel se trouve votre nouvelle installation de composants de parc pour la diffusion Knative.
Alternative: Pour les utilisateurs qui ne peuvent pas créer de cluster et qui doivent migrer leur installation active de la diffusion Knative, vous pouvez suivre les étapes de ce guide pour:
- Supprimer les anciennes ressources liées au module complémentaire GKE et à Istio
- Installer de nouvelles ressources de parc
- Effectuer la migration vers Anthos Service Mesh, puis migrer le trafic
- Nettoyer toutes les ressources obsolètes et inutilisées
Le guide suivant vous présente le processus alternatif de mise à niveau de votre installation existante et active de Knative Serving, y compris toutes les charges de travail, pour répondre aux exigences de GKE Enterprise 1.8 et versions ultérieures.
Avant de commencer
Ce processus de mise à niveau ne doit être effectué que sur les clusters Google Kubernetes Engine sur lesquels vous avez précédemment installé Knative en tant que "module complémentaire GKE".
Vérifier si le module complémentaire GKE est installé.
Pour vérifier si votre installation de diffusion Knative correspond au module complémentaire GKE, exécutez la commande suivante:
gcloud container clusters describe \ CLUSTER_NAME \ --region CLUSTER_LOCATION \ --project PROJECT_ID --format='get(addonsConfig.cloudRunConfig)'
Remplacez :
- CLUSTER_NAME par le nom de votre cluster.
- CLUSTER_LOCATION par la région où se trouve votre cluster.
- PROJECT_ID par l'ID de votre projet Google Cloud.
Résultats :
- Module complémentaire GKE non installé :
- Aucun élément n'est renvoyé à votre terminal si le module complémentaire n'a jamais été installé.
disabled=true
est renvoyé si le module complémentaire a déjà été désinstallé.
- Module complémentaire GKE installé : si le module complémentaire est installé dans votre cluster, les détails de configuration du module complémentaire sont renvoyés.
Exemple :
loadBalancerType=LOAD_BALANCER_TYPE_EXTERNAL
- Exemple :
- L'exemple suivant montre que la diffusion Knative a été installée dans le cluster
my-addon-cluster
via le module complémentaire GKE, configuré pour gérer le trafic externe:gcloud container clusters describe my-addon-cluster \ --region us-central1-c --project my-gcp-project \ --format='get(addonsConfig.cloudRunConfig)'
Solution :
loadBalancerType=LOAD_BALANCER_TYPE_EXTERNAL
Vous devez disposer des autorisations adéquates dans votre projet Google Cloud pour répondre aux exigences de votre cluster, de votre parc et d'Anthos Service Mesh:
Si vous disposez du rôle Propriétaire pour le projet Google Cloud, vous disposez de plus que les autorisations nécessaires pour créer des clusters, installer, puis configurer la diffusion Knative.
Notez que les exigences concernant les autorisations d'Anthos Service Mesh répondent également à toutes les exigences d'autorisation pour installer et configurer la diffusion Knative.
Utiliser d'autres rôles et la configuration minimale requise :
Selon votre organisation, vous pouvez également répondre aux exigences d'autorisations en combinant les rôles prédéfinis suivants :
Autorisations du projet Google Cloud : rôle de base d'Éditeur
Autorisations de parc : Administrateur GKE Hub ou rôle comprenant les autorisations suivantes:
gkehub.features.create
gkehub.features.update
Autorisations du cluster : rôle d'administrateur Kubernetes Engine :
- Administrateur de Kubernetes Engine
- Administrateur de cluster Kubernetes Engine
Seule la version 1.18 d'Anthos Service Meshest compatible.
Anthos Service Mesh exige que votre cluster utilise un type de machine comportant au moins quatre vCPU (processeurs virtuels), par exemple
e2-standard-4
. Consultez le guide d'installation d'Anthos Service Mesh pour en savoir plus sur les conditions requises. Si vous devez modifier le type de machine d'un cluster existant, consultez la page Migrer des charges de travail vers différents types de machines.Cloud Shell est l'environnement recommandé pour exécuter les commandes et le script de migration au cours de ce processus. Notez que le script d'installation d'Anthos Service Mesh n'est compatible qu'avec Linux ou Cloud Shell.
Si votre installation existante de Knative Serving utilise le module complémentaire Istio sur GKE, vous devez migrer vers le plan de contrôle géré Anthos Service Mesh. La migration du module complémentaire Istio sur GKE vers le plan de contrôle de cluster Anthos Service Mesh n'est actuellement pas possible.
Mettre à niveau les charges de travail de diffusion et de migration Knative
Pour vous aider à mettre à niveau votre installation existante de diffusion Knative et à migrer vos charges de travail, vous devez exécuter un script qui automatise la plupart des étapes et vous invite à saisir une entrée tout au long du processus.
Préparer la mise à niveau et configurer votre environnement.
Migrer le trafic de charge de travail vers Anthos Service Mesh
Finaliser la mise à niveau et effectuer des tâches de nettoyage