Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Auf dieser Seite wird erläutert, wie Sie Wartungsfenster für Ihre Umgebungen definieren.
Wartungsfenster
Ein Wartungsfenster ist ein Zeitraum, in dem Sie Cloud Composer zum Ausführen von Wartungsvorgängen. Zum Beispiel haben Sie können Sie sicherstellen, dass Ihre kritischen Aufgabenausführungen nicht durch Angabe von Wartungsfenstern außerhalb der DAG-Zeitplanzeiten.
Mit Wartungsfenstern haben Sie die Kontrolle über die Zeiträume, in denen Wartung Ihrer Umgebung:
Wenn Sie benutzerdefinierte Wartungsfenster für Ihre Umgebung definieren, Während dieser definierten Zeiträume führt Cloud Composer eine Wartung aus.
Wenn Sie keine benutzerdefinierten Wartungsfenster für Ihre Umgebung oder leer ist, führt Cloud Composer eine Wartung aus während der standardmäßigen Wartungsfenster.
Was passiert während Wartungsfenstern?
Wenn Sie Wartungsfenster festlegen, geben Sie mindestens 12 Stunden Zeit in eine Woche für Wartungsvorgänge:
Ihre Umgebung bleibt während der Wartungsfenster verfügbar. Einige Komponenten Ihrer Umgebung sind während der Wartung möglicherweise vorübergehend nicht verfügbar dass der Geschäftsbetrieb im Gange ist.
Diese 12 Stunden sind erforderlich, damit Cloud Composer genügend Zeit hat. um alle Wartungsvorgänge zu planen und durchzuführen. Das bedeutet nicht, dass Wartungsarbeiten dauern volle 12 Stunden oder finden sogar wöchentlich statt.
Sie können Ihre DAGs während Wartungsfenstern weiterhin ausführen, dass einige Aufgaben unterbrochen und wiederholt werden können. Wenn Sie DAGs ausführen während der Wartungsfenster müssen Sie die Wiederholung von Aufgaben aktivieren. Sie können können Sie Aufgabenwiederholungen auf der Airflow-Konfigurations-, DAG- oder Aufgabenebene konfigurieren.
Wartungsvorgänge haben folgende Auswirkungen auf Ihre Umgebung:
Die Airflow-UI ist möglicherweise vorübergehend nicht verfügbar.
Cloud Composer führt möglicherweise eine automatisches Infrastrukturupgrade ob Upgrades verfügbar sind.
Das Ändern einiger Parameter Ihrer Umgebung ist möglicherweise nicht möglich. vorübergehend.
Einige Airflow-Aufgaben können unterbrochen werden. Nach dem Wartungsvorgang abgeschlossen ist, plant Airflow Wiederholungsversuche für diese Aufgaben (falls nicht konfiguriert) sonst).
Standardwartungsfenster
Die Standardwartungsfenster in Cloud Composer 3 sind wie folgt definiert: Weg:
- Alle Zeiten werden in der lokalen Zeitzone der Region angegeben, in der sich Ihre Umgebung befindet befindet, aber ohne Sommerzeit.
- Am Dienstag, Mittwoch, Donnerstag und Freitag sind die Wartungsfenster von 00:00:00 bis 02:00:00.
- Wartungsfenster am Samstag, Sonntag und Montag beziehen sich auf 00:00:00 bis 04:00:00.
Wartungsfenster einsetzen
Wartungsvorgänge können sich auf die Ausführung Ihrer DAGs und Airflow auswirken Daher empfehlen wir Ihnen, Folgendes zu tun:
Definieren Sie Wartungsfenster für Ihre Cloud Composer-Umgebungen.
Planen Sie DAG-Ausführungen außerhalb angegebener Wartungsfenster mithilfe von Parameter
start_date
undschedule_interval
in DAGs zu koordinieren.
Wartungsfenster für neue Umgebungen angeben
Sie können Wartungsfenster beim Erstellen einer Umgebung angeben. Weitere Informationen Weitere Informationen finden Sie unter Umgebungen erstellen.
Wartungsfenster für vorhandene Umgebungen angeben
Console
Um Wartungsfenster für eine vorhandene Umgebung zu definieren oder zu ändern, Aktualisieren Sie die Umgebung:
Rufen Sie in der Google Cloud Console die Seite Umgebungen auf.
Wählen Sie Ihre Umgebung aus.
Rufen Sie den Tab Umgebungskonfiguration auf.
Klicken Sie neben dem Eintrag Wartungsfenster auf Bearbeiten.
Klicken Sie im Kästchen Wartungsfenster das Kästchen Benutzerdefinierte Zeit für Wartungsfenster festlegen an.
Legen Sie Startzeit, Zeitzone, Tage und Länge fest, sodass die kombinierte Zeit für den angegebenen Zeitplan beträgt mindestens 12 Stunden in einem 7-tägigen rollierenden Zeitfenster. Zum Beispiel bietet ein Zeitraum von vier Stunden jeden Montag, Mittwoch und Freitag die erforderliche Zeitmenge.
Klicken Sie auf Speichern und warten Sie, bis die Umgebung aktualisiert wurde.
gcloud
Beim Aktualisieren einer Umgebung definieren die folgenden Argumente Wartungsfensterparameter:
--maintenance-window-start
legt den Beginn eines Wartungsfensters fest.--maintenance-window-end
legt das Ende eines Wartungsfensters fest.--maintenance-window-recurrence
legt Folgendes fest: wiederkehrendes Wartungsfenster.
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--maintenance-window-start 'DATETIME_START' \
--maintenance-window-end 'DATETIME_END' \
--maintenance-window-recurrence 'MAINTENANCE_RECURRENCE'
Ersetzen Sie:
ENVIRONMENT_NAME
durch den Namen der Umgebung.DATETIME_START
durch das Startdatum und die Uhrzeit im Eingabeformat Datum/Uhrzeit. Es wird nur die angegebene Uhrzeit verwendet. Das angegebene Datum wird ignoriert.DATETIME_END
durch das Enddatum und die Uhrzeit im Eingabeformat Datum/Uhrzeit. Es wird nur die angegebene Uhrzeit verwendet. Das angegebene Datum wird ignoriert. Das angegebene Datum und die angegebene Uhrzeit müssen nach dem Startdatum liegen.MAINTENANCE_RECURRENCE
mit einer RFC 5545 RRULE für Wiederholungsversuche von Wartungsfenstern. Cloud Composer unterstützt zwei Formate:Das Format
FREQ=DAILY
gibt eine tägliche Wiederholung an.Das Format
FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA
gibt eine Wiederholung an ausgewählten Wochentagen an.
Im folgenden Beispiel ist ein sechsstündiges Wartungsfenster zwischen 01:00 und Mittwoch, Samstag und Sonntag um 07:00 Uhr (UTC) 1. Januar 2023 wird ignoriert.
gcloud composer environments update example-environment \
--location us-central1 \
--maintenance-window-start '2023-01-01T01:00:00Z' \
--maintenance-window-end '2023-01-01T07:00:00Z' \
--maintenance-window-recurrence 'FREQ=WEEKLY;BYDAY=SU,WE,SA'
API
Erstellen Sie eine API-Anfrage
environments.patch
.In dieser Anfrage:
Geben Sie im
updateMask
-Parameter dieconfig.maintenanceWindow
-Maske an.Geben Sie im Anfragetext die Parameter für Wartungsfenster an.
{
"config": {
"maintenanceWindow": {
"startTime": "DATETIME_START",
"endTime": "DATETIME_END",
"recurrence": "MAINTENANCE_RECURRENCE"
}
}
}
Ersetzen Sie:
DATETIME_START
durch das Startdatum und die Uhrzeit im Eingabeformat Datum/Uhrzeit. Es wird nur die angegebene Uhrzeit verwendet. Das angegebene Datum wird ignoriert.DATETIME_END
durch das Enddatum und die Uhrzeit im Eingabeformat Datum/Uhrzeit. Es wird nur die angegebene Uhrzeit verwendet. Das angegebene Datum wird ignoriert. Das angegebene Datum und die angegebene Uhrzeit müssen nach dem Startdatum liegen.MAINTENANCE_RECURRENCE
mit einer RFC 5545 RRULE für Wiederholungsversuche von Wartungsfenstern. Cloud Composer unterstützt zwei Formate:- Das Format
FREQ=DAILY
gibt eine tägliche Wiederholung an. - Das Format
FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA
gibt eine Wiederholung an ausgewählten Wochentagen an.
- Das Format
Im folgenden Beispiel ist ein sechsstündiges Wartungsfenster zwischen 01:00 und Mittwoch, Samstag und Sonntag um 07:00 Uhr (UTC) 1. Januar 2023 wird ignoriert.
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.maintenanceWindow
{
"config": {
"maintenanceWindow": {
"startTime": "2023-01-01T01:00:00Z",
"endTime": "2023-01-01T07:00:00Z",
"recurrence": "FREQ=WEEKLY;BYDAY=SU,WE,SA"
}
}
}
Terraform
Der Block maintenance_window
gibt die Wartungsfenster für Ihre
Umgebung:
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
maintenance_window {
start_time = "DATETIME_START"
end_time = "DATETIME_END"
recurrence = "MAINTENANCE_RECURRENCE"
}
}
}
Ersetzen Sie:
ENVIRONMENT_NAME
durch den Namen der Umgebung.LOCATION
durch die Region, in der sich die Umgebung befindet.DATETIME_START
durch das Startdatum und die Uhrzeit im Eingabeformat Datum/Uhrzeit. Es wird nur die angegebene Uhrzeit verwendet. Das angegebene Datum wird ignoriert.DATETIME_END
durch das Enddatum und die Uhrzeit im Eingabeformat Datum/Uhrzeit. Es wird nur die angegebene Uhrzeit verwendet. Das angegebene Datum wird ignoriert. Das angegebene Datum und die angegebene Uhrzeit müssen nach dem Startdatum liegen.MAINTENANCE_RECURRENCE
mit einer RFC 5545 RRULE für Wiederholungsversuche von Wartungsfenstern. Cloud Composer unterstützt zwei Formate:- Das Format
FREQ=DAILY
gibt eine tägliche Wiederholung an. - Das Format
FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA
gibt eine Wiederholung an ausgewählten Wochentagen an.
- Das Format
Im folgenden Beispiel ist ein sechsstündiges Wartungsfenster zwischen 01:00 und Mittwoch, Samstag und Sonntag um 07:00 Uhr (UTC) 1. Januar 2023 wird ignoriert.
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
maintenance_window {
start_time = "2023-01-01T01:00:00Z"
end_time = "2023-01-01T07:00:00Z"
recurrence = "FREQ=WEEKLY;BYDAY=SU,WE,SA"
}
}
}