[Документация Yandex Cloud](../../index.md) > [Yandex Cloud CDN](../index.md) > [Концепции](index.md) > Источники и их группы

# Источники и их группы

За контентом, который запрашивают клиенты, CDN-серверы обращаются к _источникам_. 

При создании ресурса для него указывается один источник или одна [группа источников](#groups). После создания в настройках ресурса можно заменить один источник на другой, а группу источников — на другую группу.

## Тип источника {#types}

Источником может быть:

* [Бакет](../../storage/concepts/bucket.md) из Yandex Object Storage, в том числе настроенный как [хостинг статического сайта](../../storage/concepts/hosting.md).
* [L7-балансировщик нагрузки](../../application-load-balancer/concepts/application-load-balancer.md) из Yandex Application Load Balancer. CDN-серверы будут обращаться к балансировщику по одному из его IP-адресов, который нужно выбрать в настройках источника.
* Ваш собственный сервер или другой ресурс, доступный по доменному имени. Например, если источник — сервер с доменным именем `files.example.com`, то за файлом `/static/common.css` CDN-серверы будут обращаться к серверу по адресу `files.example.com/static/common.css`.


### Примеры использования {#examples-types}

* [Миграция в Yandex Cloud CDN из стороннего CDN-провайдера](../tutorials/migrate-to-yc-cdn.md)
* [Публикация обновлений для игр с помощью Yandex Cloud CDN](../tutorials/prefetch.md)
* [Организация сине-зеленого и канареечного развертывания версий веб-сервиса](../tutorials/blue-green-canary-deployment.md)
* [Организация защищенного доступа к контенту в Cloud CDN](../tutorials/protected-access-to-content/index.md)


## Хостинг статического сайта в бакете-источнике {#bucket-website-hosting}

Через Cloud CDN вы можете опубликовать свой статический сайт, файлы которого размещены в бакете в Object Storage. 

Чтобы сайт отображался корректно, например при обращении по адресу `https://<доменное_имя>/` возвращал главную страницу сайта вместо списка объектов, бакет в Object Storage и источник в Cloud CDN нужно настроить следующим образом:

1. Создайте главную страницу сайта, например `index.html`, и [загрузите ее](../../storage/operations/objects/upload.md) в бакет.
1. [Настройте хостинг статического сайта](../../storage/operations/hosting/setup.md#hosting) в бакете. В настройках укажите главную страницу, загруженную на предыдущем шаге.
1. [Настройте источник](#instructions) в CDN-ресурсе или в группе источников: укажите бакет и включите его использование как хостинга статического сайта. После этого CDN-сервер будет обращаться к бакету по доменному имени `<имя_бакета>.website.yandexcloud.kz`.


### Примеры использования {#examples-bwh}

* [Организация защищенного доступа к контенту в Cloud CDN](../tutorials/protected-access-to-content/index.md)
* [Настройка хостинга статического сайта в бакете Yandex Object Storage с доступом через Yandex Cloud CDN](../tutorials/cdn-hosting/index.md)


## Время ответа от источника {#timeout}

{% note info %}

CDN-серверы не поддерживают протокол IPv6 и могут обращаться к источникам только по IPv4-адресам.

{% endnote %}

Источник должен отвечать на запрос CDN-сервера в течение 5 секунд. Если за это время ответа не поступило, CDN-сервер отправляет клиенту ответ с HTTP-кодом состояния `504 Gateway Timeout`.

Чтобы снизить нагрузку на источники со стороны CDN-серверов и снизить время ответа, вы можете включить [экранирование источников](origins-shielding.md) ресурса.


## Группы источников {#groups}

Чтобы распределять нагрузку между источниками с одним и тем же контентом, из них можно создать _группу_.

Источник в группе может быть основным или резервным. Запросы от CDN-серверов распределяются между основными источниками по кругу.

> Например, если в группе два основных источника, то первый запрос контента будет отправлен первому источнику, второй — второму, третий — снова первому и т. д.

Если основной источник ответил CDN-серверу HTTP-кодом состояния 5xx, запрос отправляется одному из резервных источников. Если в группе нет резервных источников или ответ вновь содержит код 5xx, CDN-сервер отправляет клиенту ответ с тем же кодом.

{% note tip %}

Если вы публикуете контент в двух или более бакетах, объедините их в группу бэкендов L7-балансировщика и используйте балансировщик как источник, как показано в сценарии [сине-зеленого и канареечного развертывания](../tutorials/blue-green-canary-deployment.md). Иначе вам понадобится поддержать в сервисе отправку запросов к CDN с разными значениями [заголовка `Host`](servers-to-origins-host.md), соответствующими разным бакетам.

{% endnote %}


### Примеры использования {#examples-g}

* [Организация сине-зеленого и канареечного развертывания версий веб-сервиса](../tutorials/blue-green-canary-deployment.md)
* [Интеграция L7-балансировщика с Cloud CDN и Object Storage](../tutorials/cdn-storage-integration/index.md)
* [Организация защищенного доступа к контенту в Cloud CDN с помощью Terraform](../tutorials/protected-access-to-content/terraform.md)


## Как настроить источники {#instructions}

С помощью инструкций:

* [Создание ресурса](../operations/resources/create-resource.md), при котором настраивается источник или группа источников.
* [Изменение основных настроек ресурса](../operations/resources/configure-basics.md), в том числе замена источника на другой источник или группы на другую группу.
* [Управление группами источников](../operations/index.md#origin-groups): создание, изменение, подключение к ресурсу и удаление.


### Примеры использования {#examples-ins}

* [Интеграция L7-балансировщика с Cloud CDN и Object Storage](../tutorials/cdn-storage-integration/index.md)