【问题标题】:How to Enable Logconfig for automatically created GKE Cluster & Service firewall rules using terraform如何使用 terraform 为自动创建的 GKE 集群和服务防火墙规则启用 Logconfig
【发布时间】:2021-11-15 20:47:38
【问题描述】:

在 Terraform 中,我在防火墙模块中启用了日志记录,并在 GCP 中创建了 3 个自定义防火墙规则,一旦应用 terraform,logconfig 就会设置为 true。如果我触发 gcloud compute firewall-rules list --format="table(name,logConfig)" 命令,我的自定义防火墙规则将 LOG_CONFIG 显示为“启用”:True 而自动创建的 GKE 集群和服务防火墙规则显示为 False。

手动从控制台/命令行我可以将 GKE 集群和服务防火墙规则更新为 true,而通过 terraform 我找不到解决方案。我在 GCP https://cloud.google.com/kubernetes-engine/docs/concepts/firewall-rules 中找到了关于自动创建防火墙规则的文档,但发现自动启用日志配置。

谁能给我解决方案。

目前我正在使用此防火墙规则及其为我的自定义规则启用 logconfig。

resource "google_compute_firewall" "default" {
  name    = "sample"
  network = "sample-network"
  project = "sample-project"
  enable_logging = "true"

  allow {
    protocol  = var.proto
    ports     = var.ports
  }
  
 log_config {
   metadata = "INCLUDE_ALL_METADATA"
  }

  source_tags   = var.sourceTags
  source_ranges = var.sourceRanges
  target_tags   = var.targetTags
}

【问题讨论】:

  • 请提供您正在使用的 Terraform 代码。
  • @MarkoE 我已经添加了 terraform 代码并编辑了问题。使用该模块,我可以为防火墙启用日志,但对于我找不到的 kubernetes 防火墙规则。
  • 您能告诉我您要向哪个资源添加防火墙日志吗? IE。它是 GCP 资源还是其他什么?
  • @MarkoE 我正在尝试为 GCP cloud.google.com/kubernetes-engine/docs/concepts/firewall-rules 中自动创建的防火墙规则启用日志配置。如果您登录到任何集群,请触发此命令 gcloud compute firewall-rules list --format="table(name,logConfig)" ,您可以在其中看到防火墙名称以 gke-something 和 k8s-something 开头,其中 logconfig 将为 false。我想通过 terraform 实现它。手动我可以做到,但通过自动化我找不到解决方案。
  • 好的,所以,主要问题是:GCP Terraform 提供程序中是否有资源可以让您这样做?

标签: kubernetes terraform firewall terraform-provider-gcp


【解决方案1】:

我认为您链接的文档有解决方案:

https://cloud.google.com/kubernetes-engine/docs/concepts/firewall-rules

如果您想更好地控制防火墙行为,您可以创建具有更高优先级的防火墙规则。在自动创建的防火墙规则之前应用优先级较高的防火墙规则。

【讨论】:

    猜你喜欢
    • 2021-05-26
    • 2019-04-26
    • 1970-01-01
    • 2013-09-05
    • 1970-01-01
    • 1970-01-01
    • 2020-06-29
    • 2021-09-27
    • 1970-01-01
    相关资源
    最近更新 更多