[英]AWS BOTO - find volume ID of an ec2 instance using tag
我們為ec2實例定義了標簽。 我們想使用python boto模塊通過使用標簽來獲取volumeId或EBS卷的列表。 已經為該實例創建了標簽。 我們想使用名稱tage,在這種情況下是“dev”並列出與之關聯的EBS卷。 請幫助
最好嘗試編寫一些代碼來嘗試解決問題,然后發布一個特定的問題,如果該代碼不起作用。 如果您在開始時遇到問題,請參考以下提示。
您需要做的第一件事是找到具有表單name=<somevalue>
的特定標記的所有實例。 在boto中,您將使用get_all_instances
方法的filter
參數來完成此操作。 這樣的事情應該有效:
reservations = conn.get_all_instances(filters={'name': ['somevalue']})
這將返回與查詢匹配的Reservation
對象列表。 Reservation
對象內部是一個名為instances
的屬性,它是Instance
對象的列表。
對於該列表中的每個Instance
對象,您將需要查找與該實例關聯的EBS卷。 同樣,您將需要使用filters
參數來完成此操作。 在這種情況下,您需要的過濾器名稱是attachment.instance-id
。
volumes = conn.get_all_volumes(filters={'attachment.instance-id': [instance.id]})
其中instance
是第一次調用返回的Instance
對象之一。 這將返回當前附加到instance
所有EBS卷的Volume
對象列表。
我希望有所幫助。 嘗試編寫代碼然后如果遇到具體問題,請在此處詢問。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.