Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
    • Cloud Interconnect
    • Cloud Backup
    • Cloud Registry
    • Yandex AI Studio
    • Compute Cloud
    • Object Storage
    • Managed Service for Kubernetes®
    • Yandex BareMetal
    • Smart Web Security
    • Security Deck
    • Managed Service for PostgreSQL
    • Managed Service for ClickHouse®
    • Monium
    • Cloud CDN
    • Network Load Balancer
    • Virtual Private Cloud
    • Cloud DNS
    • Application Load Balancer
    • Yandex Cloud Video
    • Stackland
    • Yandex Cloud Router
    • Yandex Managed Service for Trino
    • Managed Service for MySQL®
    • Managed Service for Valkey™
    • Managed Service for Apache Spark™
    • Yandex StoreDoc
    • Managed Service for OpenSearch
    • Managed Service for Apache Kafka®
    • Data Transfer
    • Yandex MPP Analytics Engine for PostgreSQL
    • Yandex Managed Service for Apache Airflow®
    • Data Processing
    • Yandex MetaData Hub
    • Managed Service for YDB
    • Managed Service for Sharded PostgreSQL
    • Managed Service for YTsaurus
    • Yandex WebSQL
    • DataLens
    • Yandex Search API
    • SpeechSense
    • SpeechKit
    • DataSphere
    • Vision OCR
    • Translate
    • VibeCraft
    • Yandex Cloud Detection and Response
    • Yandex Identity Hub
    • Key Management Service
    • Certificate Manager
    • Yandex Lockbox
    • Audit Trails
    • SmartCaptcha
    • Cloud Desktop
    • GOST Gateway
    • Yandex SIEM
    • SourceCraft Code Assistant
    • Container Registry
    • Managed Service for GitLab
    • SourceCraft
    • Managed Service for Prometheus®
    • Cloud Functions
    • API Gateway
    • Yandex Cloud Postbox
    • Message Queue
    • IoT Core
    • Data Streams
    • Serverless Containers
    • Cloud Notification Service
    • Yandex Query
    • Identity and Access Management
    • Yandex Cloud Console
    • Resource Manager
    • Yandex Cloud Billing
    • Yandex Cloud Quota Manager
    • Cloud Apps
  • Статус работы сервисов
  • Marketplace
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Yandex Cloud Trust
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Сделано на Gravity UI
Проект Яндекса
© 2026 ООО «Яндекс.Облако»
Yandex Cloud CDN
    • Обзор сервиса
    • Точки присутствия
    • Ресурс
    • Настройка Cloud CDN при недоступности источника
    • Источники и их группы
    • Перенаправление запросов
    • Кеширование контента
    • Защищенные токены
    • Политика доступа по IP-адресам
    • Политика доступа по странам
    • Выделенная IP-адресация
    • Локационные правила
    • Выгрузка логов
    • Метки
    • Квоты и лимиты
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Логи запросов
  • Аудитные логи Audit Trails
  • История изменений
  • Вопросы и ответы

В этой статье:

  • Как Cloud CDN работает при недоступности источника
  • Включите кеширование на ресурсе
  • Включите экранирование источников
  • Подготовьте резервный источник
  • Добавьте второй источник в группу
  • Разрешите выдачу устаревшего контента, если это допустимо
  • Выполните настройку до возникновения сбоя
  • Проверьте работу резервного источника
  1. Концепции
  2. Настройка Cloud CDN при недоступности источника

Настройка Yandex Cloud CDN при недоступности источника

Статья создана
Yandex Cloud
Обновлена 15 октября 2026 г.
Открыть в Markdown
  • Как Cloud CDN работает при недоступности источника
  • Включите кеширование на ресурсе
  • Включите экранирование источников
  • Подготовьте резервный источник
  • Добавьте второй источник в группу
  • Разрешите выдачу устаревшего контента, если это допустимо
  • Выполните настройку до возникновения сбоя
  • Проверьте работу резервного источника

Чтобы CDN-ресурс продолжал отдавать контент при недоступности основного источника, заранее включите кеширование, настройте экранирование источников и подключите резервный источник. Если приложение допускает использование старых версий файлов, дополнительно разрешите выдачу устаревшего контента из кеша.

Как Cloud CDN работает при недоступности источникаКак Cloud CDN работает при недоступности источника

Контент пользователям отдается CDN-серверами, расположенными в разных географических точках присутствия. Недоступность дата-центра с источником контента сама по себе не означает остановку раздачи через CDN.

Если в CDN-ресурсе настроен только один источник и он стал недоступен, результат зависит от состояния кеша:

Состояние файла

Что произойдет

Файл есть в кеше обслуживающего CDN-сервера, срок кеширования не истек.

Cloud CDN продолжит отдавать файл.

Файла нет в кеше.

Cloud CDN потребуется получить файл из источника или с экранирующего сервера, если экранирование включено.

Срок кеширования истек.

Cloud CDN потребуется обновить файл у источника.

Срок кеширования истек, разрешена выдача устаревшего контента.

Если выполнены условия опции stale, Cloud CDN сможет отдать сохраненную копию.

Кеширование файла отключено.

Для получения файла потребуется доступный источник при каждом запросе пользователя.

Если файла нет в кеше, а источник недоступен, пользователь получит ошибку. При тайм-ауте это может быть ошибка 504 Gateway Timeout, при других сбоях код может отличаться.

Примечание

Кеш каждой точки присутствия формируется отдельно. Наличие файла на одном CDN-сервере не гарантирует, что он есть на остальных. Подробнее — в разделе Кеширование контента.

Чтобы повысить отказоустойчивость ресурса:

  1. Включите кеширование на ресурсе.
  2. Включите экранирование источников.
  3. Подготовьте резервный источник.
  4. Добавьте второй источник в группу.
  5. Разрешите выдачу устаревшего контента, если это допустимо.
  6. Выполните настройку до возникновения сбоя.
  7. Проверьте работу резервного источника.

Включите кеширование на ресурсеВключите кеширование на ресурсе

  1. В консоли управления выберите каталог, в котором расположен ресурс, и перейдите в сервис Cloud CDN.
  2. Нажмите на имя нужного ресурса.
  3. Перейдите на вкладку Кеширование и нажмите Редактировать.
  4. В блоке CDN включите опцию Кеширование в CDN.
  5. Выберите тип настроек: Как у источника или Свои настройки. Задайте время жизни кеша.
  6. Нажмите Сохранить.

Подробные шаги приведены в инструкции по настройке кеширования.

Совет

Проверьте, что нужные файлы действительно кешируются. Для проверки используйте заголовок ответа Cache-Status от Cloud CDN: значение HIT означает, что файл был отдан из кеша.

На кеширование влияют настройки ресурса и заголовки ответов источника. Кеширование в браузере настраивается отдельно и не заменяет кеширование на CDN-серверах.

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

Включите экранирование источниковВключите экранирование источников

Экранирование добавляет промежуточный уровень кеша между CDN-серверами и источниками. Если файла нет в кеше обслуживающего CDN-сервера, запрос сначала поступает на экранирующий сервер. Если там есть подходящая кешированная копия, обращаться к источнику не потребуется.

Экранирующий сервер также объединяет повторяющиеся запросы к одному файлу. Это сокращает количество загрузок одинакового контента из источника и снижает нагрузку на него.

Экранирование может существенно повысить эффективность кеширования, особенно когда одни и те же файлы запрашивают пользователи через разные точки присутствия. Результат зависит от характера запросов и настроек кеша. Подробнее — в разделе Экранирование источников.

Чтобы включить экранирование:

  1. Откройте нужный ресурс в Cloud CDN.
  2. Перейдите на вкладку Экранирование источников.
  3. Нажмите Включить, выберите доступную локацию и подтвердите включение.
  4. Убедитесь, что статус изменился на Active.

Применение настроек может занять до 15 минут.

Важно

Экранирование оплачивается отдельно: в день включения списывается плата за полный месяц.

Подробнее — в инструкции по включению экранирования.

Экранирование дополняет резервирование источников. Если нужной копии нет ни в кеше CDN-сервера, ни на экранирующем сервере, для получения файла все равно потребуется доступный источник.

Подготовьте резервный источникПодготовьте резервный источник

Для получения файлов при недоступности основного источника нужен второй источник с копией контента.

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

Примечание

Дублирующий бакет в Object Storage не следует считать независимым резервом на случай отказа всего сервиса.

Перед подключением резервного источника проверьте, что:

  • Нужные файлы доступны по тем же путям, что и на основном источнике.
  • Копии файлов актуальны.
  • Источник доступен для Cloud CDN с учетом сетевых ограничений и прав доступа. Используйте актуальный список сетей Cloud CDN. Если включено экранирование, список сетей экранирующих серверов можно получить в технической поддержке.
  • Настройки протокола, TLS-сертификата для HTTPS и заголовка Host подходят обоим источникам.
  • Резервный источник выдержит нагрузку при отказе основного.

Совет

Для разных бакетов особенно важно проверить заголовок Host: значение, подходящее одному бакету, может не подходить другому. Возможные варианты организации такой схемы описаны в разделе Заголовок Host.

Добавьте второй источник в группуДобавьте второй источник в группу

В консоли управления на странице сервиса Cloud CDN на вкладке Группы источников создайте группу или измените существующую. Добавьте оба источника, включите их и выберите приоритеты.

Доступны следующие варианты:

Приоритеты

Работа с источниками

Основной и основной

Запросы к источникам распределяются по кругу (round-robin). Оба источника участвуют в обслуживании.

Основной и резервный

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

В режиме round-robin отдельные запросы распределяются между источниками. Один файл не загружается одновременно с двух источников. Подробнее — в разделе Источники и их группы.

Примечание

Для описанной схемы переключение предусмотрено при ошибках соединения, тайм-аутах и ответах с HTTP-кодами 500, 502, 503, 504. Ответы 403 и 404 не являются основанием для такого переключения. Например, отсутствие файла на основном источнике не означает, что Cloud CDN автоматически попробует найти его на резервном.

После настройки подключите группу к CDN-ресурсу.

Применение настроек на CDN-серверах может занимать до 15 минут. Дождитесь их распространения и проверьте работу резерва. При переключении время ответа может увеличиться из-за ожидания ответа от основного источника.

Разрешите выдачу устаревшего контента, если это допустимоРазрешите выдачу устаревшего контента, если это допустимо

Для некоторых типов контента старая версия файла предпочтительнее ошибки. В таком случае можно разрешить Cloud CDN отдавать сохраненную копию после истечения срока кеширования, если источник недоступен.

С помощью API это настраивается в параметре CDN-ресурса options.stale. Пример фрагмента настроек:

{
  "options": {
    "stale": {
      "enabled": true,
      "value": [
        "error",
        "timeout",
        "http_500",
        "http_502",
        "http_503",
        "http_504"
      ]
    }
  }
}

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

Для нового ресурса используйте метод REST API create для Resource или вызов gRPC API ResourceService/Create. Для существующего ресурса — метод REST API update для Resource или вызов gRPC API ResourceService/Update.

Пример изменения CDN-ресурса с помощью curl
export IAM_TOKEN=$(yc iam create-token)
curl \
  --request PATCH \
  --header "Authorization: Bearer $IAM_TOKEN" \
  --header "Content-Type: application/json" \
  --url 'https://cdn.api.cloud.yandex.net/cdn/v1/resources/<идентификатор_ресурса>' \
  --data '{
    "options": {
      "stale": {
        "enabled": true,
        "value": [
          "error",
          "timeout",
          "http_500",
          "http_502",
          "http_503",
          "http_504"
        ]
      }
    }
  }'

Информация про IAM-токен и идентификатор CDN-ресурса приведена на следующих страницах:

  • Получение информации о ресурсе
  • Аутентификация в API

Примечание

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

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

Выполните настройку до возникновения сбояВыполните настройку до возникновения сбоя

В случаях сбоев могут быть недоступны не только источники, но и операции управления Cloud CDN: просмотр ресурсов, изменение настроек, очистка и предзагрузка кеша.

Добавьте резервный источник заранее и дождитесь применения настроек. Тогда при сбое основного источника Cloud CDN сможет автоматически обращаться к резервному. Вам не придется менять настройки, если консоль управления или API будут недоступны.

Важно

Не очищайте кеш при недоступных источниках без необходимости. После очистки Cloud CDN потеряет сохраненные копии, а получить их заново может не получиться.

Проверьте работу резервного источникаПроверьте работу резервного источника

Проверку выполняйте на отдельном тестовом CDN-ресурсе. Его можно создать на основе рабочего ресурса с помощью копирования конфигурации. Копирование доступно внутри одного каталога. Для нового ресурса потребуется отдельное доменное имя и соответствующая ресурсная запись типа CNAME.

  1. Разместите одинаковые тестовые файлы на основном и резервном источниках.
  2. В тестовом ресурсе укажите резервный источник рабочего ресурса как единственный основной источник. Используйте отдельную группу источников, чтобы не изменять группу рабочего ресурса.
  3. Дождитесь применения настроек.
  4. Выполните через тестовый CDN-ресурс тот же запрос, что и через рабочий: сохраните путь к файлу, query-параметры, HTTP-метод и необходимые заголовки. Замените только доменное имя CDN-ресурса на тестовое. Перед проверкой убедитесь, что ответ не отдается из ранее заполненного кеша тестового ресурса или экранирующего сервера.
  5. Сравните HTTP-код, содержимое и значимые заголовки ответа с рабочим ресурсом.
  6. По логам резервного источника подтвердите, что запрос дошел до него.

Такая проверка подтверждает, что резервный источник доступен для Cloud CDN и способен отдавать нужный контент.

Чтобы дополнительно проверить автоматическое переключение, создайте отдельную группу с двумя тестовыми источниками и приоритетами «Основной» и «Резервный». Подключите ее к тестовому CDN-ресурсу и дождитесь применения настроек. На тестовом основном источнике сымитируйте одну из ошибок, при которых предусмотрено переключение, например ответ 503. Запросите файл, которого еще нет в кеше CDN-серверов и экранирующего сервера, и по логам тестового резервного источника подтвердите, что запрос дошел до него. После проверки восстановите работу тестового основного источника.

Полезные ссылкиПолезные ссылки

  • Рекомендации по отказоустойчивости в Yandex Cloud
  • Обзор сервиса Yandex Cloud CDN

Была ли статья полезна?

Предыдущая
Ресурс
Следующая
Источники и их группы
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Сделано на Gravity UI
Проект Яндекса
© 2026 ООО «Яндекс.Облако»