Как получить имя экземпляра экземпляра Lightsail - PullRequest
0 голосов
/ 14 февраля 2019

Как мне найти имя "этого" экземпляра Lightsail.«This» - это экземпляр команды 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 

1 Ответ

0 голосов
/ 16 февраля 2019

Имя экземпляра Lightsail можно получить с помощью:

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

В моем случае это было автоматически назначенное имя, когда я запускал экземпляр через консоль управления Lightsail.Я не мог найти способ изменить имя во время запуска.

Интересно, что я не смог найти способ использовать интерфейс командной строки AWS для вывода списка тегов, связанных с экземпляром 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
...