Kubernetes ConfigMap YAML 到 Terraform Kubernetes
Kubernetes ConfigMap YAML into Terraform Kubernetes
我正在尝试将以下 ConfigMap
yaml 文件(link here) into a kubernetes_config_map
但在尝试定义它时 运行 变成语法错误。
特别是,我无法绕过 opentsdb.conf
文件中的点符号
apiVersion: v1
kind: ConfigMap
metadata:
name: opentsdb-config
data:
opentsdb.conf: |
google.bigtable.project.id = REPLACE_WITH_PROJECT
google.bigtable.instance.id = REPLACE_WITH_INSTANCE
google.bigtable.zone.id = REPLACE_WITH_ZONE
hbase.client.connection.impl = com.google.cloud.bigtable.hbase1_2.BigtableConnection
google.bigtable.auth.service.account.enable = true
tsd.network.port = 4242
tsd.core.auto_create_metrics = true
tsd.core.meta.enable_realtime_ts = true
tsd.core.meta.enable_realtime_uid = true
tsd.core.meta.enable_tsuid_tracking = true
tsd.http.request.enable_chunked = true
tsd.http.request.max_chunk = 131072
tsd.storage.fix_duplicates = true
tsd.storage.enable_compaction = false
tsd.storage.max_tags = 12
tsd.http.staticroot = /opentsdb/build/staticroot
tsd.http.cachedir = /tmp/opentsdb
这是我目前在 "opentsdb.conf"
上出错的尝试
resource "kubernetes_config_map" "opentsdb" {
metadata {
name = "opentsdb-config",
namespace = "dev"
}
data {
"opentsdb.conf" = {
google.bigtable.project.id = var.project_id,
google.bigtable.instance.id = google_bigtable_instance.development-instance.name,
google.bigtable.zone.id = var.zone,
hbase.client.connection.impl = "com.google.cloud.bigtable.hbase1_2.BigtableConnection",
google.bigtable.auth.service.account.enable = true
tsd.network.port = 4242
tsd.core.auto_create_metrics = true
tsd.core.meta.enable_realtime_ts = true
tsd.core.meta.enable_realtime_uid = true
tsd.core.meta.enable_tsuid_tracking = true
tsd.http.request.enable_chunked = true
tsd.http.request.max_chunk = 131072
tsd.storage.fix_duplicates = true
tsd.storage.enable_compaction = false
tsd.storage.max_tags = 12
tsd.http.staticroot = "/opentsdb/build/staticroot"
tsd.http.cachedir = "/tmp/opentsdb"
}
}
}
我遇到的问题是我试图将对象分配给字符串文字。
我需要使用 EOF
语法如下:
resource "kubernetes_config_map" "opentsdb" {
metadata {
name = "opentsdb-config"
namespace = "dev"
}
data = {
"opentsdb.conf" = <<EOF
google.bigtable.project.id = ${var.project_id}
google.bigtable.instance.id = ${var.bigtable_instance_id}
google.bigtable.zone.id = ${var.zone}
hbase.client.connection.impl = com.google.cloud.bigtable.hbase1_2.BigtableConnection
google.bigtable.auth.service.account.enable = true
tsd.network.port = 4242
tsd.core.auto_create_metrics = true
tsd.core.meta.enable_realtime_ts = true
tsd.core.meta.enable_realtime_uid = true
tsd.core.meta.enable_tsuid_tracking = true
tsd.http.request.enable_chunked = true
tsd.http.request.max_chunk = 131072
tsd.storage.fix_duplicates = true
tsd.storage.enable_compaction = false
tsd.storage.max_tags = 12
tsd.http.staticroot = /opentsdb/build/staticroot
tsd.http.cachedir = /tmp/opentsdb
EOF
}
}
我正在尝试将以下 ConfigMap
yaml 文件(link here) into a kubernetes_config_map
但在尝试定义它时 运行 变成语法错误。
特别是,我无法绕过 opentsdb.conf
文件中的点符号
apiVersion: v1
kind: ConfigMap
metadata:
name: opentsdb-config
data:
opentsdb.conf: |
google.bigtable.project.id = REPLACE_WITH_PROJECT
google.bigtable.instance.id = REPLACE_WITH_INSTANCE
google.bigtable.zone.id = REPLACE_WITH_ZONE
hbase.client.connection.impl = com.google.cloud.bigtable.hbase1_2.BigtableConnection
google.bigtable.auth.service.account.enable = true
tsd.network.port = 4242
tsd.core.auto_create_metrics = true
tsd.core.meta.enable_realtime_ts = true
tsd.core.meta.enable_realtime_uid = true
tsd.core.meta.enable_tsuid_tracking = true
tsd.http.request.enable_chunked = true
tsd.http.request.max_chunk = 131072
tsd.storage.fix_duplicates = true
tsd.storage.enable_compaction = false
tsd.storage.max_tags = 12
tsd.http.staticroot = /opentsdb/build/staticroot
tsd.http.cachedir = /tmp/opentsdb
这是我目前在 "opentsdb.conf"
resource "kubernetes_config_map" "opentsdb" {
metadata {
name = "opentsdb-config",
namespace = "dev"
}
data {
"opentsdb.conf" = {
google.bigtable.project.id = var.project_id,
google.bigtable.instance.id = google_bigtable_instance.development-instance.name,
google.bigtable.zone.id = var.zone,
hbase.client.connection.impl = "com.google.cloud.bigtable.hbase1_2.BigtableConnection",
google.bigtable.auth.service.account.enable = true
tsd.network.port = 4242
tsd.core.auto_create_metrics = true
tsd.core.meta.enable_realtime_ts = true
tsd.core.meta.enable_realtime_uid = true
tsd.core.meta.enable_tsuid_tracking = true
tsd.http.request.enable_chunked = true
tsd.http.request.max_chunk = 131072
tsd.storage.fix_duplicates = true
tsd.storage.enable_compaction = false
tsd.storage.max_tags = 12
tsd.http.staticroot = "/opentsdb/build/staticroot"
tsd.http.cachedir = "/tmp/opentsdb"
}
}
}
我遇到的问题是我试图将对象分配给字符串文字。
我需要使用 EOF
语法如下:
resource "kubernetes_config_map" "opentsdb" {
metadata {
name = "opentsdb-config"
namespace = "dev"
}
data = {
"opentsdb.conf" = <<EOF
google.bigtable.project.id = ${var.project_id}
google.bigtable.instance.id = ${var.bigtable_instance_id}
google.bigtable.zone.id = ${var.zone}
hbase.client.connection.impl = com.google.cloud.bigtable.hbase1_2.BigtableConnection
google.bigtable.auth.service.account.enable = true
tsd.network.port = 4242
tsd.core.auto_create_metrics = true
tsd.core.meta.enable_realtime_ts = true
tsd.core.meta.enable_realtime_uid = true
tsd.core.meta.enable_tsuid_tracking = true
tsd.http.request.enable_chunked = true
tsd.http.request.max_chunk = 131072
tsd.storage.fix_duplicates = true
tsd.storage.enable_compaction = false
tsd.storage.max_tags = 12
tsd.http.staticroot = /opentsdb/build/staticroot
tsd.http.cachedir = /tmp/opentsdb
EOF
}
}