Configurer des intervalles de maintenance

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

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

À propos des intervalles de maintenance

Dans Cloud Data Fusion, un intervalle de maintenance est une période d'effectuer des opérations de maintenance, ce qui réduit le risque lors des pics d'utilisation. Programmer des intervalles de maintenance les heures creuses ou les heures où votre activité est plus faible, minimise leur impact sur vos instances Cloud Data Fusion et vos exécutions de pipelines.

Configurer des intervalles de maintenance vous permet de contrôler à quel moment les opérations de maintenance se produisent dans votre instance:

  • Si l'intervalle de maintenance est défini, des 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 en temps réel.

À propos des opérations de maintenance

Pour assurer la sécurité et la conformité du système, Cloud Data Fusion effectue les opérations de maintenance régulières. Ces opérations incluent l'application et des correctifs de sécurité pour limiter les failles et protéger les données utilisateur. Les fenêtres de maintenance planifiées garantissent que les mises à jour sont appliquées efficacement, préserver l'intégrité du système, et limiter les perturbations sur les instances et le pipeline exécutions.

  • Lorsque vous configurez les intervalles de maintenance, vous devez allouer au moins 12 d'heures par semaine pour les opérations de maintenance. Chaque fenêtre 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. La opération de maintenance peut affecter Cloud Data Fusion comme suit:

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

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. Compute Engine.

    Créer une instance

  2. Renseignez les champs Nom de l'instance et Édition. Pour en savoir plus sur pour 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: <ph type="x-smartling-placeholder">
      </ph>
    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 de la fenêtre. Pour en savoir plus sur ces paramètres, consultez À propos des opérations de maintenance
    5. Cliquez sur Créer.

Pour en savoir plus, consultez Configurez les intervalles de maintenance et la récurrence (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 au format RFC 3339.
  • MAINTENANCE_RECURRENCE: RRULE pour la la récurrence de l'intervalle de maintenance. Cloud Data Fusion n'accepte dans 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 Il s'agit de la valeur récurrence de la fenêtre les jours sélectionnés, à compter du startTime, et pour la durée spécifiée.

Pour en savoir plus, consultez Configurez les intervalles de maintenance et la récurrence (RRULE).

L'exemple suivant crée une instance avec un intervalle de maintenance de six heures entre 10h et 16h (UTC), chaque semaine, le samedi et le dimanche. Pour plus plus d'informations, 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"
          }
      },
  }
}

gcloud

Vous pouvez spécifier l'intervalle de maintenance lorsque vous créez une instance à l'aide de la commande gcloud beta data-fusion instances create.

Les paramètres suivants doivent être définis pour un intervalle de maintenance:

  • --maintenance-window-start définit l'heure de début de la fenêtre.
  • --maintenance-window-end définit l'heure de fin de la période.
  • --maintenance-window-recurrence définit une règle RRULE pour la fonction la récurrence de l'intervalle de maintenance.
gcloud beta data-fusion instances create INSTANCE_NAME \
    --project=PROJECT_NAME \
    --location=LOCATION \
    --maintenance-window-start=START_TIME \
    --maintenance-window-end=END_TIME \
    --maintenance-window-recurrence=MAINTENANCE_RECURRENCE

Remplacez les éléments suivants :

  • INSTANCE_NAME : nom de l'instance.
  • PROJECT_NAME : nom du projet.
  • LOCATION: nom de la région de l'instance.
  • START_TIME: heure de début de la fenêtre dans le format de saisie de date/heure. Seule l'heure spécifiée est utilisée, la date est ignorée.
  • END_TIME: heure de fin de la fenêtre dans le format de saisie de date/heure. Seule l'heure spécifiée est utilisée, la date est ignorée. La La date et l'heure spécifiées doivent être postérieures à l'heure de début.
  • MAINTENANCE_RECURRENCE: RRULE pour la la récurrence de l'intervalle de maintenance. Cloud Data Fusion n'accepte dans 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 Il s'agit de la valeur récurrence de la fenêtre les jours sélectionnés, à compter du --maintenance-window-start fois et pour la durée spécifiée.

Pour en savoir plus, consultez Configurez les intervalles de maintenance et la récurrence (RRULE).

La commande suivante crée une instance avec un intervalle de maintenance de six heures entre midi et 18h (UTC), chaque semaine, le samedi et le dimanche.

gcloud beta data-fusion instances create example-instance \
    --project='example-project' \
    --location='us-east1' \
    --maintenance-window-start='2024-01-01T12:00:00Z' \
    --maintenance-window-end='2024-01-01T18:00:00Z' \
    --maintenance-window-recurrence='FREQ=WEEKLY;BYDAY=SA,SU'

Mettre à jour les intervalles de maintenance d'une instance

Console

Pour mettre à jour l'intervalle de maintenance dans une instance existante dans 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 à l'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 À propos des opérations de maintenance
  5. Cliquez sur Enregistrer.

Pour en savoir plus, consultez Configurez les intervalles de maintenance et la récurrence (RRULE).

API REST

Pour les instances existantes, mettez à jour les intervalles de maintenance à l'aide du instances.patch Requête API. Cela remplace la configuration d'intervalle de maintenance existante, si à l'heure actuelle. Sinon, une nouvelle configuration est définie, comme indiqué dans 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 configuration des règles:
{
  "maintenancePolicy": {
    "maintenanceWindow": {
        "recurringTimeWindow": {
          "window": {
              "startTime": "START_TIME",
              "endTime": "END_TIME"
          },
          "recurrence": "MAINTENANCE_RECURRENCE"
        }
    },
  }
}

Pour en savoir plus, consultez Configurez les intervalles de maintenance et la récurrence (RRULE).

L'exemple suivant met à jour la configuration de la stratégie de maintenance du avec un intervalle de maintenance de quatre heures entre 11h et 15h (UTC) sur 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"
    }
  },
}
}

gcloud

Vous pouvez mettre à jour l'intervalle de maintenance d'une instance à l'aide de la commande gcloud beta data-fusion instances update.

Les paramètres suivants doivent être définis pour un intervalle de maintenance:

  • --maintenance-window-start définit l'heure de début de la fenêtre.
  • --maintenance-window-end définit l'heure de fin de la période.
  • --maintenance-window-recurrence définit une règle RRULE pour la fonction la récurrence de l'intervalle de maintenance.
gcloud beta data-fusion instances update INSTANCE_NAME \
    --project=PROJECT_NAME \
    --location=LOCATION \
    --maintenance-window-start=START_TIME \
    --maintenance-window-end=END_TIME \
    --maintenance-window-recurrence=MAINTENANCE_RECURRENCE

Remplacez les éléments suivants :

  • INSTANCE_NAME : nom de l'instance.
  • PROJECT_NAME : nom du projet.
  • LOCATION: nom de la région de l'instance.
  • START_TIME: heure de début de la fenêtre dans le format de saisie de date/heure. Seule l'heure spécifiée est utilisée, la date est ignorée.
  • END_TIME: heure de fin de la fenêtre dans le format de saisie de date/heure. Seule l'heure spécifiée est utilisée, la date est ignorée. La La date et l'heure spécifiées doivent être postérieures à l'heure de début.
  • MAINTENANCE_RECURRENCE: RRULE pour la la récurrence de l'intervalle de maintenance. Cloud Data Fusion n'accepte dans 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 Il s'agit de la valeur récurrence de la fenêtre les jours sélectionnés, à compter du --maintenance-window-start fois et pour la durée spécifiée.

La commande suivante met à jour l'instance example-instance avec une durée de intervalle de maintenance entre 12h et 18h (UTC), le samedi et le dimanche tous les jours semaine.

gcloud beta data-fusion instances update example-instance \
    --project='example-project' \
    --location='us-east1' \
    --maintenance-window-start='2024-01-01T12:00:00Z' \
    --maintenance-window-end='2024-01-01T18:00:00Z' \
    --maintenance-window-recurrence='FREQ=WEEKLY;BYDAY=SA,SU'

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

Lorsque vous configurez les heures de début et de fin de l'intervalle de maintenance, la date composants des codes temporels fournis sont ignorés. Seuls l'heure de la journée et 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 l'UTC ou le décalage de fuseau horaire lorsque vous planifiez des intervalles de maintenance à l'aide de l'API REST ou de gcloud CLI.

Lorsque vous configurez la récurrence, n'oubliez pas que RRULE suit les jours UTC, donc si votre fuseau horaire diffère. Par exemple, si votre fuseau horaire est PDT (UTC-7) et si vous souhaitez qu'un intervalle de maintenance démarre le mercredi à 21h votre fuseau horaire (qui correspond à 4h UTC les jeudis), 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 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 à l'intervalle de maintenance. puis cliquez sur Modifier.

  4. Pour supprimer l'intervalle de maintenance de l'instance, effacez le Activer l'intervalle de maintenance.

  5. Cliquez sur Enregistrer.

API REST

Pour supprimer l'intervalle de maintenance d'une instance, transmettez une valeur 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": {}
}

gcloud

Pour supprimer l'intervalle de maintenance d'une instance, utilisez gcloud beta data-fusion instances update avec l'option --clear-maintenance-window.

gcloud beta data-fusion instances update INSTANCE_NAME \
    --project=PROJECT_NAME \
    --location=LOCATION \
    --clear-maintenance-window

Remplacez les éléments suivants :

  • INSTANCE_NAME : nom de l'instance.
  • PROJECT_NAME : nom du projet.
  • LOCATION: nom de la région de l'instance.

Étape suivante