AWS boto 过滤器

AWS boto 过滤器

下面是我运行得到的 JSON 结果(针对一个卷)aws ec2 describe-volumes

{
    "AvailabilityZone": "eu-west-1a", 
    "Attachments": [
        {
            "AttachTime": "2015-02-23T15:01:37.000Z", 
            "InstanceId": "i-abcd1234", 
            "VolumeId": "vol-pqrs1234", 
            "State": "attached", 
            "DeleteOnTermination": true, 
            "Device": "/dev/xvda"
        }
    ], 
    "Tags": [
        {
            "Value": "on", 
            "Key": "snapshot"
        }, 
        {
            "Value": "srv001: /", 
            "Key": "Name"
        }
    ], 
    "Encrypted": false, 
    "VolumeType": "gp2", 
    "VolumeId": "vol-pqrs1234", 
    "State": "in-use", 
    "Iops": 24, 
    "SnapshotId": "snap-klmn1234", 
    "CreateTime": "2015-02-23T15:01:37.000Z", 
    "Size": 8
}, 

使用 Python Boto,我可以使用过滤器获取卷 ID 列表。

volumes = conn.get_all_volumes(filters={"tag:snapshot" : "on"})

我想过滤“状态:正在使用”和其他值,并对快照执行类似操作。我找不到合适的过滤器名称。不允许使用“state”或“attachment.state”等过滤器:

The filter 'attachment.state' is invalid

正确的过滤器名称是什么,或者我在哪里可以找到它们?

答案1

我相信你可以致电ec2-描述-快照使用 VolumeId 并从该卷获取有关快照的更多信息。

答案2

原始发帖人询问aws ec2 describe-volumes哪个工具与 不同ec2-describe-volumes。可以在 awscli describe-volumes 上找到信息这里

参考 OP 的问题,这里是过滤器列表:

--filters(列表)

One or more filters.

    attachment.attach-time - The time stamp when the attachment initiated.
    attachment.delete-on-termination - Whether the volume is deleted on instance termination.
    attachment.device - The device name that is exposed to the instance (for example, /dev/sda1 ).
    attachment.instance-id - The ID of the instance the volume is attached to.
    attachment.status - The attachment state (attaching | attached | detaching | detached ).
    availability-zone - The Availability Zone in which the volume was created.
    create-time - The time stamp when the volume was created.
    encrypted - The encryption status of the volume.
    size - The size of the volume, in GiB.
    snapshot-id - The snapshot from which the volume was created.
    status - The status of the volume (creating | available | in-use | deleting | deleted | error ).
    tag :key =*value* - The key/value combination of a tag assigned to the resource.
    tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag :key =*value* filter.
    tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.
    volume-id - The volume ID.
    volume-type - The Amazon EBS volume type. This can be gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, or standard for Magnetic volumes.

相关内容