Zeitlimits von Jobs anpassen

Wenn bei Jobs in GKE on Bare Metal eine Zeitüberschreitung auftritt und Sie der Meinung sind, dass das Verhalten nicht auf ein zugrunde liegendes Problem mit Ihrer Installation zurückzuführen ist, können Sie das Zeitlimitintervall erhöhen. In diesem Dokument wird beschrieben, wie Sie die Zeitlimitintervalle für Maschinenjobs und Batchjobs mithilfe von Annotationen in der Konfigurationsspezifikation anpassen.

Wenn Sie weitere Unterstützung benötigen, wenden Sie sich an den Cloud Customer Care.

Arten und Fehler von Dienstleistungen

Es gibt zwei Arten von GKE on Bare Metal-Befehlen und -Routinen: Maschinenjobs und Batchjobs. Die Dauer eines Jobs kann von vielen Faktoren beeinflusst werden, z. B. Hardwarekonfiguration, Netzwerkkonfiguration und Clusterkonfiguration. GKE on Bare Metal hat Standardzeitlimits, die für typische Installationen vorgesehen sind.

Im Folgenden finden Sie Beispiele für Fehlermeldungen wegen Zeitüberschreitungen bei Jobs:

  • Eine (zur Verdeutlichung dargestellte) Fehlermeldung für das Zeitlimit eines Maschinenjobs aus einem Preflight-Log wie 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
    
  • Die Ausgabe von kubectl logs für einen fehlerhaften Pod kann eine ähnliche Nachricht vom Typ DeadlineExceeded (umschlossen) enthalten:

    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. GKE on Bare Metal-Maschinenjobs haben ein Standardzeitlimit von 900 Sekunden oder 15 Minuten. Sie können das Zeitlimit des Maschinenjobs mit der Annotation baremetal.cluster.gke.io/machine-job-deadline-seconds in der Clusterkonfigurationsdatei anpassen.

Im folgenden Beispiel wird das Zeitlimitintervall für 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 upgraden. Das neue Intervall wird für alle Jobs auf einer einzelnen Maschine verwendet, einschließlich bmctl check preflight, bmctl check -c CLUSTER_NAME und mehr.

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 Batchjobs in GKE on Bare Metal hängt von der Anzahl der Maschinen im Netzwerk ab. Das standardmäßige Zeitlimitintervall beträgt 900 Sekunden plus weitere 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) = 2100) oder 35 Minuten.

Sie können das Zeitlimitintervall für Batchjobs mit der Annotation baremetal.cluster.gke.io/batch-job-deadline-seconds in der Clusterkonfigurationsdatei anpassen.

Im folgenden Beispiel wird das Zeitlimitintervall für Batchjobs 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 upgraden.

Nächste Schritte

Wenn Sie weitere Unterstützung benötigen, wenden Sie sich an den Cloud Customer Care.