google-cloud-platform - 全局地址不支持标准网络层
问题描述
我想使用以下 Terraform 代码在 GCP 上添加 A 型 DNS 名称:
data "google_dns_managed_zone" "env_dns_zone" {
name = "env-zone"
}
resource "google_compute_global_address" "argo_events_webhook" {
name = "argo-events-webhook"
}
/*
resource "google_dns_record_set" "argo-events-webhook" {
name = "argo-events-webhook.${data.google_dns_managed_zone.env_dns_zone.dns_name}"
managed_zone = data.google_dns_managed_zone.env_dns_zone.name
rrdatas = [google_compute_global_address.argo_events_webhook.address]
ttl = 600
type = "A"
}
*/
(注释掉的部分不会导致错误,但可能相关,因为它显示了有关我想要实现的目标的更多信息)
但这会产生以下错误消息...
...
module.gke.google_compute_global_address.argo_events_webhook: Creating...
Error: Error creating GlobalAddress: googleapi: Error 400: STANDARD network tier (the project's default network tier) is not supported: STANDARD network tier is not supported for global address., badRequest
...我找不到更多信息。有人知道如何解决这个问题吗?
我感到困惑的是,添加了 A 级条目,并且我的 terraform 代码是从它们相应的 tf 代码(+名称调整)中 c/p 的。
解决方案
标准网络层不使用 Google 全球光纤网络,而是使用该地区本地的“标准互联网”。如果您使用全局地址,则该地址是全局可访问的,因此您需要使用高级网络层才能访问此功能。
更多细节在这里
在您的情况下,您必须将项目配置更新为 Premium Network Tier。您可以使用Terraform实现此目的
resource "google_compute_project_default_network_tier" "default" {
network_tier = "PREMIUM"
}
推荐阅读
- java - JPA 是否允许对 MappedSuperclass 中的嵌入式类进行 PrePersist/PreUpdate?
- swift - 如何为标签添加约束?
- javascript - 正则表达式参数上的 parseFloat 返回 NaN
- c# - 如何实现 INPC 以引用静态属性?
- c# - 在 OnDraw 事件中创建的动态标签,可从 Visual Studio 设计器编辑
- java - 以编程方式将 viewBox 渲染为新的 SVGDocument
- python - 尝试使用 Dash 在 Python 中输出表格时缩小 React 错误 #31
- server - 了解这个文件路径(哪个是服务器?)
- java - Guice - 如何在扩展抽象模块的类中注入依赖项 - Java
- javascript - 'this' 不是指调用它的上下文(对于箭头函数)