Wenn bei Jobs in Google Distributed Cloud eine Zeitüberschreitung auftritt und Sie der Meinung sind, dass die Zeitüberschreitung nicht auf ein zugrunde liegendes Problem bei Ihrer Installation zurückzuführen ist, können Sie das Zeitlimitintervall erhöhen. In diesem Dokument wird beschrieben, wie Sie die Zeitlimitintervalle für Maschinen- und Batchjobs mit Annotationen in der Konfigurationsspezifikation anpassen.
Wenn Sie weitere Unterstützung benötigen, wenden Sie sich an den Cloud Customer Care.Jobtypen und Fehler
Es gibt zwei Typen von Befehlen und Abläufen in Google Distributed Cloud: Maschinenjobs und Batchjobs. Die Länge der Ausführung eines Jobs kann von vielen Faktoren beeinflusst werden, z. B. der Hardwarekonfiguration, der Netzwerkkonfiguration und der Clusterkonfiguration. Google Distributed Cloud hat Standardzeitlimits, die darauf angelegt sind, den typischen Installationen zu entsprechen.
Im Folgenden finden Sie Beispiele für Fehlermeldungen zu Zeitlimits bei Jobs:
Fehlermeldung über Zeitlimit bei einem Maschinenjob (zur Klarstellung zusammengefasst) aus einem Preflight-Log, z. B.
bmctl-workspace/cluster1/logs/preflight-20210501-000426/172.18.0.4
:Pod:172.18.0.4-machine-preflf3a32c8a2f7a2449545c7e8ff954c961-652st Result:Failed Reason:DeadlineExceeded Time:Wed Feb 3 16:59:56 2021
In der Ausgabe von
kubectl logs
für einen fehlgeschlagenen Pod kann eine ähnlicheDeadlineExceeded
-Meldung (zusammengefasst) angezeigt werden:cluster-cluster1 172.18.0.4-machine-preflf3a32c8a2f7a2449545c7e8ff954c961-652st ● 0/1 0 DeadlineExceeded 192.168.122.180 bmctl-control-plane 7m12
Zeitlimitintervall für Maschinenjobs anpassen
Ein Maschinenjob ist eine Routine, die auf einer einzigen Maschine ausgeführt wird, z. B. eine Preflight-Prüfung, die auf eine einzelne Maschine beschränkt ist. Maschinenjobs in Google Distributed Cloud haben ein Standardzeitlimit von 900 Sekunden oder 15 Minuten. Sie können das Zeitlimitintervall für Maschinenjobs mit der Annotation baremetal.cluster.gke.io/machine-job-deadline-seconds
in der Konfigurationsdatei des Clusters anpassen.
Im folgenden Beispiel wird das Zeitlimitintervall des Maschinenjobs auf 1.800 Sekunden oder 30 Minuten festgelegt:
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
name: cluster1
namespace: cluster-cluster1
annotations:
baremetal.cluster.gke.io/machine-job-deadline-seconds: "1800"
spec:
...
Der Wert für das Zeitlimitintervall wird angewendet, wenn Sie neue Cluster mit bmctl create cluster
erstellen oder vorhandene Cluster mit bmctl upgrade
cluster
aktualisieren. Das neue Intervall wird für alle Jobs einer einzelnen Maschine verwendet, einschließlich bmctl check preflight
und bmctl check -c CLUSTER_NAME
.
Zeitlimitintervall für Batchjobs anpassen
Ein Batchjob ist eine Routine, die auf mehreren Maschinen ausgeführt wird, z. B. eine Netzwerk-Preflight-Prüfung. Das Standardzeitlimitintervall für Google Distributed Cloud-Batchjobs hängt von der Anzahl der Maschinen im Netzwerk ab. Das Standardzeitlimit beträgt 900 Sekunden plus zusätzliche 20 Sekunden für jede Maschine.
Wenn Ihr Batchjob beispielsweise auf 60 Maschinen ausgeführt wird, beträgt das Standardzeitlimitintervall 2.100 Sekunden (900 + (20 * 60) = 2.100) oder 35 Minuten.
Sie können das Zeitlimitintervall für Batchjobs mit der Annotation baremetal.cluster.gke.io/batch-job-deadline-seconds
in der Konfigurationsdatei des Clusters anpassen.
Im folgenden Beispiel wird das Zeitlimit für den Batchjob auf 10.800 Sekunden oder 3 Stunden festgelegt:
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
name: cluster1
namespace: cluster-cluster1
annotations:
baremetal.cluster.gke.io/batch-job-deadline-seconds: "10800"
spec:
...
Der Wert für das Zeitlimitintervall wird angewendet, wenn Sie neue Cluster mit bmctl create cluster
erstellen oder vorhandene Cluster mit bmctl upgrade
cluster
aktualisieren.