Ajuster les valeurs de délai avant expiration des tâches

Si les tâches dans Google Distributed Cloud expirent et que vous pensez que le comportement n'est pas dû à un problème sous-jacent de votre installation, vous pouvez augmenter l'intervalle d'expiration du délai. Ce document explique comment ajuster les intervalles d'expiration pour les jobs machine et les jobs par lot à l'aide d'annotations dans la spécification de configuration.

Si vous avez besoin d'aide supplémentaire, contactez l'assistance Cloud Customer Care.

Types de tâches et erreurs

Il existe deux types de commandes et de routines Google Distributed Cloud: les tâches de machine et les tâches par lot. De nombreux éléments peuvent affecter le temps nécessaire à l'exécution d'une tâche, tels que la configuration matérielle, réseau et de cluster. Google Distributed Cloud dispose de délais avant expiration par défaut destinés à s'adapter aux installations types.

Voici des exemples de messages d'erreur liés au délai d'expiration des tâches:

  • Un message d'erreur lié au délai avant expiration du job de machine (encapsulé pour plus de clarté) issu d'un journal de pré-vérification, tel que 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
    
  • Le résultat de kubectl logs pour un pod défaillant peut afficher un message DeadlineExceeded semblable (encapsulé):

    cluster-cluster1
    172.18.0.4-machine-preflf3a32c8a2f7a2449545c7e8ff954c961-652st  ●  0/1
    0 DeadlineExceeded  192.168.122.180  bmctl-control-plane  7m12
    

Ajuster l'intervalle d'expiration du job de machine

Une tâche de machine est une routine qui ne s'exécute que sur une seule machine, comme une vérification préliminaire qui est limitée à une seule machine. Les jobs de machine Google Distributed Cloud ont un délai avant expiration par défaut de 900 secondes, soit 15 minutes. Vous pouvez ajuster l'intervalle d'expiration du job de machine à l'aide de l'annotation baremetal.cluster.gke.io/machine-job-deadline-seconds dans le fichier de configuration du cluster.

L'exemple suivant définit l'intervalle d'expiration du job de machine sur 1 800 secondes, soit 30 minutes:

   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:
   ...

La valeur de l'intervalle d'expiration est appliquée lorsque vous créez des clusters avec bmctl create cluster ou lorsque vous mettez à niveau des clusters existants avec bmctl upgrade cluster. Le nouvel intervalle est utilisé pour toutes les tâches de machine unique, y compris bmctl check preflight et bmctl check -c CLUSTER_NAME.

Ajuster l'intervalle d'expiration du job par lot

Une tâche par lot est une routine exécutée sur plusieurs machines, telle qu'une vérification préliminaire du réseau. Le délai avant expiration par défaut pour les tâches par lot Google Distributed Cloud dépend du nombre de machines sur le réseau. Le délai avant expiration par défaut est de 900 secondes, plus 20 secondes supplémentaires pour chaque machine.

Par exemple, si votre job par lot s'exécute sur 60 machines, l'intervalle avant expiration par défaut est de 2 100 secondes (900 + (20 * 60) = 2100), soit 35 minutes.

Vous pouvez ajuster l'intervalle d'expiration du job par lot à l'aide de l'annotation baremetal.cluster.gke.io/batch-job-deadline-seconds dans le fichier de configuration du cluster.

L'exemple suivant définit l'intervalle d'expiration du job par lot sur 10 800 secondes, soit 3 heures:

   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:
   ...

La valeur de l'intervalle d'expiration est appliquée lorsque vous créez des clusters avec bmctl create cluster ou lorsque vous mettez à niveau des clusters existants avec bmctl upgrade cluster.

Étapes suivantes

Si vous avez besoin d'une aide supplémentaire, contactez Cloud Customer Care.