zde*_*bra 4 yaml terraform terraform-provider-kubernetes
我想使用 terraform 将大使设置为 kubernetes 的 API 网关。配置大使的方法有多种。根据文档,推荐的方法是对在集群外部路由和公开的每个服务使用 kubernetes 注释。使用 kubernetes yaml 配置可以轻松完成此操作:
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
Run Code Online (Sandbox Code Playgroud)
该getambassador.io/config字段的值以|suggest 开头,它是一个多行字符串值。如何使用 terraform HCL 实现同样的效果?
Terraform 文档包含有关使用多行字符串的部分<<EOF your multiline string EOF:
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"
}
}
}
Run Code Online (Sandbox Code Playgroud)
---确保yaml 配置中没有三重破折号 ( )。Terraform 错误地解析了它。
| 归档时间: |
|
| 查看次数: |
10024 次 |
| 最近记录: |