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 de traitement par lot.

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

Avant de commencer

  • Prévoyez un temps d'arrêt planifié pour la mise à niveau. Le processus prend jusqu'à une heure.
  • In the Google Cloud console, activate Cloud Shell.

    Activate 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 à une plus longue indisponibilité pour la mise à niveau, en particulier si l'instance gère une grande quantité de données.

  • La mise à niveau des pipelines en temps réel n'est pas disponible, 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 à jour une instance Cloud Data Fusion vers une nouvelle version de Cloud Data Fusion, accédez à la page Détails de 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 à jour pour obtenir 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 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 soient bloqués lorsque vous les exécutez dans la nouvelle version, attribuez 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 de 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 :

    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 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 soient bloqués lorsque vous les exécutez dans la nouvelle version, attribuez 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. Recommandé : Sauvegardez tous les pipelines. Vous pouvez sauvegarder les pipelines de deux manières :

    • Pour télécharger le fichier ZIP :

      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 les versions ultérieures. SCM fournit une intégration GitHub que vous pouvez utiliser pour sauvegarder les pipelines.

  3. Pour mettre à niveau les pipelines :

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

      export PIPELINE_LIST=PATH/pipeline_upgrade.json
      

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

    2. Créez la liste de tous les pipelines d'une instance et d'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 soient bloqués lorsque vous les exécutez dans la nouvelle version, attribuez les rôles requis dans votre instance mise à niveau.

Mettre à niveau des pipelines en temps réel

La mise à niveau des pipelines en temps réel n'est pas disponible, 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, attribuez le rôle Exécuteur Cloud Data Fusion (roles/datafusion.runner) et le rôle Administrateur Cloud Storage (roles/storage.admin) au compte de service Dataproc dans votre projet.

Étapes suivantes