[英]VPC Peering is replaced all the time by Terraform
我正在嘗試在兩個不同賬戶的兩個 VPC 之間創建 VPC 對等連接。 一個由我管理,另一個由其他人管理,我無權訪問它。 我正在使用 Terraform 腳本的下一個片段。
resource "aws_vpc_peering_connection" "a" {
peer_owner_id = var.a.aws_account_id
peer_vpc_id = var.a.vpc_id
vpc_id = aws_vpc.main.id
peer_region = "eu-west-1"
requester {
allow_remote_vpc_dns_resolution = false
}
}
接下來,它將由管理該帳戶的人手動接受。 問題是 Peering 是否被接受 Terraform 想要replace
那個 Peering 連接:
# module.vpc.aws_vpc_peering_connection.a is tainted, so must be replaced
-/+ resource "aws_vpc_peering_connection" "a" {
~ accept_status = "active" -> (known after apply)
~ id = "pcx-00000000000000000" -> (known after apply)
# (5 unchanged attributes hidden)
+ accepter {
+ allow_classic_link_to_remote_vpc = (known after apply)
+ allow_remote_vpc_dns_resolution = (known after apply)
+ allow_vpc_to_remote_classic_link = (known after apply)
}
# (1 unchanged block hidden)
}
我已經嘗試通過使用lifecycle
來防止替換
lifecycle {
ignore_changes = all
}
但這沒有幫助...
嘗試清除資源,例如
terraform untaint aws_vpc_peering_connection.a
通過使用aws_vpc_peering_connection_options
資源而不是在aws_vpc_peering_connection
請求者中指定選項,當 Terraform 注意到allow_remote_vpc_dns_resolution
選項已更改時,我能夠避免重新創建連接本身。
在對等連接被另一方接受之前,設置該選項仍然會失敗,但是一旦您接受了另一方帳戶的連接,只有選項會被污染,而不是整個連接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.