Ajuste os valores de limite de tempo da tarefa

Se os trabalhos no Google Distributed Cloud excederem o tempo limite e considerar que o comportamento não se deve a um problema subjacente com a sua instalação, pode aumentar o intervalo de tempo limite. Este documento descreve como ajustar os intervalos de tempo limite para tarefas de processamento e tarefas em lote através de anotações na especificação de configuração.

Tipos de serviços e erros

Existem dois tipos de comandos e rotinas do Google Distributed Cloud: tarefas de máquina e tarefas em lote. Muitos fatores podem afetar o tempo necessário para a conclusão de uma tarefa, como a configuração do hardware, a configuração da rede e a configuração do cluster. O Google Distributed Cloud tem limites de tempo predefinidos destinados a acomodar instalações típicas.

Seguem-se exemplos de mensagens de erro de tempo limite de tarefas:

  • Uma mensagem de erro de tempo limite de tarefa da máquina (com quebra de linha para maior clareza) de um registo de pré-teste, como 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
    
  • O resultado de kubectl logs para um pod com falha pode apresentar uma mensagem semelhante DeadlineExceeded (com wrap):

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

Ajuste o intervalo de limite de tempo da tarefa da máquina

Uma tarefa de máquina é uma rotina que é executada apenas numa máquina, como uma verificação prévia ao voo que se limita a uma única máquina. As tarefas de máquinas do Google Distributed Cloud têm um limite de tempo predefinido de 900 segundos ou 15 minutos. Pode ajustar o intervalo de tempo limite da tarefa da máquina com a anotação baremetal.cluster.gke.io/machine-job-deadline-seconds no ficheiro de configuração do cluster.

O exemplo seguinte define o intervalo de limite de tempo da tarefa da máquina como 1800 segundos ou 30 minutos:

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

O valor do intervalo de tempo limite é aplicado quando cria novos clusters com bmctl create cluster ou quando atualiza clusters existentes com bmctl upgrade cluster. O novo intervalo é usado para todas as tarefas de máquina única, incluindo bmctl check preflight, bmctl check -c CLUSTER_NAME e muito mais.

Ajuste o intervalo de limite de tempo da tarefa em lote

Uma tarefa em lote é uma rotina executada em várias máquinas, como uma verificação prévia de rede. O intervalo de tempo limite predefinido para tarefas em lote do Google Distributed Cloud depende do número de máquinas na rede. O intervalo de tempo limite predefinido é de 900 segundos, mais 20 segundos adicionais para cada máquina.

Por exemplo, se o seu trabalho em lote for executado em 60 máquinas, o intervalo de limite de tempo predefinido é de 2100 segundos (900 + (20 * 60) = 2100) ou 35 minutos.

Pode ajustar o intervalo de tempo limite da tarefa em lote com a anotação baremetal.cluster.gke.io/batch-job-deadline-seconds no ficheiro de configuração do cluster.

O exemplo seguinte define o intervalo de tempo limite da tarefa em lote para 10 800 segundos ou 3 horas:

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

O valor do intervalo de tempo limite é aplicado quando cria novos clusters com bmctl create cluster ou quando atualiza clusters existentes com bmctl upgrade cluster.

O que se segue?

Se precisar de assistência adicional, contacte o apoio ao cliente do Google Cloud. Também pode consultar o artigo Receber apoio técnico para mais informações sobre recursos de apoio técnico, incluindo o seguinte:

  • Requisitos para abrir um registo de apoio técnico.
  • Ferramentas para ajudar a resolver problemas, como a configuração do ambiente, os registos e as métricas.
  • Componentes suportados.