2017-10-11 188 views
0

在terraform中創建rds和彈性緩存之後,我想調整優先級,以便設置ec2。如何確定terraform執行優先級的優先級

terraform可行嗎?

準確地說,我在ec2上運行docker。我想通過使用環境變量將terraform創建的RDS彈性緩存端點傳遞給docker。

謝謝你閱讀我的問題。

回答

1

terraform的Implicit and Explicit Dependencies是可行的。

因此,您可以定義應首先創建哪個資源以及哪個資源應該在哪個資源之後創建。

它是由下面的結構,這需要資源的列表支持:

depends_on = [ 
    "", "", 
] 

下面是一個例子:

resource "aws_db_instance" "rds_example" { 
    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" 
} 

resource "aws_instance" "ec2_example" { 
    ami   = "${data.aws_ami.ubuntu.id}" 
    instance_type = "t2.micro" 

    tags { 
    Name = "HelloWorld" 
    } 
    depends_on = [ 
     "aws_db_instance.rds_example", 
    ] 
} 
+0

你應該擴大這個答案來解釋什麼是_implicit_的意思, _explicit_依賴關係,並直接在答案中包含示例,而不是將答案的所有有用部分留在指向另一個站點的鏈接之後(即使它是官方文檔)。 – ydaetskcoR

+0

已修復。謝謝。 – Nickolay

+0

感謝您的評論。我用你教給我的「depend_on」選項解決了它 – sukho