Orquestração de Contêineres Question #019e3a4f
Qual é o objeto do Kubernetes usado para executar uma carga de trabalho recorrente?
Job
Batch
DaemonSet
CronJob
Official Explanation / Community Explanations
A resposta correta é CronJob. No Kubernetes, um CronJob é usado para executar cargas de trabalho recorrentes em um agendamento baseado em tempo, semelhante a um cron job em sistemas Unix-like. Ele cria Jobs em um cronograma repetitivo definido por uma expressão cron.
Como Funciona
Um objeto CronJob é definido com um agendamento (por exemplo, */5 * * * * para cada 5 minutos) e um template de job. O plano de controle do Kubernetes avalia o agendamento e cria um novo objeto Job cada vez que o agendamento é acionado. O Job então executa um ou mais Pods até a conclusão. CronJobs são ideais para tarefas periódicas como backups, geração de relatórios ou operações de limpeza.
Por que a Resposta Correta está Certa
- CronJob: Diretamente projetado para tarefas recorrentes. Ele utiliza o formato cron para agendamento e gerencia automaticamente a criação e o histórico de Jobs.
Por que as Respostas Incorretas estão Erradas
- Job: Um Job cria um ou mais Pods e garante que eles sejam executados até a conclusão. Ele é destinado a tarefas únicas ou em lote, não para execução recorrente. Para executar um Job repetidamente, você precisaria de um agendador externo ou de um CronJob.
- Batch: Este não é um objeto padrão do Kubernetes. O termo "batch" pode se referir a processamento em lote, mas o Kubernetes não possui um recurso nativo
Batch. Jobs e CronJobs são os objetos relacionados a lote. - DaemonSet: Garante que uma cópia de um Pod seja executada em todos (ou alguns) nós. É usado para processos daemon de longa duração, como coletores de log ou agentes de monitoramento, não para tarefas recorrentes agendadas.