Как написать проверку работоспособности для graphql apis без http
У меня есть кластер K8s, в котором есть pod, содержащий Gjango + Graphql apis.
Мне нужно написать задание проверки здоровья, которое убедится, что мои apis работают и функционируют.
Я не хочу использовать запрос в стиле http для проверки здоровья. Скорее я хотел бы использовать Django. Пожалуйста, подскажите, как я могу это сделать?
У вас есть 2 варианта так называемых "Liveness Probes" в Kubernetes:
- Команда
- HTTP
См: Настройка зондов Liveness, Readiness и Startup Probes
Django и GraphQL основаны на HTTP, поэтому вам, вероятно, следует рассмотреть возможность использования HTTP-зонда. Если в вашем сервисе нет конкретной конечной точки healthcheck, вы можете определить образец (тот, который всегда должен работать) и использовать его в качестве healthcheck.
Если вы хотите использовать что-то другое, чем HTTP, ваш единственный вариант - создать некоторую команду, которая выходит|возвращает 0 при успехе, сигнализируя, что она здорова, и что-то другое (обычно 1) при неудаче, сигнализируя, что она нездорова.