Ec2 örneğini aws komut satırı aracından adına göre arayın


32

Ben bir örneğim var dev-server-03. Şimdi tüm dev-server-*örnekleri komut satırından nasıl arayabilirim ?

Aws cli aracını kullanıyorum.


Bu, örneği nasıl adlandırdığınıza bağlıdır. Ana bilgisayar adını işletim sistemi içinde, AWS konsolunda veya her ikisinde mi ayarladınız?
Craig Watson,

Evet, işletim sistemi ana bilgisayar adının içinde aynı Ad olarak ayarlanmıştır.
Shiplu Mokaddim

Yanıtlar:


55

Örneğin adını "Ad" anahtarına sahip bir etikete koyma kuralını kullandığınızı varsayarak (bu, bir ad girdiğinizde AWS Konsolunun yaptığıdır), ardından --filtersbu örnekleri listelemek için seçeneği kullanabilirsiniz. aws-cli:

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

Sadece bu örneklerin örnek kimliklerini istiyorsanız, kullanabilirsiniz:

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

Not: --queryaws-cli'nin yeni bir sürümünü gerektirebilir, ancak almaya değer.


1
Omg, bunu çözmem neredeyse yarım saatimi aldı ... bu ne kadar garip:Name=tag:Name
lisak

1
Teşekkürler Eric - Sorgunuzu kullanarak aynı satırda birden fazla örnek kimliği alıyordum , ancak github.com/aws/aws-cli/issues/914#issuecomment-56210312--query 'Reservations[].Instances[].[InstanceId] benim için hangisinin işe yaradığını önerdi
20

3
FWIW, jqalet buna benzer sonuçlar elde etmek için kullanılabilir aws --query: - aws ec2 describe-instances | jq '.Reservations[].Instances[].PrivateIpAddress'önceki .noktayı not edin.
MarkHu

Örnekleri filtreler küçük / büyük harf duyarsız yapabilir misiniz?
red888

3

Aşağıdaki ad, örnek kimliği ve özel ip ile filtre uygulayabilirsiniz,

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
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.