kubernetes - 如何使用 terraform 为自动创建的 GKE 集群和服务防火墙规则启用 Logconfig
问题描述
在 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
}
解决方案
我认为您链接的文档有解决方案:
https://cloud.google.com/kubernetes-engine/docs/concepts/firewall-rules
如果您想更好地控制防火墙行为,您可以创建具有更高优先级的防火墙规则。在自动创建的防火墙规则之前应用具有更高优先级的防火墙规则。
推荐阅读
- python - 一个单词的 Python 正则表达式
- javascript - 'object HTMLCollection' 而不是来自 RSS 的图像 URL
- python - AttributeError:尝试将张量转换为 nparray 时,“张量”对象没有属性“numpy”
- python - Python If 语句评估为真,但不执行?
- c++ - 何时使用带有 target_include_directories 的 BUILD_INTERFACE 和 INSTALL_INTERFACE 生成器表达式?
- cmake - 什么 cmake 命令会将文件目录复制到构建后步骤中的目录
- c++ - fstream 不能与俄语文本一起正常工作?
- gulp - Gulp 功能打印出不太详细的控制台日志消息?
- node.js - 使用vercel/ncc时找不到模块错误如何解决
- python - 多项选择测验,如何处理不需要的答案?| Python