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.
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.
Odpowiedzi:
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ć --filters
opcji, 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: --query
może wymagać najnowszej wersji aws-cli, ale warto ją zdobyć.
Name=tag:Name
--query 'Reservations[].Instances[].[InstanceId]
które działa dla mnie
jq
można użyć tego narzędzia, aby uzyskać podobne wyniki aws --query
jak poniżej: - aws ec2 describe-instances | jq '.Reservations[].Instances[].PrivateIpAddress'
Uwaga na poprzednią .
kropkę.
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