使用Boto列出自动伸缩组中的实例

发布于 2021-01-29 16:04:18

我想列出自动缩放组中当前正在运行的所有实例。Boto可以做到吗?

由于botoshutdown_instancesboto.ec2.autoscale.group.AutoScalingGroup类中具有方法,因此ASG与实例之间必须存在某种关系。

正确方向的任何指针都将受到高度赞赏!

关注者
0
被浏览
40
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    这样的事情应该起作用:

    >>> import boto
    >>> autoscale = boto.connect_autoscale()
    >>> ec2 = boto.connect_ec2()
    >>> group = autoscale.get_all_groups(['mygroupname'])[0]
    >>> instance_ids = [i.instance_id for i in group.instances]
    >>> reservations = ec2.get_all_instances(instance_ids)
    >>> instances = [i for r in reservations for i in r.instances]
    

    我们必须收集实例ID,然后调用EC2的原因是,AutoScale仅存储有关实例的一小部分信息。这将导致变量实例指向自动缩放组“
    mygroupname”中每个实例的实例对象列表。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看