Что я хочу:
Я хотел бы иметь static.example.com
DNS-записи, которые ссылаются на корзину в GCS, содержащую мои статические изображения.
Поскольку я управляю DNS через Cloudflare,Я думаю, что мне нужно использовать тот факт, что GCP может приписать мне anycast-IP, чтобы связать этот IP с балансировщиком нагрузки GCP, который будет связан с корзиной
То, что у меня сейчас есть:
блок, уже созданный вручную, с именем «static-images»
балансировщик нагрузки, связанный с указанным блоком, созданный с помощью
resource "google_compute_backend_bucket" "image_backend" {
name = "example-static-images"
bucket_name = "static-images"
enable_cdn = true
}
маршрутизация для ссылки на мое ведро
resource "google_compute_url_map" "urlmap" {
name = "urlmap"
default_service = "${google_compute_backend_bucket.image_backend.self_link}"
host_rule {
hosts = ["static.example.com"]
path_matcher = "allpaths"
}
path_matcher {
name = "allpaths"
default_service = "${google_compute_backend_bucket.image_backend.self_link}"
path_rule {
paths = ["/static"]
service = "${google_compute_backend_bucket.image_backend.self_link}"
}
}
}
ip, созданный с помощью:
resource "google_compute_global_address" "my_ip" {
name = "ip-for-static-example-com"
}
Что яотсутствует:
- эквивалент terraform для «конфигурации внешнего интерфейса» при создании балансировщика нагрузки из веб-консоли