Согласно документации GCP LB, повторяются только тайм-ауты, и только в особых случаях.Ответы с кодом ошибки не повторяются.
Чтобы обойти это, вы можете создать проверку работоспособности HTTP для группы экземпляров (есть также проверки работоспособности https, tcp и http2).
Создание проверки работоспособности HTTP
$ HOST_HEADER=www.example.com
$ gcloud beta compute health-checks create http hc-http-port-80 \
--description="Simple HTTP port 80 health check" \
--check-interval=5s \
--timeout=5s \
--healthy-threshold=2 \
--unhealthy-threshold=2 \
--port=80 \
--host=${HOST_HEADER}
После создания вы можете связать его с вашим LB
$ cloud compute backend-services update [BACKEND_SERVICE_NAME] \
--region [REGION] \
--health-checks [HEALTH_CHECK_NAME]
Найдите идентификатор бэкэнд-сервиса Если вы не знаете название бэкэнд-сервиса, вы можете получить его с помощью этой команды
gcloud compute backend-services list \
--filter="loadBalancingScheme=EXTERNAL" \
--filter="protocol=HTTP"