Wyszukaj instancję ec2 według nazwy z narzędzia wiersza polecenia aws


32

Mam instancję o nazwie dev-server-03. Jak mogę teraz wyszukiwać wszystkie dev-server-*wystąpienia z wiersza poleceń?

Korzystam z narzędzia aws cli.


To zależy od tego, jak nazwałeś instancję. Czy ustawiłeś nazwę hosta w systemie operacyjnym, na konsoli AWS lub na obu?
Craig Watson,

Tak, w nazwie hosta systemu operacyjnego jest ustawiona ta sama nazwa.
Shiplu Mokaddim,

Odpowiedzi:


55

Zakładając, że stosujesz konwencję umieszczania nazwy instancji w tagu z kluczem „Nazwa” (tak właśnie robi konsola AWS po wprowadzeniu nazwy), możesz użyć --filtersopcji, aby wyświetlić listę instancji z aws-cli:

aws ec2 describe-instances --filters 'Name=tag:Name,Values=dev-server-*'

Jeśli chcesz tylko identyfikatorów instancji tych instancji, możesz użyć:

aws ec2 describe-instances --filters 'Name=tag:Name,Values=dev-server-*' \
  --output text --query 'Reservations[*].Instances[*].InstanceId'

Uwaga: --querymoże wymagać najnowszej wersji aws-cli, ale warto ją zdobyć.


1
Omg, zajęło mi to prawie pół godziny, żeby to Name=tag:Name
rozgryźć

1
Dzięki Eric - uzyskiwałem wiele identyfikatorów instancji w tym samym wierszu, używając twojego zapytania, ale github.com/aws/aws-cli/issues/914#issuecomment-56210312 zasugerował, --query 'Reservations[].Instances[].[InstanceId]które działa dla mnie
jaygooby

3
FWIW, jqmożna użyć tego narzędzia, aby uzyskać podobne wyniki aws --queryjak poniżej: - aws ec2 describe-instances | jq '.Reservations[].Instances[].PrivateIpAddress'Uwaga na poprzednią .kropkę.
MarkHu,

czy potrafisz sprawić, by filtry opisów nie rozróżniały wielkości liter?
red888

3

Możesz dalej filtrować według nazwy, identyfikatora instancji i prywatnego adresu IP poniżej,

aws ec2 describe-instances --filters "Name=tag:Name,Values=*myinstance*" --output json --query 'Reservations[*].Instances[*].[PrivateIpAddress,InstanceId,Tags[?Key==`Name`].Value]' --region us-east-1
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.