python - ec2 等待超时 [Python]

标签 python amazon-web-services amazon-ec2 boto3

我正在使用 AWS python API (boto3)。我的脚本启动了几个实例,然后等待它们上线,然后再继续做事。我希望等待在预定义的时间段后超时,但我在 Python 中找不到任何 API。有任何想法吗?我当前代码的一个片段:

def waitForInstance(id):
    runningWaiter = self.ec2c.get_waiter("instance_status_ok")
    runningWaiter.wait(InstanceIds = [id])
    instance = ec2resource.Instance(id)
    return instance.state

我当然可以做一些事情,比如在一个单独的线程中运行这段代码,并在需要时终止它,但我想知道 boto3 中是否已经为此内置了一个 API,我只是想念它。

最佳答案

服务员有一个与之关联的配置,可以访问(使用上面的示例)作为:

runningWaiter.config

此配置中的一项设置是 max_attempts,它控制放弃前尝试的次数。默认值为 40。您可以像这样更改该值:

runningWaiter.config.max_attempts = 10

这并不像您所问的那样直接控制超时,但会导致服务员提前放弃。

关于python - ec2 等待超时 [Python],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35789230/

相关文章:

python - 解析 XML 以存储在数据库中

python - 我希望能够使用日期查找特定的数据

python - 如何在 Python 中的一个图中设置子图

python - sqlalchemy,将 MySQL 字符集设置为 `create_engine` 参数

ssh - Amazon EC2 权限被拒绝(公钥)

amazon-web-services - Elastic Beanstalk 将 iis 站点的 http 重定向到 https

node.js - 如何在dynamodb中插入json

amazon-web-services - AWS Elasticbeanstalk 多容器 - 实例未在允许的命令超时内响应

linux - Fedora 14 上的 Amazon AWS s3fs 挂载问题

amazon-ec2 - 雷迪斯 | redis-cli INFO/avg_ttl 值