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

Настройка правил Cloud Connector через Terraform

Правила Cloud Connector можно создавать с помощью Terraform Cloudflare provider.

Чтобы начать работу с Terraform для настройки Cloudflare, обратитесь к Начало работы.

Необходимые разрешения

API-токен используемый Terraform, должен иметь как минимум следующее разрешение:

Пример конфигурации

Следующий пример конфигурации Terraform создаёт правила Cloud Connector для различных поддерживаемые провайдеры для маршрутизации трафика между ними на основе путей URI:

resource "cloudflare_cloud_connector_rules" "cloud_connector_rules" {
  zone_id = "<ZONE_ID>"

  rules {
    description = "Route /data to GCP bucket"
    enabled     = true
    expression  = "(http.request.uri.path wildcard \"*/data/*\")"
    provider    = "gcp_storage"
    parameters {
      host = "mystorage.storage.googleapis.com"
    }
  }

  rules {
    description = "Route /resources to AWS bucket"
    enabled     = true
    expression  = "(http.request.uri.path wildcard \"*/resources/*\")"
    provider    = "aws_s3"
    parameters {
      host = "mystorage.s3.ams.amazonaws.com"
    }
  }

  rules {
    description = "Route /files to Azure bucket"
    enabled     = true
    expression  = "(http.request.uri.path wildcard \"*/files/*\")"
    provider    = "azure_storage"
    parameters {
      host = "mystorage.blob.core.windows.net"
    }
  }

  rules {
    description = "Route /images to R2 bucket"
    enabled     = true
    expression  = "(http.request.uri.path wildcard \"*/images/*\")"
    provider    = "cloudflare_r2"
    parameters {
      host = "mybucketcustomdomain.example.com"
    }
  }
}

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

См. документация Terraform Cloudflare provider дополнительную информацию о cloudflare_cloud_connector_rules ресурс.