Se i job in Google Distributed Cloud vanno in timeout e ritieni che il comportamento non sia dovuto a un problema sottostante con l'installazione, puoi aumentare l'intervallo di timeout. Questo documento descrive come regolare gli intervalli di timeout per i job di machine learning e i job batch utilizzando le annotazioni nella specifica di configurazione.
Tipi di prestazioni ed errori
Esistono due tipi di comandi e routine di Google Distributed Cloud: job delle macchine e job batch. Molti fattori possono influire sul tempo necessario per il completamento di un job, ad esempio la configurazione hardware, la configurazione di rete e la configurazione del cluster. Google Distributed Cloud ha timeout predefiniti che hanno lo scopo di adattarsi alle installazioni tipiche.
Di seguito sono riportati alcuni esempi di messaggi di errore di timeout del job:
Un messaggio di errore di timeout del job della macchina (con wrapping per chiarezza) da un log di controllo preliminare come
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
L'output di
kubectl logs
per un pod non riuscito potrebbe mostrare un messaggioDeadlineExceeded
simile (con wrapping):cluster-cluster1 172.18.0.4-machine-preflf3a32c8a2f7a2449545c7e8ff954c961-652st ● 0/1 0 DeadlineExceeded 192.168.122.180 bmctl-control-plane 7m12
Modificare l'intervallo di timeout del job della macchina
Un job macchina è una routine che viene eseguita su una sola macchina, ad esempio un controllo preliminare
limitato a una singola macchina. I job macchina di Google Distributed Cloud hanno
un timeout predefinito di 900 secondi, ovvero 15 minuti. Puoi regolare l'intervallo di timeout del job della macchina con l'annotazione baremetal.cluster.gke.io/machine-job-deadline-seconds
nel file di configurazione del cluster.
L'esempio seguente imposta l'intervallo di timeout del job della macchina su 1800 secondi, ovvero 30 minuti:
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:
...
Il valore dell'intervallo di timeout viene applicato quando crei nuovi cluster con
bmctl create cluster
o quando esegui l'upgrade dei cluster esistenti con bmctl upgrade
cluster
. Il nuovo intervallo viene utilizzato per tutti i job su una singola macchina, inclusi bmctl check preflight
, bmctl check -c CLUSTER_NAME
e altri.
Modifica l'intervallo di timeout del job batch
Un job batch è una routine che viene eseguita su più macchine, ad esempio un controllo prevolo di rete. L'intervallo di timeout predefinito per i job batch di Google Distributed Cloud dipende dal numero di macchine nella rete. L'intervallo di timeout predefinito è di 900 secondi, più 20 secondi aggiuntivi per ogni macchina.
Ad esempio, se il job batch viene eseguito su 60 macchine, l'intervallo di timeout predefinito è di 2100 secondi (900 + (20 * 60) = 2100) o 35 minuti.
Puoi modificare l'intervallo di timeout del job batch con l'annotazione
baremetal.cluster.gke.io/batch-job-deadline-seconds
nel file di configurazione
del cluster.
L'esempio seguente imposta l'intervallo di timeout del job batch su 10.800 secondi, ovvero 3 ore:
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:
...
Il valore dell'intervallo di timeout viene applicato quando crei nuovi cluster con
bmctl create cluster
o quando esegui l'upgrade dei cluster esistenti con bmctl upgrade
cluster
.
Passaggi successivi
Se hai bisogno di ulteriore assistenza, contatta l'assistenza clienti Google Cloud. Puoi anche consultare la sezione Richiedere assistenza per ulteriori informazioni sulle risorse di assistenza, tra cui:
- Requisiti per l'apertura di una richiesta di assistenza.
- Strumenti per aiutarti a risolvere i problemi, ad esempio la configurazione dell'ambiente, i log e le metriche.
- Componenti supportati.