Yaml terraform kubernetes提供程序的多行字符串注释
我想使用terraform为kubernetes设置一个API网关。有几种方法可以配置大使。根据,推荐的方法是为集群外部路由和公开的每个服务使用kubernetes注释。使用kubernetes yaml配置可以轻松完成此操作:Yaml terraform kubernetes提供程序的多行字符串注释,yaml,terraform,terraform-provider-kubernetes,Yaml,Terraform,Terraform Provider Kubernetes,我想使用terraform为kubernetes设置一个API网关。有几种方法可以配置大使。根据,推荐的方法是为集群外部路由和公开的每个服务使用kubernetes注释。使用kubernetes yaml配置可以轻松完成此操作: kind: Service apiVersion: v1 metadata: name: my-service annotations: getambassador.io/config: | --- apiVersion: a
kind: Service
apiVersion: v1
metadata:
name: my-service
annotations:
getambassador.io/config: |
---
apiVersion: ambassador/v0
kind: Mapping
name: my_service_mapping
prefix: /my-service/
service: my-service
spec:
selector:
app: MyApp
ports:
- protocol: TCP
port: 80
targetPort: 9376
以
|
开头的getambassador.io/config
字段的值表明它是一个多行字符串值。如何使用terraform HCL实现同样的效果?terraform文档包含一个关于使用的多行字符串的文档terraform文档包含一个关于使用的多行字符串的文档
resource "kubernetes_service" "my-service" {
"metadata" {
name = "my-service"
annotations {
"getambassador.io/config" = <<EOF
apiVersion: ambassador/v0
kind: Mapping
name: my_service_mapping
prefix: /my-service/
service: my-service
EOF
}
}
"spec" {
selector {
app = "MyApp"
}
port {
protocol = "TCP"
port = 80
target_port = "9376"
}
}
}