Документация Запланировать пилот

Переход с Rate Limiting (предыдущая версия)

Cloudflare перевёл все правила ограничения скорости, созданные в предыдущая версия к новая версия правил ограничения скорости.

Теперь дашборд Cloudflare показывает все ваши правила ограничения скорости в едином списке.

Основные различия

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

Важные замечания об обновлении


Важные изменения в панели управления

Если у вас был доступ к предыдущей версии Cloudflare Rate Limiting, теперь все правила ограничения скорости отображаются в одном списке в Безопасность > WAF > Правила ограничения скорости. Правила ограничения скорости, созданные в предыдущей версии, помечены тегом Previous version в Cloudflare dashboard.

Интерфейс правил ограничения скорости с двумя правилами, созданными в предыдущей версии.

Если вы используете новый дашборд Application Security, только правила ограничения скорости, обновленные до новой версии, будут отображаться в Безопасность > Правила безопасности.

Если вы отредактируете правило с этим тегом в панели управления, вы больше не сможете редактировать его через API и ресурс Terraform для предыдущей версии правил ограничения скорости. В этом случае вам нужно будет перейти на использование Rulesets API или cloudflare_ruleset ↗ ресурс Terraform для этой цели. См. Важные изменения для пользователей API и Важные изменения для пользователей Terraform, где это описано подробнее.

Важные изменения для пользователей API

Предыдущий Rate Limiting API устарел. API больше не поддерживается с 2025-06-15. Необходимо обновить любую автоматизацию, основанную на Предыдущий Rate Limiting API к Rulesets API чтобы избежать проблем.

Новые правила ограничения скорости основаны на Ruleset Engine. Чтобы настроить эти правила ограничения скорости через API, необходимо использовать Rulesets API. Поскольку правила ограничения скорости, созданные в предыдущей версии, были обновлены до новой версии, это API также будет возвращать эти правила как созданные в новой версии.

Rulesets API единственный API, который позволяет создавать, редактировать и удалять любое правило ограничения скорости независимо от версии реализации, в которой было создано правило. Предыдущий Rate Limiting API будет работать только с правилами ограничения скорости, созданными в предыдущей версии, которые вы не редактировали в панели управления и не изменяли через новый ресурс API/Terraform с момента их обновления до новой версии.

До даты прекращения поддержки API можно использовать Предыдущий Rate Limiting API чтобы создавать, изменять и удалять правила ограничения скорости запросов, созданные в предыдущей версии (которые Cloudflare обновил до новой версии). Однако если вы используете Rulesets API для изменения правила, созданного в предыдущей версии, или изменяете такое правило в дашборде Cloudflare, в том числе меняете порядок правил, вы больше не сможете управлять этим правилом (обновлённым из предыдущей версии, а затем изменённым через Rulesets API) с помощью старых операций API. В этом случае вам нужно будет полностью перейти на Rulesets API для управления этим конкретным правилом.

Важные изменения для пользователей Terraform

cloudflare_rate_limit ресурс Terraform устарел. Этот ресурс больше не поддерживается с 2025-06-15. Необходимо вручную обновить конфигурацию ограничения скорости в Terraform, перейдя от cloudflare_rate_limit ↗ ресурсы в cloudflare_ruleset ↗ ресурсы, чтобы избежать проблем.

Новые правила ограничения скорости основаны на Ruleset Engine. Чтобы настроить эти правила ограничения скорости с помощью Terraform, необходимо использовать cloudflare_ruleset ресурс Terraform.

cloudflare_ruleset ↗ ресурс Terraform является единственным ресурсом, который позволяет создавать, изменять и удалять любое правило ограничения скорости независимо от версии реализации, в которой было создано правило. cloudflare_rate_limit ресурс Terraform будет работать только с правилами ограничения скорости, созданными в предыдущей версии, которые вы не изменяли в панели управления и не модифицировали через новый API или ресурс Terraform после их обновления до новой версии.

До даты прекращения поддержки для cloudflare_rate_limit ресурс Terraform, вы можете использовать этот ресурс для создания, изменения и удаления правил ограничения скорости, созданных в предыдущей версии (которые Cloudflare обновил до новой версии). Однако если вы начнете использовать cloudflare_ruleset ресурс Terraform для управления правилом, созданным в предыдущей версии, или если вы измените такое правило в панели Cloudflare, в том числе изменив порядок правил, вы больше не сможете управлять этим правилом (обновленным с предыдущей версии и затем измененным с помощью нового ресурса) через старый ресурс Terraform. В этом случае вам нужно будет полностью перейти на cloudflare_ruleset ресурс Terraform для управления этим конкретным правилом.

См. документацию Terraform для примеры настройки новых правил ограничения скорости с помощью Terraform.

Замените конфигурацию с помощью cf-terraforming

Вы можете использовать cf-terraforming ↗ для создания новой конфигурации Terraform для правил ограничения частоты запросов, созданных в предыдущей версии. Затем вы можете импортировать новые ресурсы в состояние Terraform.

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

  1. Чтобы сформировать все конфигурации наборов правил для зоны, выполните следующую команду:

    cf-terraforming generate --zone <ZONE_ID> --resource-type "cloudflare_ruleset"
    resource "cloudflare_ruleset" "terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31" {
      kind    = "zone"
      name    = "default"
      phase   = "http_ratelimit"
      zone_id = "<ZONE_ID>"
      rules {
        # (...)
      }
      # (...)
    }
    # (...)
  2. Предыдущая команда может также возвращать конфигурации наборов правил для других продуктов Cloudflare, основанных на Ruleset Engine. Поскольку вы обновляете конфигурацию правил ограничения скорости, оставьте только ресурс Terraform для http_ratelimit фаза и сохранить его в .tf файл конфигурации. Полное имя ресурса понадобится вам на следующем шаге.

  3. Импортируйте cloudflare_ruleset ресурс, который вы ранее определили, в состояние Terraform с помощью terraform import команду. Например:

    terraform import cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31 zone/<ZONE_ID>/3c0b456bc2aa443089c5f40f45f51b31
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Importing from ID "zone/<ZONE_ID>/3c0b456bc2aa443089c5f40f45f51b31"...
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Import prepared!
      Prepared cloudflare_ruleset for import
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Refreshing state... [id=3c0b456bc2aa443089c5f40f45f51b31]
    
    Import successful!
    
    The resources that were imported are shown above. These resources are now in
    your Terraform state and will henceforth be managed by Terraform.
  4. Запустите terraform plan чтобы убедиться, что Terraform теперь проверяет состояние нового cloudflare_ruleset ресурс в дополнение к другим существующим ресурсам, уже управляемым Terraform. Например:

    terraform plan
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Refreshing state... [id=3c0b456bc2aa443089c5f40f45f51b31]
    [...]
    cloudflare_rate_limit.my_rate_limiting_rules: Refreshing state... [id=0580eb5d92e344ddb2374979f74c3ddf]
    [...]
  5. Удалите из состояния Terraform все данные, связанные с правилами ограничения скорости, настроенными через старый cloudflare_rate_limit ресурс из состояния Terraform:

    1. Чтобы найти все ресурсы, связанные с правилами ограничения частоты запросов (предыдущая версия), выполните следующую команду:

      terraform state list | grep -E '^cloudflare_rate_limit\.'
      cloudflare_rate_limit.my_rate_limiting_rules
    2. Выполните terraform state rm ... команду в режиме dry-run, чтобы оценить последствия удаления этих ресурсов без внесения фактических изменений:

      terraform state rm -dry-run cloudflare_rate_limit.my_rate_limiting_rules
      Would remove cloudflare_rate_limit.my_rate_limiting_rules
    3. Если результат выглядит корректно, выполните ту же команду без -dry-run параметр, чтобы фактически удалить ресурсы из состояния Terraform:

      terraform state rm cloudflare_rate_limit.my_rate_limiting_rules
      Removed cloudflare_rate_limit.my_rate_limiting_rules
      Successfully removed 1 resource instance(s).
  6. После удаления cloudflare_rate_limit ресурсов из состояния Terraform удалите все эти ресурсы из .tf файлы конфигурации.

  7. Запустите terraform plan чтобы убедиться, что удалённые вами из конфигурационных файлов ресурсы больше не отображаются. У вас не должно быть отложенных изменений.

    terraform plan
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Refreshing state... [id=3c0b456bc2aa443089c5f40f45f51b31]
    [...]
    
    No changes. Your infrastructure matches the configuration.
    
    Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed.

Сведения об импорте ресурсов Cloudflare в Terraform и об использовании cf-terraforming см. следующие материалы:

Дополнительные ресурсы

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

Cloudflare также предлагает расширенную версию Rate Limiting, доступную клиентам на тарифе Enterprise. Дополнительную информацию см. в Представляем Advanced Rate Limiting ↗ в записи блога.

Дополнительную информацию о возможностях нового механизма ограничения скорости см. в Рекомендации по ограничению скорости запросов.

Запросите бесплатный пилот

Запланировать пилот