Amazon-Ec2
AWS EC2 描述實例 - 按多個 EC2 標籤過濾?
我正在嘗試使用我的所有 ec2 實例私有 ip 動態創建主機文件映射,以用作我的 ec2 遠端 ssh 伺服器上的 /etc/hosts。
我有實例標記有它們的正常“名稱”,例如。prod-database-01 和“別名”標籤,例如。db-01。目標是能夠在我的 ssh 框中使用“ssh db-01”並擁有正確的映射,即使伺服器剛剛啟動或自動縮放。
對於狀態為“正在執行”的任何實例,即。活動伺服器,我試圖讓 cli 將名稱、別名和私有 IP 地址輸出到 JSON 或類似的東西,然後我可以為其創建一個主機文件。
但是,我一直在嘗試輸出第二個“別名”標籤。
到目前為止,這就是我所擁有的輸出“名稱”、“私有IP”、“狀態”的內容。
想知道如何迭代並輸出額外的別名標籤嗎?
aws ec2 describe-instances --filters "Name=instance-state-name,Values=running" --query 'Reservations[].Instances[].[ [Tags[?Key==
Name].Value][0][0],PrivateIpAddress,State.Name ]' --output json
如果您像執行名稱查詢一樣添加別名標記查詢,它應該可以工作:
aws ec2 describe-instances --filters "Name=instance-state-name,Values=running" --query 'Reservations[].Instances[].[ [Tags[?Key==`Name`].Value][0][0],[Tags[?Key==`Alias`].Value][0][0],PrivateIpAddress,State.Name ]' --output json