Gérer les mises à niveau de version pour les instances et les pipelines

Cette page explique comment mettre à niveau la version de vos instances ou de vos pipelines par lot.

Mettez à niveau vos instances Cloud Data Fusion et vos pipelines par lot vers les dernières versions de la plate-forme et des plug-ins pour bénéficier des dernières fonctionnalités, des corrections de bugs et des améliorations des performances.

Avant de commencer

  • Planifiez un temps d'arrêt pour la mise à niveau. Cette opération peut prendre jusqu'à une heure.
  • Dans la console Google Cloud , activez Cloud Shell.

    Activer Cloud Shell

Limites

  • Une fois que vous avez créé une instance Cloud Data Fusion, vous ne pouvez plus modifier son édition, même en effectuant une mise à niveau.

  • N'effectuez pas de mise à niveau avec Terraform, car il supprime et recrée l'instance au lieu d'effectuer une mise à niveau sur place. Ce problème entraîne la perte de toutes les données existantes dans l'instance.

  • Cloud Data Fusion ne redémarre pas les pipelines qui s'arrêtent à la suite de l'opération de mise à niveau.

  • Lorsque vous mettez à niveau une instance à partir de versions antérieures à la version 6.11.0, attendez-vous à un temps d'arrêt plus long, en particulier si l'instance gère un grand nombre de données.

  • La mise à niveau des pipelines en temps réel n'est pas prise en charge, sauf pour les pipelines créés dans la version 6.8.0 avec une source Kafka en temps réel. Pour trouver une solution de contournement, consultez Mettre à niveau les pipelines en temps réel.

Mettre à niveau des instances Cloud Data Fusion

Pour mettre à niveau une instance Cloud Data Fusion vers une nouvelle version de Cloud Data Fusion, accédez à la page Informations sur l'instance :

  1. Dans la Google Cloud console, accédez à la page Cloud Data Fusion.

  2. Cliquez sur Instances, puis sur le nom de l'instance pour accéder à la page Détails de l'instance.

    Accéder à la page "Instances"

Effectuez ensuite la mise à niveau à l'aide de la console Google Cloud ou de la gcloud CLI :

Console

  1. Cliquez sur Mettre à niveau pour afficher la liste des versions disponibles.

  2. Sélectionnez une version.

  3. Cliquez sur Mettre à niveau.

  4. Vérifiez que la mise à niveau a réussi :

    1. Actualisez la page Détails de l'instance.

    2. Cliquez sur Afficher l'instance pour accéder à l'instance mise à niveau dans l'interface Web de Cloud Data Fusion.

    3. Cliquez sur Administrateur système dans la barre de menu.

      Le nouveau numéro de version apparaît en haut de la page.

  5. Pour éviter que vos pipelines ne se bloquent lorsque vous les exécutez dans la nouvelle version, accordez les rôles requis dans votre instance mise à niveau.

gcloud

  1. Pour passer à une nouvelle version de Cloud Data Fusion, exécutez la commande gcloud CLI suivante à partir d'une session Cloud Shell dans un terminal local :

      gcloud beta data-fusion instances update INSTANCE_ID \
        --project=PROJECT_ID \
        --location=LOCATION_NAME \
        --version=AVAILABLE_INSTANCE_VERSION
    
  2. Pour vérifier que la mise à niveau a réussi, procédez comme suit :

    1. Dans la console Google Cloud , accédez à la page Instances de Cloud Data Fusion.

    2. Cliquez sur Afficher l'instance pour accéder à l'instance mise à niveau dans l'interface Web de Cloud Data Fusion.

    3. Cliquez sur Administrateur système dans la barre de menu.

      Le nouveau numéro de version apparaît en haut de la page.

  3. Pour éviter que vos pipelines ne se bloquent lorsque vous les exécutez dans la nouvelle version, accordez les rôles requis dans votre instance mise à niveau.

Mettre à niveau des pipelines par lots

Pour mettre à jour vos pipelines par lots Cloud Data Fusion afin d'utiliser les dernières versions de plug-ins, procédez comme suit :

  1. Définissez des variables d'environnement.

  2. Recommandation : Sauvegardez tous les pipelines. Vous pouvez sauvegarder les pipelines de deux manières :

    • Pour télécharger le fichier ZIP, procédez comme suit :

      1. Pour déclencher le téléchargement d'un fichier ZIP, sauvegardez tous les pipelines avec la commande suivante :
      echo $CDAP_ENDPOINT/v3/export/apps
      
      1. Copiez l'URL dans votre navigateur.
      2. Extrayez le fichier téléchargé, puis vérifiez que tous les pipelines ont été exportés. Les pipelines sont organisés par espace de noms.
    • Sauvegardez les pipelines à l'aide de la gestion du contrôle du code source (SCM), disponible dans la version 6.9 et ultérieure. SCM fournit une intégration GitHub que vous pouvez utiliser pour sauvegarder les pipelines.

  3. Pour mettre à niveau les pipelines, procédez comme suit :

    1. Créez une variable qui pointe vers le fichier pipeline_upgrade.json que vous allez créer à l'étape suivante pour enregistrer une liste de pipelines.

      export PIPELINE_LIST=PATH/pipeline_upgrade.json
      

      Remplacez PATH par le chemin d'accès au fichier.

    2. Créez une liste de tous les pipelines pour une instance et un espace de noms à l'aide de la commande suivante. Le résultat est stocké dans le fichier $PIPELINE_LIST au format JSON. Vous pouvez modifier la liste pour supprimer les pipelines qui n'ont pas besoin d'être mis à niveau.

      curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps -o $PIPELINE_LIST
      

      Remplacez NAMESPACE_ID par l'espace de noms dans lequel vous souhaitez effectuer la mise à niveau.

    3. Mettez à jour les pipelines répertoriés dans pipeline_upgrade.json. Insérez les NAMESPACE_ID des pipelines à mettre à jour. La commande affiche une liste des pipelines mis à jour avec leur état de mise à jour.

      curl -N -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/upgrade --data @$PIPELINE_LIST
      

      Remplacez NAMESPACE_ID par l'ID de l'espace de noms des pipelines en cours de mise à niveau.

  4. Pour éviter que vos pipelines ne se bloquent lorsque vous les exécutez dans la nouvelle version, accordez les rôles requis dans votre instance mise à niveau.

Mettre à niveau les pipelines en temps réel

La mise à niveau des pipelines en temps réel n'est pas acceptée, sauf pour les pipelines créés dans la version 6.8.0 avec une source Kafka en temps réel.

Pour tout le reste, procédez plutôt comme suit :

  1. Arrêtez et exportez les pipelines.
  2. Mettez à niveau l'instance.
  3. Importez les pipelines en temps réel dans votre instance mise à niveau.

Mettre à niveau pour activer la réplication

La réplication peut être activée dans les environnements Cloud Data Fusion version 6.3.0 ou ultérieure. Si vous disposez de la version 6.2.3, passez à la version 6.3.0, puis à la dernière version. Vous pouvez ensuite activer la réplication.

Attribuer des rôles pour les instances mises à niveau

Une fois la mise à niveau terminée, accordez le rôle d'exécuteur Cloud Data Fusion (roles/datafusion.runner) et le rôle d'administrateur Cloud Storage (roles/storage.admin) au compte de service Managed Service pour Apache Spark dans votre projet.

Étapes suivantes