Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Cloud CDN
  • Начало работы
    • Все инструкции
    • Подключиться к провайдеру Cloud CDN
      • Создать ресурс
      • Изменить основные настройки ресурса
      • Получить информацию о ресурсе
      • Настроить кеширование ресурса
      • Настроить выгрузку логов
      • Предзагрузить файлы на CDN-серверы
      • Очистить кеш ресурса
      • Настроить заголовки запросов и ответов
      • Настроить CORS при ответах клиентам
      • Настроить HTTP-методы
      • Включить сжатие файлов
      • Включить сегментацию файлов
      • Включить экранирование источников
      • Настроить перенаправление запросов
      • Настроить доступ по защищенному токену
      • Управлять дополнительными настройками ресурса
      • Отключить ресурс
      • Управление метками ресурса
      • Удалить ресурс
      • Посмотреть статистику ресурса
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Решение проблем
  1. Пошаговые инструкции
  2. Ресурсы
  3. Создать ресурс

Создание ресурса

Статья создана
Yandex Cloud
Улучшена
Обновлена 21 апреля 2025 г.

Чтобы создать ресурс:

Консоль управления
CLI
Terraform
API
  1. В консоли управления выберите каталог, в котором нужно создать ресурс.

  2. Выберите сервис Cloud CDN.

  3. Если CDN-провайдер еще не активирован, нажмите кнопку Подключиться к провайдеру. Подключение произойдет автоматически.

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

  4. Нажмите кнопку Создать ресурс.

  5. В блоке Контент выберите Запрос контента Из одного источника или Из группы источников:

    • При запросе контента Из одного источника выберите Тип источника: Сервер, Бакет или L7-балансировщик. Укажите источник.
    • При запросе контента Из группы источников выберите группу источников или создайте новую:
      • Нажмите кнопку Создать.
      • Введите Название группы.
      • Настройте Источники:
        • Укажите Тип источника: Сервер, Бакет или L7-балансировщик.
        • Укажите источник.
        • Выберите Приоритет: Основной или Резервный.
      • Добавьте другие источники, если необходимо.
      • Нажмите кнопку Создать. В поле Группа источников вы увидите название созданной группы источников.

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

  6. При необходимости добавьте метки:

    1. Нажмите кнопку Добавить метку.
    2. Введите метку в формате ключ: значение.
    3. Нажмите Enter.
  7. В блоке Доменные имена для раздачи контента введите Доменное имя. Вы можете добавить более одного Доменного имени. Поддерживаются имена с символами не из ASCII, например, кириллическими, и Punycode. Первое имя считается основным.

    Важно

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

    В настройках вашего DNS-хостинга создайте для указанных доменных имен записи CNAME со значением, которое отображается внизу блока Доменные имена для раздачи контента. Подробнее см. в разделе Доменные имена для раздачи контента.

  8. В блоке Дополнительно:

    1. Выберите Протокол для источников.

    2. Выберите способ переадресации клиентов: Не использовать или С HTTPS на HTTP.

      Чтобы включить переадресацию клиентов с HTTP на HTTPS, создайте CDN-ресурс без переадресации и получите TLS-сертификат для доменного имени. Затем в настройках CDN-ресурса выберите переадресацию клиентов С HTTP на HTTPS.

    3. Включите или выключите Доступ к контенту.

    4. В поле Тип сертификата выберите одну из опций:

      • Не использовать — ресурс будет доступен только по протоколу HTTP.

      • Сертификат из Certificate Manager — выберите сертификат. Ресурс будет доступен по протоколам HTTP и HTTPS.

        Примечание

        Прекращена поддержка автоматического выпуска сертификатов от Let's encrypt® для CDN-ресурсов.

        Поддерживаются сертификаты из Yandex Certificate Manager. Вы можете выпустить новый сертификат Let's Encrypt® или загрузить собственный.

        Сертификат должен находиться в том же каталоге, в котором расположен ваш CDN-ресурс.

      Подробнее см. в разделе Настройка TLS-сертификатов для HTTPS-соединений между клиентами и CDN.

    5. Выберите значение Заголовок Host: Основное доменное имя, Как у клиента или выберите Свое значение и введите Значение заголовка. Подробнее см. в разделе Заголовок Host в запросах CDN-серверов к источникам.

    6. Чтобы включить перенаправление запросов на CDN-ресурсе:

      1. Включите опцию Перенаправление запросов.

      2. В поле Правило Rewrite задайте правило. Например: /(.*) /new-folder/$1.

        Правило Rewrite должно содержать две разделенные пробелом директивы: исходный путь, который требуется заменить, и измененный путь — то, на что меняется исходный путь.

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

      3. В поле Флаг задайте нужный флаг:

        • break — завершает обработку текущего набора директив.
        • last — завершает обработку текущего набора директив и начинает поиск нового CDN-сервера, соответствующего новому URI.
        • redirect — возвращает пользователю временный redirect с кодом 302. Флаг используется, если заменяющая строка не начинается с http://, https:// или $scheme.
        • permanent — возвращает пользователю постоянный redirect с кодом 301.
    7. Чтобы ограничить доступ к контенту ресурса с помощью защищенных токенов, включите опцию Доступ по защищённому токену:

      • Укажите Секретный ключ — произвольную строку длиной от 6 до 32 символов. Секретный ключ потребуется для генерации подписанных ссылок.

        Сохраненный секретный ключ вы всегда сможете посмотреть в консоли управления или с помощью команды CLI yc cdn resource list.

      • В поле Ограничение доступа по IP-адресу задайте ограничение на доступ к контенту по IP-адресу:

        • Только доверенные IP-адреса — доступ к файлам будет разрешен только с определенного IP-адреса получателя контента. IP-адрес задается вне CDN-ресурса и указывается в качестве параметра при формировании MD5-хэша для подписанной ссылки.
        • Без ограничений — доступ к файлам будет разрешен с любых IP-адресов.

      Подробнее см. в разделе Настройка доступа по защищенному токену.

    8. Чтобы ограничить доступ к контенту ресурса с помощью политики доступа по IP-адресам, включите опцию Доступ по IP-адресам:

      • Выберите тип политики доступа:

        • Запретить для всех, кроме — разрешающая политика. Доступ к контенту ресурса будет разрешен для любых IP-адресов, кроме адресов, заданных ниже.
        • Разрешить для всех, кроме — блокирующая политика. Доступ к контенту ресурса будет запрещен для любых IP-адресов, кроме адресов, заданных ниже.
      • В поле Список IP-адресов укажите список IP-адресов, исключенных из заданной выше политики доступа.

        IP-адреса должны быть указаны с префиксом подсети в нотации CIDR через запятую. Например: 192.168.3.2/32, 192.168.17.0/24.

  9. Нажмите кнопку Создать.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

  1. Если вы создаете первый ресурс, сначала подключитесь к провайдеру:

    yc cdn provider activate --type gcore
    
  2. Посмотрите описание команды CLI для создания ресурсов:

    yc cdn resource create --help
    
  3. Получите список групп источников в каталоге:

    yc cdn origin-group list --format yaml
    

    Результат:

    - id: "90209"
      folder_id: s0mefo1der7p********
      name: test-group-1
      use_next: true
      origins:
      - id: "561547"
        origin_group_id: "90209"
        source: www.example2.com
        enabled: true
        backup: true
      - id: "561546"
        origin_group_id: "90209"
        source: www.example1.com
        enabled: true
    - id: "90208"
      folder_id: b1g86q4m5ve********
      name: test-group
      use_next: true
      origins:
      - id: "561545"
        origin_group_id: "90208"
        source: www.a2.com
        enabled: true
        backup: true
      - id: "561544"
        origin_group_id: "90208"
        source: www.a1.com
        enabled: true
    
  4. Создайте ресурс:

    yc cdn resource create <доменное_имя_ресурса> \
      --origin-group-id <идентификатор_группы_источников> \
      --origin-protocol <протокол_для_источников>
    
    • Вместо группы источников --origin-group-id можно указать доменное имя источника, используя флаг --origin-custom-source.
    • Для --origin-protocol доступны значения HTTP, HTTPS и MATCH (как у клиента).

    Чтобы настроить TLS-сертификат для CDN-ресурса, используйте параметры:

    • --dont-use-ssl-cert — не использовать сертификат. Ресурс будет доступен только по протоколу HTTP.

    • --cert-manager-ssl-cert-id — идентификатор сертификата. Ресурс будет доступен по протоколам HTTP и HTTPS.

      Примечание

      Прекращена поддержка автоматического выпуска сертификатов от Let's encrypt® для CDN-ресурсов.

      Поддерживаются сертификаты из Yandex Certificate Manager. Вы можете выпустить новый сертификат Let's Encrypt® или загрузить собственный.

      Сертификат должен находиться в том же каталоге, в котором расположен ваш CDN-ресурс.

    Чтобы включить перенаправление запросов на CDN-ресурсе, используйте параметры:

    • --rewrite-body – правило Rewrite. Например: --rewrite-body '/(.*) /new-folder/$1'.

      Правило Rewrite должно содержать две разделенные пробелом директивы: исходный путь, который требуется заменить, и измененный путь — то, на что меняется исходный путь.

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

    • --rewrite-flag – флаг. Возможные значения:

      • break — завершает обработку текущего набора директив.
      • last — завершает обработку текущего набора директив и начинает поиск нового CDN-сервера, соответствующего новому URI.
      • redirect — возвращает пользователю временный redirect с кодом 302. Флаг используется, если заменяющая строка не начинается с http://, https:// или $scheme.
      • permanent — возвращает пользователю постоянный redirect с кодом 301.
    • Чтобы добавить метки, используйте параметр --add-labels. Например: --add-labels key1=value1.

    Если вы хотите ограничить доступ к контенту ресурса с помощью защищенных токенов используйте параметры:

    • --secure-key — секретный ключ — произвольная строка длиной от 6 до 32 символов.
    • --enable-ip-url-signing — (опционально) параметр, который включает ограничение доступа к CDN-ресурсу по IP-адресу. Сам доверенный IP-адрес задается вне CDN-ресурса и указывается в качестве параметра при формировании MD5-хэша для подписанной ссылки. Если параметр не задан, доступ к файлам будет разрешен с любых IP-адресов.

    См. также Настройка доступа по защищенному токену.

    Если вы хотите ограничить доступ к контенту ресурса с помощью политики доступа по IP-адресам, используйте параметры:

    • --acl-excepted-values — IP-адрес, для которого будет разрешен или запрещен доступ к контенту. Для адреса укажите префикс подсети в нотации CIDR, например: 192.168.3.2/32 или 2a03:d000:2980:7::8/128.

      В параметре --acl-excepted-values можно передать только один IP-адрес. Чтобы передать больше адресов, задайте параметр --acl-excepted-values несколько раз.

    • --policy-type — тип политики. Возможные значения:

      • allow — разрешающая политика. Доступ к контенту ресурса будет разрешен для любых IP-адресов, кроме адресов, заданных в параметре --acl-excepted-values.
      • deny — блокирующая политика. Доступ к контенту ресурса будет запрещен для любых IP-адресов, кроме адресов, заданных в параметре --acl-excepted-values.

    Подробнее о команде yc cdn resource create см. в справочнике CLI.

  5. Получите значение CNAME-записи для CDN-ресурса:

    yc cdn resource get-provider-cname
    

    Результат:

    cname: cl-ms6*****90.edgecdn.ru
    folder_id: b1gt6g8ht345********
    
  6. В сервисе Yandex Cloud DNS создайте ресурсную запись с полученным значением.

Провайдер CDN должен быть активирован до создания ресурса. Сделать это можно в консоли управления или с помощью команды CLI:

yc cdn provider activate \
  --folder-id <идентификатор_каталога> \
  --type gcore

Где:

  • --folder-id — идентификатор каталога, в котором вы хотите активировать провайдера CDN.
  • --type — тип провайдера: единственное возможное значение — gcore.

Terraform позволяет быстро создать облачную инфраструктуру в Yandex Cloud и управлять ею с помощью файлов конфигураций. В файлах конфигураций хранится описание инфраструктуры на языке HCL (HashiCorp Configuration Language). При изменении файлов конфигураций Terraform автоматически определяет, какая часть вашей конфигурации уже развернута, что следует добавить или удалить.

Terraform распространяется под лицензией Business Source License, а провайдер Yandex Cloud для Terraform — под лицензией MPL-2.0.

Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform или в зеркале.

Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.

  1. Опишите в конфигурационном файле параметры создаваемого CDN-ресурса:

    resource "yandex_cdn_resource" "my_resource" {
        cname               = "<имя_домена>"
        active              = true
        origin_protocol     = "https"
        origin_group_id     = <идентификатор_группы_источников>
        secondary_hostnames = ["<дополнительное_доменное_имя_1>", "дополнительное_доменное_имя_2"]
        ssl_certificate {
          type = "certificate_manager"
          certificate_manager_id = "<идентификатор_сертификата>"
        }
        options {
          redirect_http_to_https = true
          secure_key = "<секретный_ключ>"
          enable_ip_url_signing = true
          ip_address_acl {
            excepted_values = ["<IP-адрес_1>", "<IP-адрес_2>", ..., "<IP-адрес_n>"]
            policy_type = "<тип_политики>"
          }
        }
    }
    

    Где:

    • cname — основное доменное имя для раздачи контента. Обязательный параметр.

    • active — (опционально) флаг, указывающий на доступ к контенту для конечных пользователей: true — контент из CDN доступен клиентам, false — доступ к контенту отключен. Значение по умолчанию: true.

    • origin_protocol — (опционально) протокол для источников. Значение по умолчанию: http.

    • origin_group_id — идентификатор группы источников. Обязательный параметр. Используйте идентификатор из описания группы источников в ресурсе yandex_cdn_origin_group.

    • secondary_hostnames — (опционально) дополнительные доменные имена.

    • ssl_certificate — (опционально) параметры SSL-сертификата:

      Примечание

      Прекращена поддержка автоматического выпуска сертификатов от Let's encrypt® для CDN-ресурсов.

      • type — тип сертификата, возможные значения:

        • not_used — без сертификата. Значение по умолчанию.

        • certificate_manager — пользовательский сертификат. Укажите идентификатор сертификата в параметре certificate_manager_id.

          Поддерживаются сертификаты из Yandex Certificate Manager. Вы можете выпустить новый сертификат Let's Encrypt® или загрузить собственный.

          Сертификат должен находиться в том же каталоге, в котором расположен ваш CDN-ресурс.

      • certificate_manager_id — идентификатор пользовательского сертификата в Certificate Manager.

    • options — (опционально) дополнительные параметры CDN-ресурса:

      • redirect_http_to_https — параметр для переадресации клиентов с HTTP на HTTPS, возможные значения: true или false. Доступно при использовании SSL-сертификата.

      • secure_key — секретный ключ. Произвольная строка длиной от 6 до 32 символов. Необходим, чтобы ограничить доступ к ресурсу с помощью защищенных токенов.

      • enable_ip_url_signing — опциональный параметр, который включает ограничение доступа к CDN-ресурсу по IP-адресу с помощью защищенных токенов. Сам доверенный IP-адрес задается вне CDN-ресурса и указывается в качестве параметра при формировании MD5-хэша для подписанной ссылки. Если параметр не задан, доступ к файлам будет разрешен с любых IP-адресов.

      • ip_address_acl — параметры политики доступа по IP-адресам:

        • excepted_values — список IP-адресов, для которых будет разрешен или запрещен доступ к контенту ресурса. IP-адреса указываются через запятую. Для каждого адреса укажите префикс подсети в нотации CIDR, например: 192.168.3.2/32 или 2a03:d000:2980:7::8/128.

        • policy_type — тип политики. Возможные значения:

          • allow — разрешающая политика. Доступ к контенту ресурса будет разрешен для любых IP-адресов, кроме адресов, заданных в параметре ip_address_acl.excepted_values.
          • deny — блокирующая политика. Доступ к контенту ресурса будет запрещен для любых IP-адресов, кроме адресов, заданных в параметре ip_address_acl.excepted_values.

      Примечание

      Если в конфигурационном файле удалить параметры secure_key и ip_address_acl, эти опции не отключатся автоматически. Чтобы отключить опции secure_key и ip_address_acl, используйте CLI или API.

    Более подробную информацию о параметрах yandex_cdn_resource в Terraform см. в документации провайдера.

  2. Создайте ресурсы:

    1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

    2. Проверьте корректность конфигурационного файла с помощью команды:

      terraform validate
      

      Если конфигурация является корректной, появится сообщение:

      Success! The configuration is valid.
      
    3. Выполните команду:

      terraform plan
      

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

    4. Примените изменения конфигурации:

      terraform apply
      
    5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

    Terraform создаст все требуемые ресурсы. Проверить создание CDN-ресурса можно в консоли управления или с помощью команды CLI:

    yc cdn resource list
    
  3. Получите значение CNAME-записи для CDN-ресурса:

    yc cdn resource get-provider-cname
    

    Результат:

    cname: cl-ms6*****90.edgecdn.ru
    folder_id: b1gt6g8ht345********
    
  4. В сервисе Yandex Cloud DNS создайте ресурсную запись с полученным значением.

Если вы создаете первый ресурс, подключитесь к провайдеру CDN. Для этого воспользуйтесь методом REST API activate для ресурса Provider или вызовом gRPC API ProviderService/Activate.

  1. Воспользуйтесь методом REST API create для ресурса Resource или вызовом gRPC API ResourceService/Create.

    Вы можете ограничить доступ к ресурсу с помощью защищенных токенов и политики доступа по IP-адресам.

  2. Создайте CNAME-запись для CDN-ресурса в Yandex Cloud DNS:

    • Чтобы получить значение CNAME-записи для CDN-ресурса, воспользуйтесь методом REST API getProviderCName для ресурса Resource или вызовом gRPC API ResourceService/GetProviderCName.
    • Чтобы создать ресурсную запись в зоне DNS, воспользуйтесь методом REST API updateRecordSets для ресурса DnsZone или вызовом gRPC API DnsZoneService/UpdateRecordSets.

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

Примечание

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

Для ресурса в Cloud CDN можно задать дополнительные настройки, которые предоставляются CDN-провайдером EdgeЦентр. Полная функциональность описана в документации API CDN-провайдера. Чтобы включить дополнительные опции, запросите доступ к ним в технической поддержке.

ПримерыПримеры

CLI

Создайте ресурс с протоколом HTTP:

yc cdn resource create testexample.com \
  --origin-group-id 90209 \
  --origin-protocol HTTP

Результат:

id: s0me1dkfjq********
...
cname: testexample.com
active: true
...
origin_group_id: "90209"
origin_group_name: test-group-1
origin_protocol: HTTP
ssl_certificate:
type: DONT_USE
status: READY

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

Предыдущая
Подключиться к провайдеру Cloud CDN
Следующая
Изменить основные настройки ресурса
Проект Яндекса
© 2025 ООО «Яндекс.Облако»