Nutzen Sie beim Erstellen von Clustern die Dataproc-Funktion zum planmäßigen Löschen von Clustern, um Google Cloud-Gebühren für einen inaktiven Cluster zu vermeiden. Bei Verwendung dieser Funktion kann ein Cluster wie folgt gelöscht werden:
- Nach einem bestimmten Zeitraum, in dem der Cluster inaktiv war
- Zu einem bestimmten zukünftigen Zeitpunkt
- Nach einem bestimmten Zeitraum, der mit dem Senden der Anfrage zur Clustererstellung beginnt
Berechnung der Inaktivitätsdauer von Clustern
Die dataproc:dataproc.cluster-ttl.consider-yarn-activity
-Clustereigenschaft wirkt sich auf die Berechnung der Cluster-Ruhezeit aus:
- Dieses Attribut ist standardmäßig aktiviert (
true
). - Wenn diese Property aktiviert ist, müssen sowohl die YARN- als auch die Dataproc Jobs API-Aktivität inaktiv sein, damit die Berechnung der Inaktivitätszeit des Clusters gestartet und fortgesetzt wird.
- YARN-Aktivitäten umfassen ausstehende und laufende YARN-Anwendungen.
- Zu den Aktivitäten der Dataproc Jobs API gehören ausstehende und laufende Jobs, die an die Dataproc Jobs API gesendet wurden.
- Wenn diese Eigenschaft auf
false
festgelegt ist, muss die Aktivität der Dataproc Jobs API nur inaktiv sein, damit die Berechnung der Inaktivitätszeit des Clusters gestartet und fortgesetzt wird.
Planmäßiges Löschen von Clustern verwenden
gcloud-Befehl
Sie können einen Cluster mit dem Feature "Geplantes Löschen von Clustern" erstellen, indem Sie die folgenden Flags für das geplante Löschen an den Befehl gcloud dataproc clusters create übergeben.
Flag | Beschreibung | Feinste Granularität | Mindestwert | Maximalwert |
---|---|---|---|---|
--max-idle 1 | Der Zeitraum von dem Moment an, in dem der Cluster in den Ruhezustand wechselt, bis zu dem Moment, in dem der Löschvorgang des Clusters beginnt. Geben Sie die Dauer im Format IntegerUnit an, wobei die Einheit "s, m, h, d" (Sekunden, Minuten, Stunden, Tage) sein kann. Beispiele: "30m" oder "1d" (30 Minuten oder 1 Tag ab dem Zeitpunkt, zu dem der Cluster inaktiv wird) | 1 Sekunde | 5 Minuten | 14 Tage |
--expiration-time 2 | Die Zeit zum Starten des Löschvorgangs des Clusters im ISO 8601-Datetime-Format. Mit dem Zeitstempel-Generator können Sie Datum/Uhrzeit mühelos im richtigen Format generieren. "2017-08-22T13:31:48-08:00" gibt beispielsweise die Ablaufzeit 13:21:48 in der Zeitzone UTC -8:00 an. | 1 Sekunde | 10 Minuten ab der aktuellen Uhrzeit | 14 Tage ab der aktuellen Uhrzeit |
--max-age 2 | Der Zeitraum ab der Übergabe der Anfrage zur Erstellung des Clusters bis zu dem Moment, in dem der Löschvorgang des Clusters beginnt. Geben Sie die Dauer im Format IntegerUnit an, wobei die Einheit "s, m, h, d" (Sekunden, Minuten, Stunden, Tage) sein kann. Beispiele: "30m" (30 Minuten ab jetzt); "1d" (1 Tag ab jetzt) | 1 Sekunde | 10 Minuten | 14 Tage |
gcloud dataproc clusters create cluster-name \ --region=region \ --max-idle=duration \ --expiration-time=time \ ... other flags ...
Sie können einen Cluster aktualisieren, der mit der Funktion zum planmäßigen Löschen erstellt wurde, um Einstellungen für das planmäßige Löschen zu ändern oder zu entfernen. Übergeben Sie hierfür die folgenden Flags zum planmäßigen Löschen an den Befehl gcloud dataproc clusters update. Andere Flags zur Clusteraktualisierung können nicht mit den Flags zum planmäßigen Löschen kombiniert werden.
Flag | Beschreibung | Feinste Granularität | Mindestwert | Maximalwert |
---|---|---|---|---|
--max-idle 1 | Der Zeitraum von dem Moment an, in dem der Cluster in den Ruhezustand wechselt, bis zu dem Moment, in dem der Löschvorgang des Clusters beginnt. Geben Sie die Dauer im Format IntegerUnit an, wobei die Einheit "s, m, h, d" (Sekunden, Minuten, Stunden, Tage) sein kann. Beispiele: "30m" oder "1d" (30 Minuten oder 1 Tag ab dem Zeitpunkt, zu dem der Cluster inaktiv wird) | 1 Sekunde | 5 Minuten | 14 Tage |
--no-max-idle | Bricht das automatische Löschen des Clusters ab, wenn der Cluster für den im Flag "max-idle" festgelegten Zeitraum inaktiv war. | Nicht zutreffend | Nicht zutreffend | Nicht zutreffend |
--expiration-time 2 | Die Zeit zum Starten des Löschvorgangs des Clusters im ISO 8601-Datetime-Format. Mit dem Zeitstempel-Generator können Sie Datum/Uhrzeit mühelos im richtigen Format generieren. "2017-08-22T13:31:48-08:00" gibt beispielsweise die Ablaufzeit 13:21:48 in der Zeitzone UTC -8:00 an. | 1 Sekunde | 10 Minuten ab der aktuellen Uhrzeit. Der neue Zeitpunkt darf nicht vor dem zuvor festgelegten Zeitpunkt liegen. | 14 Tage ab der aktuellen Uhrzeit |
--max-age 2 | Der Zeitraum ab der Übergabe der Anfrage zur Aktualisierung des Clusters bis zu dem Moment, in dem der Löschvorgang des Clusters beginnt. Geben Sie die Dauer im Format IntegerUnit an, wobei die Einheit "s, m, h, d" (Sekunden, Minuten, Stunden, Tage) sein kann. Beispiele: "30m" (30 Minuten ab jetzt); "1d" (1 Tag ab jetzt) | 1 Sekunde | 10 Minuten. Die aktualisierte Zeit für das planmäßige Löschen (Aktualisierungszeit + neuer max-age-Zeitraum) darf nicht vor der zuvor festgelegten Löschzeit des Clusters liegen. | 14 Tage |
--no-max-age | Bricht das automatische Löschen des Clusters ab, wenn der Cluster das im Flag "max‑age" oder "expiration‑time" festgelegte maximale Alter erreicht hat. | Nicht zutreffend | Nicht zutreffend | Nicht zutreffend |
gcloud dataproc clusters update cluster-name \ --region=region \ --max-idle=duration \ --no-max-age \ ... other flags
REST API
Sie können einen Cluster mit der Funktion "Geplantes Löschen von Clustern" erstellen, indem Sie in der API-Anfrage cluster.create oder cluster.patch die folgenden ClusterLifeczyklusConfig-Felder festlegen.
Flag | Beschreibung | Feinste Granularität | Mindestwert | Maximalwert |
---|---|---|---|---|
idleDeleteTtl 1 |
Der Zeitraum von dem Moment an, in dem der Cluster in den Ruhezustand wechselt, bis zu dem Moment, in dem der Löschvorgang des Clusters beginnt. Geben Sie eine Dauer in Sekunden mit bis zu neun Nachkommastellen und einem 's' an letzter Stelle an. Beispiel: "3.5s". | 1 Sekunde | 5 Minuten nach dem Erstellen oder Aktualisieren des Clusters. Beim Aktualisieren eines Clusters muss der neue Wert größer als der zuvor festgelegte Wert sein. Senden Sie eine cluster.patch-Anfrage mit einem leeren Zeitraum, um einen zuvor festgelegten Wert von idleDeleteTtl außer Kraft zu setzen. |
14 Tage |
autoDeleteTime 2 |
Die Zeit, zu der der Löschvorgang des Clusters startet. Geben Sie einen Zeitstempel im Format RFC 3339 UTC "Zulu'" in Nanosekunden an. Beispiel: "2014-10-02T15:01:23.045123456Z". | 1 Sekunde | 10 Minuten ab der aktuellen Uhrzeit. Beim Aktualisieren eines Clusters muss der neue Zeitpunkt nach dem zuvor festgelegten Zeitpunkt liegen. | 14 Tage ab der aktuellen Uhrzeit |
autoDeleteTtl 2 |
Der Zeitraum ab dem Zeitpunkt der Übergabe des Requests zur Erstellung oder Aktualisierung des Clusters bis zu dem Moment, in dem der Löschvorgang des Clusters beginnt. Geben Sie eine Dauer in Sekunden mit bis zu neun Nachkommastellen und einem 's' an letzter Stelle an. Beispiel: "3.5s". | 1 Sekunde | 10 Minuten. Beim Aktualisieren eines Clusters muss die neue Zeit für das planmäßige Löschen (Aktualisierungszeit + neuer max-age-Zeitraum) nach der zuvor festgelegten Löschzeit des Clusters liegen. Senden Sie eine cluster.patch-Anfrage mit einem leeren Zeitraum, um einen zuvor festgelegten Wert von autoDeleteTtl außer Kraft zu setzen. |
14 Tage |
Console
- Öffnen Sie die Dataproc-Seite Cluster erstellen und wählen Sie dann das Fenster „Cluster anpassen“ aus. Scrollen Sie nach unten zum Abschnitt „Geplantes Löschen“ und wählen Sie die Optionen aus, die auf den Cluster angewendet werden sollen.
Einstellungen zum planmäßigen Löschen von Clustern aufrufen
gcloud-Befehl
Sie können den Befehl gcloud dataproc clusters list
verwenden, um zu bestätigen, dass für einen Cluster das geplante Löschen aktiviert ist.
gcloud dataproc clusters list \ --region=region
... NAME WORKER_COUNT ... SCHEDULED_DELETE cluster-id number ... enabled ...
Mit dem Befehl gcloud dataproc clusters describe
können Sie die LifecycleConfig
-Einstellungen des Clusters zum geplanten Löschen prüfen.
gcloud dataproc clusters describe cluster-name \ --region=region
... lifecycleConfig: autoDeleteTime: '2018-11-28T19:33:48.146Z' idleDeleteTtl: 1800s idleStartTime: '2018-11-28T18:33:48.146Z' ...
Die Werte autoDeleteTime
und idleDeleteTtl
sind die geplanten Konfigurationswerte zum Löschen, die zuvor vom Nutzer im Cluster festgelegt wurden.
Dataproc generiert den Wert idleStartTime
, die letzte Startzeit für die Inaktivität des Clusters. Dataproc löscht den Cluster, wenn der Cluster bei den Werten idleStartTime
+ idleDeleteTtl
inaktiv bleibt.
REST API
Sie können eine cluster.list-Anfrage senden, um zu bestätigen, dass die Funktion zum planmäßigen Löschen eines Clusters aktiviert ist.
Console
Sie können die Einstellungen zum planmäßigen Löschen des Clusters anzeigen, indem Sie in der Google Cloud Console auf der Dataproc-Seite Cluster den Clusternamen auswählen. Wählen Sie auf der Detailseite des Clusters den Tab KONFIGURATION aus. Scrollen Sie in der Liste der Clusterkonfigurationen nach unten, um die Einstellungen zum planmäßigen Löschen anzuzeigen.