AWS:接受VPC对等连接请求

时间:2017-10-10 15:02:38

标签: amazon-web-services aws-lambda amazon-vpc

我为dev, qa等提供了几个预先制作的VPC,到目前为止,所有内容都通过CloudFormation + Lambda进行管理,非常干净。

由于VPC之间没有人互相交流,我可以通过一组模板启动和拆除环境,而且非常idempotent

现在我需要为环境之间的一些常见事物添加管理VPC。我之前使用过VPC窥视用户界面,并且易于管理。

但是我喜欢拆除和启动新环境的灵活性,特别是因为prod最终会成为blue/green

因此,为了避免使用UI,我考虑添加两个Lambda函数:

1. on the mngmt VPC, list all VPC's and if there's not an existing VPC peering connection with one, request it
2. on pre-prod VPC's poll for VPC connection peering requests and accept if from a trusted owner

这样我就可以拆掉堆叠并重新启动它们而无需任何人工干预。

这是一种浪费的设计吗?有没有我预见到的问题?有什么更好的方法来实现这个目标?

1 个答案:

答案 0 :(得分:3)

AWS文档声明只有帐户所有者才能接受VPC对等连接。您可以为每个帐户创建一个Lambda,然后使用DescribeVpcPeeringConnections检测挂起接受状态。然后调用AcceptVpcPeeringConnection。要创建VPC对等连接,请调用AcceptVpCPeeringConnection。

注意: 我不喜欢投票设计。在您的情况下,您需要不断轮询以检测新的对等连接请求。更好的解决方案是在创建VPC之后通过脚本(程序)调用(或通过SNS触发)Lambda函数。

此链接指向API参考。在这里,您可以选择页面底部将使用的语言。

AcceptVpcPeeringConnection