如何获取Lightsail实例的实例名称

问题描述 投票:1回答:1

如何找到“this”Lightsail实例的名称。 “这”是正在执行aws命令的实例。我的下面的脚本不起作用,因为我认为Lightsail只是另一个EC2实例。

#!/bin/bash
InstanceId=`curl -s http://169.254.169.254/latest/meta-data/instance-id`
echo $InstanceId

Region=`aws configure get region`
echo $Region

InstanceName=$(aws ec2 describe-tags --region $Region --filters "Name=resource-id,Values=$InstanceId" "Name=key,Values=Name" --output text | cut -f5)
echo $InstanceName 
amazon-web-services amazon-lightsail
1个回答
1
投票

可以使用以下命令获取Lightsail实例的名称:

aws lightsail get-instances --query instances[].name

在我的例子中,当我通过Lightsail管理控制台启动实例时,这是自动分配的名称。在发布期间我无法找到更改名称的方法。

有趣的是,我找不到使用AWS CLI列出与Lightsail实例关联的标签的方法。例如,我无法检索手动添加到实例的Name标记,并且它出现在Lightsail控制台中。

更新:

经过评论讨论后,我得到了这个工作:

aws lightsail get-instances --query "instances[?contains(supportCode,'`curl -s http://169.254.169.254/latest/meta-data/instance-id`')].name" --output text
© www.soinside.com 2019 - 2024. All rights reserved.