【问题标题】:AWS boto check if security group or other elements is readyAWS boto 检查安全组或其他元素是否已准备好
【发布时间】:2014-07-26 13:08:37
【问题描述】:

我正在使用 boto 创建 VPC 和安全组。如果我只是在脚本中创建和标记元素,我会不断收到错误,因为元素还没有准备好。我可以手动等待,但我更喜欢拉它们看看它们是否真的准备好了。对于 VPC 或子网,我可以使用以下内容:

import boto.vpc

v = boto.vpc.VPCConnection(
    region=primary_region,
    aws_access_key_id=aws_access_key,
    aws_secret_access_key=aws_secret_key)

vpcs = v.get_all_vpcs()
print vpcs[0].state

使用更多逻辑和 while 循环来检查状态是否为 availablerunning 或其他。这适用于大多数 vpc / aws 元素,但某些元素(如安全组)在以 get_all_security_groups 或等效项返回时没有状态属性。

人们如何检查这些元素是否可以使用?

【问题讨论】:

    标签: python amazon-web-services boto amazon-vpc


    【解决方案1】:

    事实证明,对于没有状态属性的元素,您必须发挥创造力并编写一些可能很脆弱的代码。

    对于安全组的具体示例,我这样做:

    1. 使用 get_all_security_groups 和过滤器来查找安全组。
    2. 检查 sg.rules_egress
    3. 使用指数退避重试。

    当它开始失败时(我相信它会失败),我会再看看其他更好的方法,但到目前为止都没有失败。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-30
      • 1970-01-01
      • 2018-03-12
      • 1970-01-01
      • 2021-11-20
      • 2014-09-08
      • 1970-01-01
      相关资源
      最近更新 更多