Criando a Página de Verificação de Integridade Personalizada de um Balanceador de Carga
Desenvolva uma página de verificação de integridade personalizada para um balanceador de carga.
Em muitos cenários, talvez você queira expor sua própria página de verificação de integridade personalizada para fazer uma verificação mais completa. Um exemplo de cenário é usar o aplicativo flask, como no exemplo a seguir, em vez de depender do seu aplicativo existente.https://pypi.org/project/py-healthcheck/
import tornado.web
from healthcheck import TornadoHandler, HealthCheck, EnvironmentDump
# add your own check function to the healthcheck
def redis_available():
client = _redis_client()
info = client.info()
return True, "Redis Test Pass"
health = HealthCheck(checkers=[redis_available])
app = tornado.web.Application([
("/healthcheck", TornadoHandler, dict(checker=health)),
])
No exemplo anterior, a página de teste está fazendo mais do que apenas garantir que o aplicativo HTTP esteja fazendo listening. Esse exemplo verifica se há um cliente
redis
e aguarda uma resposta para garantir que o aplicativo completo esteja íntegro antes de retornar um código de status 200
. Alguns outros exemplos de comando seriam verificar o espaço em disco ou a disponibilidade de uma dependência upstream. Na configuração da verificação de integridade, especifique as seguintes informações:-
/healthcheck
como seu caminho -
flask default 5000
como porta -
200
como código de status