Często przełączam instancje między różnymi regionami i czasami zapominam o wyłączeniu uruchomionej instancji z innego regionu. Nie mogłem znaleźć żadnego sposobu, aby zobaczyć wszystkie uruchomione instancje na konsoli Amazon.
Czy istnieje sposób, aby wyświetlić wszystkie uruchomione instancje niezależnie od regionu?
amazon-web-services
amazon-ec2
ec2-ami
JerryGoyal
źródło
źródło
Resource Groups > Tag Editor
jako opcji GUI. Zobacz moją odpowiedź poniżej.Odpowiedzi:
Nieoczywistą opcją GUI jest
Resource Groups > Tag Editor
. Tutaj możesz znaleźć wszystkie instancje we wszystkich regionach, nawet jeśli instancje nie zostały oznaczone.EDYCJA: Ten ekran został niedawno przeprojektowany i ma teraz nowy wygląd oraz opcję „Wszystkie regiony”.
źródło
Nie sądzę, że możesz obecnie to zrobić w GUI AWS. Ale oto sposób na wyświetlenie wszystkich instancji we wszystkich regionach za pomocą interfejsu wiersza polecenia AWS:
Zaczerpnięte stąd (jeśli chcesz zobaczyć pełną dyskusję)
Ponadto, jeśli otrzymujesz
Możesz to zrobić za pomocą
aws configure set region us-east-1
, dzięki @Sabuncu za komentarz.Aktualizacja
Teraz (w 2019 r.) Polecenie cięcia należy zastosować na 4 polu:
cut -f4
źródło
cut
, możesz użyć:aws ec2 describe-regions --query Regions[*].[RegionName] --output text
FOR /F %G IN ('aws ec2 describe-regions --query Regions[*].[RegionName] --output text') DO (aws ec2 describe-instances --region %G)
You must specify a region. You can also configure your region by running "aws configure".
- wydaje się, że określenie regionu jest przeciwieństwem tego, co chcę zrobićaws configure set region us-east-1
. Wtedy biegającaws ec2 describe-regions
nie powinieneś mieć żadnych problemów. Zobacz odpowiedź: stackoverflow.com/a/46577479/360840, a także inne odpowiedzi w ramach powiązanego pytania.Rozwiązanie @imTachu działa dobrze. Aby to zrobić za pomocą konsoli AWS ...
źródło
Najpierw przejdź do konsoli zarządzania AWS i kliknij grupę zasobów:
Następnie znajdź
Network and Content Delivery
i kliknijVPC
:Następnie znajdź Uruchomione instancje i rozwiń wyświetl wszystkie regiony. Tutaj możesz znaleźć wszystkie uruchomione instancje z całego regionu:
źródło
W konsoli
Przejdź do pulpitu nawigacyjnego VPC
https://console.aws.amazon.com/vpc/home
i kliknijRunning instances
->See all regions
.W CLI
Dodaj to na przykład do
.bashrc
. Załaduj ponowniesource ~/.bashrc
i uruchomPrzykładowe dane wyjściowe:
źródło
Za każdym razem, gdy tworzysz zasób, oznacz go nazwą, a teraz możesz używać grup zasobów do znajdowania wszystkich typów zasobów z tagiem nazwy we wszystkich regionach.
źródło
Oparte na odpowiedzi imTachus, ale mniej szczegółowe i szybsze. Musisz mieć zainstalowane jq i aws-cli .
Skrypt działa
aws ec2 describe-instances
równolegle dla każdego regionu (obecnie 15!) I wyodrębnia tylko odpowiednie bity (stan, tagi, strefa dostępności) z danych wyjściowych json.set +m
Potrzebna jest więc procesy tła nie zgłaszają gdy zaczyna / kończy.Przykładowe dane wyjściowe:
źródło
Po przeczytaniu wszystkich rozwiązań i wypróbowaniu wielu rzeczy, ten, który działał dla mnie, to:
źródło
Możesz biegać
DescribeInstances()
we wszystkich regionach.Dodatkowo możesz:
Przykład w NodeJS:
getInstances
funkcjiDescribeInstances()
można wywołać.Poza kursem, nie krępuj się używać wersji ES6 i nowszych.
Napisałem funkcję lambda, aby uzyskać wszystkie instancje w dowolnym stanie [uruchomione, zatrzymane] iz dowolnego regionu, poda również szczegóły dotyczące typu instancji i różnych innych parametrów.
Skrypt działa we wszystkich regionach i wywołaniach AWS
DescribeInstances()
, aby uzyskać instancje.Musisz tylko utworzyć funkcję lambda w czasie wykonywania
nodejs
. Możesz nawet stworzyć z niego API i używać go w razie potrzeby.Ponadto możesz zobaczyć oficjalne dokumenty AWS do opisu informacji, aby poznać wiele innych opcji.
źródło
Stworzyłem skrypt typu open source, który pomoże Ci wyświetlić listę wszystkich instancji AWS. https://github.com/Appnroll/aws-ec2-instances
Jest to część skryptu, która zawiera listę instancji dla jednego profilu rejestrującego je w bazie danych PostgreSQL z wykorzystaniem
jq
do analizy json:źródło
Mój skrypt poniżej, oparty na różnych wskazówkach z tego postu i innych. Skrypt jest łatwiejszy do zrozumienia (przynajmniej dla mnie) niż długie wiersze poleceń.
Skrypt zakłada, że profile poświadczeń są przechowywane w pliku
~/.aws/credentials
wyglądającym mniej więcej tak:Scenariusz:
źródło
źródło
Na podstawie kodu @hansaplast stworzyłem wersję przyjazną dla systemu Windows, która obsługuje wiele profili jako argument. Po prostu zapisz ten plik jako plik cmd lub bat. Musisz też mieć
jq
rozkaz.źródło
Możesz skorzystać z narzędzia CLI przeznaczonego do wyliczania zasobów w chmurze (skanowanie między regionami i kontami) - https://github.com/scopely-devops/skew
Po krótkiej konfiguracji możesz użyć następującego kodu, aby wyświetlić listę wszystkich instancji we wszystkich regionach US AWS (zakładając, że 123456789012 to numer Twojego konta AWS).
źródło
Dobre narzędzie do zasobów CRUD AWS . Znajdź [EC2 | RDS | IAM ..] we wszystkich regionach. Na wynikach filtrów można wykonywać operacje (stop | run | terminate).
źródło