我正在尝试通过获取使用 terraform 制作的 ELB、RDS 的端点来创建要在应用程序中使用的环境变量。
目前我正在尝试使用 aws cli 获取端点,如下所示,但有更简单的方法吗?
aws rds describe-db-instances --db-instance-identifier xxxx | jq '.DBInstances[].Endpoint.Address'
aws elb describe-tags --load-balancer-name xxxx | jq '.TagDescriptions[].LoadBalancerName'
Run Code Online (Sandbox Code Playgroud)
比如如何获取在terraform上创建的AWS stack的endpoint
请查看您所针对的资源的 terraform 文档。
在每个文档中,有一个部分叫做Attributes Reference,我个人称它们为available output variables
因此,如果您需要 terraform 的 rds 端点作为输出
resource "aws_db_instance" "default" {
allocated_storage = 10
storage_type = "gp2"
engine = "mysql"
engine_version = "5.6.17"
instance_class = "db.t1.micro"
name = "mydb"
username = "foo"
password = "bar"
db_subnet_group_name = "my_database_subnet_group"
parameter_group_name = "default.mysql5.6"
}
output "rds_endpoint" {
value = "${aws_db_instance.default.endpoint}"
}
Run Code Online (Sandbox Code Playgroud)
你应该对 ELB 做同样的事情。
有时,并非所有属性都在 terraform 文档中更新,您可以按照以下答案找到正确的输出变量
如何通过 terraform 获取现有 ec2 实例的实例 ID/arn?
| 归档时间: |
|
| 查看次数: |
2866 次 |
| 最近记录: |