Installer Knative serving en tant que composant de parc GKE Enterprise.
Avant de commencer
Vous devez d'abord vérifier que vous remplissez les conditions requises pour la mise à niveau.
Les commandes de cette page utilisent les variables d'environnement et le script de migration de l'étape de préparation de la mise à niveau.
Il est important d'effectuer chaque étape de ce processus dans l'ordre spécifié.
Présentation
L'installation de Knative serving en tant que composant de parc inclut :
- Activer les parcs dans votre projet Google Cloud.
- Copier la passerelle
gke-system-gateway
sur la passerelleknative-ingress-gateway
. - Installer la ressource personnalisée Knative Serving dans votre cluster.
Notez que pendant ce processus, vos services Knative serving existants continuent à diffuser le trafic sans interruption.
Installer le composant de parc Knative Serving
Dans cette section, le script de migration permet d'installer Knative serving en tant que composant de parc.
Exécutez la commande suivante pour démarrer le script de migration :
./migration-addon.sh --command install-cloud-run-v2
Notez que si vous rencontrez des problèmes lors de cette étape ou si vous souhaitez apporter une modification, vous pouvez réexécuter cette commande du script de migration.
Dans le terminal, le script de migration vous invite à confirmer chaque opération. Saisissez
y
à chaque invite pour continuer.Les invites lors du processus d'installation du composant de parc Knative serving se présentent comme suit :
In the process of installing the Knative serving fleet component, the script performs the following: 1. Enabling the fleet in your Google Cloud project. 2. Copy gke-system-gateway Gateway to knative-ingress-gateway Gateway 3. Installing the Knative serving custom resource in your cluster. Continue? [Y/n] y 1. Enabling Anthos services? Continue? [Y/n] y Operation "operations/acf.p2-625914735451-10d4b6ff-68e1-4a09-97c4-79b209be5031" finished successfully. 2. Copying gke-system-gateway Gateway to knative-ingress-gateway Gateway configmap/original-knative-ingress-gateway-spec unchanged gateway.networking.istio.io/knative-ingress-gateway patched (no change) configmap/config-istio patched configmap/config-istio patched gateway.networking.istio.io "gke-system-gateway" deleted 3. Install the Knative serving custom resource in your cluster? Continue? [Y/n] y Waiting for Knative serving feature to be enabled Knative serving feature is enabled. The YAML file for the new operator appdevexperience-operator was created at /tmp/tmp.bI7H1qagGa/cloudrun.yaml customresourcedefinition.apiextensions.k8s.io/cloudruns.operator.run.cloud.google.com condition met kubeconfig entry generated for my-gke-cluster. Added the custom resource for Knative serving Waiting for Knative serving serving to be ready... Knative serving serving is not ready yet. Knative serving serving is ready. Removing the ValidatingWebhookConfiguration used to prevent deletion validatingwebhookconfiguration.admissionregistration.k8s.io "prevent-deletion-cloud-run-resources" deleted Knative serving has been installed as an Anthos fleet component
Problème connu des clusters privés
Si votre installation de Knative serving se trouve dans un cluster privé sur Google Cloud, vous pouvez recevoir une erreur de délai avant expiration :
Waiting for CRD cloudruns.operator.run.cloud.google.com to be created
Pour corriger cette erreur, exécutez la commande suivante :
cat <<EOF | kubectl apply -f - apiVersion: operator.run.cloud.google.com/v1alpha1 kind: CloudRun metadata: name: cloud-run EOF
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 :
Ligne de commande
Vérifiez si l'état de
appdevexperience
est défini surACTIVE
:gcloud alpha container hub 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 sur la liste des fonctionnalités de gcloud alpha container hub.
Étape suivante
Maintenant que Cloud Service Mesh et Knative serving sont installés, vous pouvez commencer à migrer et déployer le trafic vers vos nouvelles ressources.
Rollback
Si vous devez effectuer un rollback des modifications que vous avez apportées en suivant les étapes ci-dessus, vous pouvez utiliser le script de migration pour :
- Supprimer le contrôle de vos ressources Knative serving de l'opérateur
appdevexperience-operator
. - Supprimez la ressource personnalisée Knative serving et désinstallez l'opérateur
appdevexperience-operator
. - Facultatif : désactivez le service Knative dans le parc de votre projet Google Cloud.
Pour lancer le processus de rollback, procédez comme suit :
Exécutez la commande suivante pour démarrer le script de migration :
./migration-addon.sh --command rollback-install-cloud-run-v2
Dans le terminal, le script de migration vous invite à confirmer chaque opération. Saisissez
y
à chaque invite pour continuer.Les invites lors du processus de désinstallation du composant de parc se présentent comme suit :
In the step of rolling back the Knative serving fleet installation, the script performs the following: 1. Remove control of Knative serving resources from the operator `appdevexperience-operator`. 2. Delete the Knative serving custom resource and uninstall the operator `appdevexperience-operator`. 3. Revert the changes installed by the Knative serving fleet component. 4. Optional: Disable Knative serving in the GKE Enterprise fleet of your Google Cloud project. Continue? [Y/n] y 1. Removing control of Knative serving resources from the operator `appdevexperience-operator`. Creating a ValidatingWebhookConfiguration to prevent the deletion of the resources under the following namespaces: knative-serving, cloud-run-system, and gke-system waiting for OwnerReferences of Knative serving resources to be deleted OwnerReferences of Knative serving resources are deleted Waiting for Knative serving serving to be ready... Knative serving serving is ready. 2. Delete the Knative serving custom resource and uninstall the operator `appdevexperience-operator`? Continue? [Y/n] y cloudrun.operator.run.cloud.google.com "cloud-run" deleted clusteractiveoperand.operand.run.cloud.google.com/sha256-3c1c80a329 patched waiting for appdevexperience namespace to be deleted 3. Revert the changes installed by the fleet component? configmap/config-observability patched 4. Optional: Disable Knative serving in the Anthos fleet of your Google Cloud project? You can choose to skip this step and keep the feature enable within your Anthos fleet. For example, you might want to keep the Knative serving fleet component enabled because it was enabled prior to this migration. Continue (or Skip)? [Y/n] n