Uma atualização de Deployment no GKE encerrou seu aplicativo de forma forçada antes que ele fechasse sua conexão com o banco de dados. Como você deve modificar o aplicativo para garantir um desligamento gracioso?
Escolha uma resposta
Toque em uma opção para verificar sua resposta.
Resposta correta: Atualize seu código para processar um sinal SIGTERM recebido para desconectar-se graciosamente do banco de dados..
Por que esta é a resposta
Quando um Pod é encerrado no GKE, o kubelet envia um sinal SIGTERM para os contêineres. O aplicativo deve ser projetado para capturar este sinal e iniciar um desligamento gracioso, como fechar conexões de banco de dados e liberar recursos. Se o aplicativo não processar o SIGTERM, ele será encerrado à força após o terminationGracePeriodSeconds expirar, o que pode levar a corrupção de dados ou conexões pendentes. Configurar um PodDisruptionBudget (PDB) impede interrupções voluntárias que levariam o número de Pods abaixo de um limite, mas não resolve o desligamento forçado de um Pod individual. Aumentar o terminationGracePeriodSeconds apenas estende o tempo antes do encerramento forçado, mas não garante um desligamento gracioso se o aplicativo não processar o SIGTERM. Um hook PreStop é executado antes do SIGTERM, mas o aplicativo ainda precisa lidar com o desligamento gracioso por conta própria.
Passe no seu exame — sem a busca interminável por respostas
Obtenha todas as perguntas e explicações verificadas para este exame em um só lugar e economize horas de preparação. Mais de 1.000 certificações · Mais de 20 idiomas · Grátis para começar.
Passe no seu exame mais rápido → Não é necessário cartão