Configurer des intervalles de maintenance

Cette page explique comment définir des intervalles de maintenance pour les instances Cloud Data Fusion.

Les intervalles de maintenance sont compatibles avec les instances Cloud Data Fusion 6.8.0 et versions ultérieures.

À propos des intervalles de maintenance

Dans Cloud Data Fusion, un intervalle de maintenance correspond à une période pendant laquelle vous l'autorisez à effectuer des opérations de maintenance, ce qui réduit le risque d'interruption du service lors des pics d'utilisation. Planifier des intervalles de maintenance pendant les heures creuses ou aux heures où votre activité est plus faible permet de minimiser leur impact sur vos instances Cloud Data Fusion et l'exécution de votre pipeline.

La configuration d'intervalles de maintenance vous permet de contrôler à quel moment les opérations de maintenance ont lieu sur votre instance:

  • Si l'intervalle de maintenance est défini, les opérations de maintenance sont effectuées par Cloud Data Fusion dans les périodes définies.
  • Si l'intervalle de maintenance n'est pas défini, la maintenance peut être effectuée à tout moment.

À propos des opérations de maintenance

Pour assurer la sécurité et la conformité du système, Cloud Data Fusion effectue des opérations de maintenance régulières. Ces opérations incluent l'application de mises à jour critiques et de correctifs de sécurité pour atténuer les failles et protéger les données utilisateur. Les intervalles de maintenance planifiées garantissent que les mises à jour sont appliquées efficacement, préservent l'intégrité du système et minimise les interruptions des instances et des exécutions du pipeline.

  • Lorsque vous configurez les intervalles de maintenance, vous devez allouer au moins 12 heures par semaine aux opérations de maintenance. Chaque période doit être comprise entre 4 et 12 heures.
  • Pendant les heures de maintenance, certaines opérations peuvent être affectées. Nous vous recommandons de prévoir des intervalles de maintenance pendant les périodes creuses. L'opération de maintenance peut affecter Cloud Data Fusion de différentes manières:

    • Il est possible que l'interface de Cloud Data Fusion Studio soit temporairement indisponible.
    • L'exécution du pipeline peut être affectée, entraînant un échec.
    • Les services Cloud Data Fusion peuvent être temporairement indisponibles, ce qui entraîne l'échec des appels d'API.
    • Les instances peuvent ne pas être entièrement fonctionnelles pendant une heure maximum aux heures de l'intervalle de maintenance. Nous vous recommandons de configurer des intervalles de maintenance lorsque vos pipelines ne sont pas en cours d'exécution ou ne sont pas programmés pour s'exécuter.

Spécifier des intervalles de maintenance lors de la création d'une instance

Console

Pour définir l'intervalle de maintenance lorsque vous créez une instance, procédez comme suit:

  1. Accédez à la page Instances de Cloud Data Fusion, puis cliquez sur Créer une instance.

    Créer une instance

  2. Renseignez les champs Nom de l'instance et Édition. Pour en savoir plus sur chaque champ, consultez la section Créer une instance.
  3. Développez la section Options avancées.
  4. Développez la section Maintenance et procédez comme suit :
    1. Cochez la case Activer l'intervalle de maintenance.
    2. Dans le champ Heure de début, saisissez une heure dans un format compatible.
    3. Dans la liste TimeZone, sélectionnez un fuseau horaire.
    4. Dans les listes Jours et Durée, sélectionnez les jours de la semaine et la durée de l'intervalle. Pour en savoir plus sur ces paramètres, consultez la section À propos des opérations de maintenance.
    5. Cliquez sur Créer.

Pour en savoir plus, consultez la section Configurer les intervalles et la récurrence de l'intervalle de maintenance (RRULE).

API REST

  1. Définissez la configuration Instance à l'aide de l'API instance.create:
{
  "name": string,
  "description": string,
  …
  …
  "maintenancePolicy": {
    "maintenanceWindow": {
      "recurringTimeWindow": {
        "window": {
            "startTime": "START_TIME",
            "endTime": "END_TIME"
        },
        "recurrence": "MAINTENANCE_RECURRENCE"
      }
    },
  }
}

Remplacez les éléments suivants :

  • START_TIME: heure de début de la période, au format RFC 3339.
  • END_TIME: heure de fin de la période, au format RFC 3339.
  • MAINTENANCE_RECURRENCE: RRULE pour la récurrence de l'intervalle de maintenance. Cloud Data Fusion n'accepte que les formats suivants:

    • FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA ou BYDAY=SU,MO,TU,WE,TH,FR,SA,MO;FREQ=WEEKLY. Ce champ spécifie la récurrence hebdomadaire de la fenêtre les jours sélectionnés, à partir du startTime, et pour la durée spécifiée.

Pour en savoir plus, consultez la section Configurer les intervalles et la récurrence de l'intervalle de maintenance (RRULE).

L'exemple suivant crée une instance avec un intervalle de maintenance de six heures entre 10h et 16h (UTC) le samedi et le dimanche chaque semaine. Pour en savoir plus, consultez la documentation de l'API Instances.

// POST https://datafusion.googleapis.com/v1/projects/example-project/locations/us-central1/instances?instanceID=example-instance

{
  "maintenancePolicy": {
      "maintenanceWindow": {
          "recurringTimeWindow": {
              "window": {
                  "startTime": "2024-01-01T10:00:00Z",
                  "endTime": "2024-01-01T16:00:00Z",
              },
              "recurrence": "FREQ=WEEKLY;BYDAY=SA,SU"
          }
      },
  }
}

Mettre à jour les intervalles de maintenance d'une instance

Console

Pour mettre à jour l'intervalle de maintenance d'une instance existante dans la console Google Cloud, procédez comme suit:

  1. Accédez à la page Instances de Cloud Data Fusion.

    Accéder à la page Instances

  2. Cliquez sur le nom de l'instance pour afficher ses détails.
  3. Sur la page Détails de l'instance, accédez au champ Intervalle de maintenance, puis cliquez sur Modifier.
  4. Les champs de l'intervalle de maintenance s'ouvrent en mode Édition. Mettez à jour les valeurs si nécessaire :
    1. Cochez la case Activer l'intervalle de maintenance.
    2. Dans le champ Heure de début, saisissez une heure dans un format compatible.
    3. Dans la liste TimeZone, sélectionnez un fuseau horaire.
    4. Dans les listes Jours et Durée, sélectionnez les jours de la semaine et la durée de la fenêtre. Pour en savoir plus sur ces paramètres, consultez la section À propos des opérations de maintenance.
  5. Cliquez sur Enregistrer.

Pour en savoir plus, consultez la section Configurer les intervalles et la récurrence de l'intervalle de maintenance (RRULE).

API REST

Pour les instances existantes, mettez à jour les intervalles de maintenance à l'aide de la requête API instances.patch. Cela remplace la configuration d'intervalle de maintenance existante, le cas échéant. Sinon, une nouvelle configuration est définie, comme indiqué dans le corps de la requête.

Créez une requête API comme suit:

  1. Dans le paramètre updateMask, spécifiez le masque maintenance_policy.
  2. Dans le corps de la requête, spécifiez l'intervalle de maintenance dans la configuration de la règle de maintenance:
{
  "maintenancePolicy": {
    "maintenanceWindow": {
        "recurringTimeWindow": {
          "window": {
              "startTime": "START_TIME",
              "endTime": "END_TIME"
          },
          "recurrence": "MAINTENANCE_RECURRENCE"
        }
    },
  }
}

Pour en savoir plus, consultez la section Configurer les intervalles et la récurrence de l'intervalle de maintenance (RRULE).

L'exemple suivant met à jour la configuration de la règle de maintenance de l'instance avec un intervalle de maintenance de quatre heures entre 11h et 15h (UTC) chaque semaine, le vendredi, le samedi et le dimanche.

// PATCH https://datafusion.googleapis.com/v1/projects/example-project/locations/us-central1/instances/example-instance?updateMask=maintenance_policy

{
"maintenancePolicy": {
  "maintenanceWindow": {
    "recurringTimeWindow": {
      "window": {
          "startTime": "2024-01-01T11:00:00Z",
          "endTime": "2024-01-01T15:00:00Z",
        },
      "recurrence": "FREQ=WEEKLY;BYDAY=FR,SA,SU"
    }
  },
}
}

Configurer les intervalles de maintenance et leur récurrence (RRULE)

Lorsque vous configurez les heures de début et de fin pour l'intervalle de maintenance, les composants de date des horodatages fournis sont ignorés. Seules l'heure du jour et la durée entre les heures de début et de fin sont prises en compte. Les heures sont stockées au format UTC, mais vous pouvez utiliser cette heure ou votre décalage de fuseau horaire lorsque vous planifiez des intervalles de maintenance à l'aide de l'API.

Lorsque vous configurez la récurrence, n'oubliez pas que RRULE suit les jours UTC. Ajustez donc en conséquence si votre fuseau horaire est différent. Par exemple, si votre fuseau horaire est le fuseau horaire PDT (UTC-7) et que vous souhaitez qu'un intervalle de maintenance commence à 21h le mercredi dans votre fuseau horaire (ce qui correspond à 4h UTC le jeudi), spécifiez TH au lieu de WE dans l'option BYDAY de la règle RRULE.

Supprimer l'intervalle de maintenance d'une instance

Console

Pour supprimer l'intervalle de maintenance d'une instance existante dans la console Google Cloud, procédez comme suit:

  1. Accédez à la page Instances de Cloud Data Fusion.

    Accéder à la page Instances

  2. Cliquez sur le nom de l'instance pour afficher ses détails.
  3. Sur la page Détails de l'instance, accédez au champ Intervalle de maintenance, puis cliquez sur Modifier.
  4. Pour supprimer l'intervalle de maintenance de l'instance, décochez la case Activer l'intervalle de maintenance.
  5. Cliquez sur Enregistrer.

API REST

Pour supprimer l'intervalle de maintenance d'une instance, transmettez un objet de stratégie de maintenance vide dans le corps de la requête.

// PATCH https://datafusion.googleapis.com/v1/projects/example-project/locations/us-central1/instances/example-instance?updateMask=maintenance_policy

{
    "maintenancePolicy": {}
}

Étapes suivantes