INTEGRITY Документация

Типичные коды ошибок

Cloudflare Load Balancing API добавляет каждому пулу и конечной точке показатель глобального состояния. Он также дает представление о том, что видит наша сеть в более широком масштабе. Для определения состояния пулов и конечных точек Cloudflare использует систему кворума. Кворум формируется из PoP, отвечающих за выполнение запросов мониторинга состояния в регионе, и используется результат большинства.

При устранении сбоев используйте Cloudflare API для программного доступа к Cloudflare Load Balancing. Маршруты Health Monitor Events и Load Balancer Monitors отлично подходят для просмотра журналов событий балансировки нагрузки и перенастройки мониторов Cloudflare.

С помощью команды Cloudflare API List Health Monitor Events можно получить данные о работоспособности ваших конечных точек в разбивке по дата-центрам:

GET user/load_balancing_analytics/events

Если запрос монитора работоспособности завершается сбоем, в разбивке будет указана причина.

Ниже перечислены наиболее распространённые причины неполадок и способы их устранения.


Не удалось установить TCP-соединение

Причина

Запросам нашего монитора проверки работоспособности не удалось установить TCP-соединение с вашей конечной точкой.

Решение

Обычно это происходит из-за сбоя сети между Cloudflare и вашей конечной точкой и (или) отказа брандмауэра разрешить наше соединение. Убедитесь, что настройки сети и брандмауэра не блокируют трафик балансировки нагрузки.


HTTP timeout occurred

Причина

Конечная точка не вернула HTTP-ответ в течение заданного времени ожидания. Это происходит, если для времени ожидания задано слишком маленькое значение, например 1 или 2 секунды.

Решение

Рекомендуем увеличить время ожидания HTTP-ответа, чтобы дать конечной точке время на ответ.


Ошибка несоответствия кода ответа

Причина

Cloudflare получает код статуса HTTP, который не соответствует значениям, заданным в expected_codes свойство конфигурации вашего монитора Cloudflare.

Решение

Коды ответов должны соответствовать expected_codes. Используйте команду API List Monitors, чтобы убедиться в правильности значений.

Альтернативная причина

Эта проблема также может возникать, если монитор настроен на использование HTTP-соединений, а ваша конечная точка перенаправляет на HTTPS. В этом случае код ответа часто будет 301, 302 или 303.

Решение

Либо измените конфигурацию монитора Cloudflare, чтобы использовать HTTPS, либо задайте значение follow_redirect к true чтобы мы могли определить правильный код состояния.


Ошибка несоответствия тела ответа

Причина

Тело ответа, возвращаемое конечной точкой, не содержит значения (без учёта регистра) expected_body настроенный в вашем мониторе.

Обратите внимание, что считываются только первые 10 КБ ответа. Если ответ окажется больше и expected_body не будет обнаружен в этих первых 10 КБ, запрос монитора проверки работоспособности завершится ошибкой.

Решение

Убедитесь, что expected_body находится в первых 10 КБ тела ответа.


Ошибка недоверенного сертификата TLS

Причина

Сертификат не подтвержден публичным удостоверяющим центром (CA).

Решение

Если вы используете самоподписанный сертификат, рекомендуем либо перейти на сертификат от доверенного публичного удостоверяющего центра, либо задать allow_insecure свойство вашего монитора в значение true.


Ошибка несоответствия имени TLS

Причина

Наш монитор проверки работоспособности (клиент) не смог сопоставить имя в сертификате сервера с именем узла запроса.

Решение

Используйте команду List Monitors, чтобы убедиться, что header значение, заданное в мониторе Cloudflare, указано верно, и используйте команду Update Monitors, чтобы внести необходимые изменения.


Ошибка протокола TLS

Причина

Эта ошибка может возникать, если вы используете устаревшую версию TLS или ваша конечная точка не настроена для HTTPS.

Решение

Убедитесь, что ваш эндпоинт поддерживает TLS версии 1.0 или выше и настроен для работы по HTTPS.


Ошибка нераспознанного имени TLS

Причина

Сервер не распознал имя, предоставленное клиентом. Если задан заголовок Host, его значение используется как ServerName при начальном согласовании TLS. Если заголовок не задан, значение ServerName не передаётся, что может вызвать эту ошибку.

Решение

Задайте заголовок Host в объекте монитора.


Ошибка «нет маршрута до узла»

Причина

IP-адрес недоступен из нашей сети. Обычно причиной служат неполадки в сети интернет-провайдера или хостинг-провайдера (например, на уровне BGP), либо то, что такого IP-адреса не существует.

Решение

Убедитесь, что IP-адрес указан верно, и если это так, проверьте, нет ли проблем в сети интернет-провайдера или хостинг-провайдера.


Ошибка превышения квоты

Причина

Вы получите эту ошибку, если попытаетесь создать больше объектов (мониторов, пулов или конечных точек), чем предусмотрено вашим планом.

При использовании панели управления вы не сможете создавать дополнительные объекты.

Если вы используете Cloudflare API, вы получите сообщение об ошибке.

Решение


Тайм-аут TCP

Причина

Передача данных не была подтверждена, и повторная передача данных не удалась.

Решение

Убедитесь, что при установлении соединения (handshake) ваша конечная точка отправляет пакет SYN-ACK, и обратитесь в службу поддержки Cloudflare.


Ошибка TLS-рукопожатия

Причина

Указывает на то, что соединение браузера с веб-сервером не защищено.

Решение

Смените сеть Wi-Fi, подключитесь к проводной сети или убедитесь, что сетевое подключение стабильно.


Network Unreachable

Причина

Cloudflare не может подключиться к конечной точке из-за недоступности сети. Обычно это вызвано неполадками сети или неверным IP-адресом.

Решение

Проверьте либо IP-адрес, указанный для конечной точки в настройках Load Balancer Cloudflare, либо IP-адрес, возвращаемый DNS для имени хоста конечной точки.


HTTP Invalid Response

Причина

Обычно вызвано ошибкой HTTP 502 или Bad Gateway.

Решение

Убедитесь, что эндпоинт отвечает на запросы и что ни одно приложение не завершилось аварийно и не испытывает высокой нагрузки.


DNS Unknown Host

Причина

Имя хоста конечной точки не существует.

Решение

Убедитесь, что конечная точка разрешается в IP-адрес.


Connection Reset by Peer

Причина

При получении клиентом данных от конечной точки произошла сетевая ошибка.

Решение

Убедитесь, не сталкивается ли конечная точка с повышенной нагрузкой или ошибкой.


Ошибка конфигурации монитора

Причина

В настройках монитора произошла ошибка конфигурации, поэтому проверки для конечных точек пула не выполняются.

Решение

Проверьте конфигурацию монитора, чтобы убедиться, что она соответствует ожидаемому запросу к вашей конечной точке.


DNS Internal

Причина

Имя хоста конечной точки преобразуется во внутренний IP-адрес или адрес с включённым проксированием Cloudflare (оранжевое облако). Проверки для конечных точек пула не выполняются.

Решение

Cloudflare не допускает использования в качестве конечной точки имени хоста, которое проксируется через Cloudflare.


Балансировка нагрузки не включена

Причина

Балансировка нагрузки не включена для вашего аккаунта или зоны.

Решение

Клиентам с тарифом Enterprise следует обратиться в свою команду Cloudflare Account Team. Клиентам с тарифами Free, Pro и Business следует Включите Load Balancing.


Ошибка Validation failed

Причина

Вы получите ошибку, если попытаетесь задать значение заголовка Host при настройке конечной точки балансировщика нагрузки.

Решение

Теперь Cloudflare ограничивает настроенные заголовки Host для эндпоинтов в полностью определённые доменные имена (FQDN), являющиеся непосредственными поддоменами зоны, связанной с аккаунтом. Например, этот заголовок хоста будет относиться к той же зоне, что и сам балансировщик нагрузки, но пулы могут использоваться в нескольких балансировщиках нагрузки.


Объект, на который ссылаются другие объекты

Причина

Вы получите эту ошибку, если попытаетесь удалить пул, на который ссылается балансировщик нагрузки через регион geo steering регион.

Решение

Удалите пул из конфигурации geo steering балансировщика нагрузки. Если ваш балансировщик нагрузки больше не использует geo steering, вам нужно будет снова включить Geo Steering а затем удалите пул.


Другая ошибка

Причина

Если сбой невозможно отнести ни к одному из других типов сбоев, упомянутых выше.

Решение

Обратитесь в Cloudflare Support.