gpt4 book ai didi

amazon-ec2 - 使用 Terraform 进行配置时,代码如何获取对机器 ID 的引用(例如数据库机器地址)

转载 作者:行者123 更新时间:2023-12-05 06:42:27 26 4
gpt4 key购买 nike

假设我正在使用 Terraform 在 AWS 中配置两台机器:

  • 运行 NodeJS 的 EC2 机器
  • 一个 RDS 实例

NodeJS代码如何获取RDS实例的地址?

最佳答案

这里有几个选项。最简单的方法是在 Route53 中为数据库创建一条 CNAME 记录,然后在您的应用程序中始终指向该 CNAME。

一个基本的例子看起来像这样:

resource "aws_db_instance" "mydb" {
allocated_storage = 10
engine = "mysql"
engine_version = "5.6.17"
instance_class = "db.t2.micro"
name = "mydb"
username = "foo"
password = "bar"
db_subnet_group_name = "my_database_subnet_group"
parameter_group_name = "default.mysql5.6"
}

resource "aws_route53_record" "database" {
zone_id = "${aws_route53_zone.primary.zone_id}"
name = "database.example.com"
type = "CNAME"
ttl = "300"
records = ["${aws_db_instance.default.endpoint}"]
}

替代选项包括从 aws_db_instance 获取 endpoint 输出,并在创建实例时将其传递到用户数据脚本或将其传递给 Consul并使用 Consul 模板来控制您的应用程序使用的配置。

关于amazon-ec2 - 使用 Terraform 进行配置时,代码如何获取对机器 ID 的引用(例如数据库机器地址),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37090249/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com