Saya sering berpindah instans di antara kawasan yang berbeda dan terkadang saya lupa mematikan instans saya yang sedang berjalan dari kawasan yang berbeda. Saya tidak dapat menemukan cara apa pun untuk melihat semua contoh yang berjalan di konsol Amazon.
Apakah ada cara untuk menampilkan semua instans yang berjalan terlepas dari wilayahnya?
amazon-web-services
amazon-ec2
ec2-ami
JerryGoyal
sumber
sumber
Resource Groups > Tag Editor
sebagai opsi GUI. Lihat jawaban saya di bawah.Jawaban:
Opsi GUI yang tidak jelas adalah
Resource Groups > Tag Editor
. Di sini Anda dapat menemukan semua instance di semua wilayah, meskipun instance tersebut tidak diberi tag.EDIT: Layar ini baru saja didesain ulang dan sekarang memiliki tampilan baru dan opsi "Semua wilayah".
sumber
Saya rasa Anda saat ini tidak dapat melakukan ini di AWS GUI. Namun berikut adalah cara untuk mencantumkan semua instans Anda di semua wilayah dengan AWS CLI:
Diambil dari sini (Jika ingin melihat pembahasan lengkapnya)
Juga, jika Anda mendapatkan file
Anda dapat melakukannya dengan
aws configure set region us-east-1
, terima kasih @Sabuncu atas komentarnya.Memperbarui
Sekarang (pada 2019) perintah cut harus diterapkan di bidang ke-4:
cut -f4
sumber
cut
, Anda dapat menggunakan: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".
- sepertinya menentukan wilayah adalah kebalikan dari apa yang ingin saya lakukanaws configure set region us-east-1
. Kemudian, saat Anda berlariaws ec2 describe-regions
, seharusnya tidak ada masalah. Silakan lihat jawaban: stackoverflow.com/a/46577479/360840 serta jawaban lain di bawah pertanyaan terkait.Solusi @imTachu bekerja dengan baik. Untuk melakukan ini melalui konsol AWS ...
sumber
Pertama, buka konsol Manajemen AWS dan klik grup Sumber daya:
Kemudian cari
Network and Content Delivery
dan klikVPC
:Kemudian temukan Instans berjalan dan perluas lihat semua wilayah. Di sini Anda dapat menemukan semua instance yang berjalan dari semua wilayah:
sumber
Di Konsol
Buka dasbor VPC
https://console.aws.amazon.com/vpc/home
dan klikRunning instances
->See all regions
.Di CLI
Tambahkan ini misalnya ke
.bashrc
. Muat ulangsource ~/.bashrc
, dan jalankanContoh keluaran:
sumber
Setiap kali Anda membuat sumber daya, beri tag dengan nama dan sekarang Anda dapat menggunakan Grup Sumber Daya untuk menemukan semua jenis sumber daya dengan tag nama di semua wilayah.
sumber
Berdasarkan jawaban imTachus tetapi kurang bertele-tele, plus lebih cepat. Anda harus menginstal jq dan aws-cli .
Skrip menjalankan
aws ec2 describe-instances
paralel untuk setiap wilayah (sekarang 15!) Dan hanya mengekstrak bit yang relevan (status, tag, zona ketersediaan) dari keluaran json. Iniset +m
diperlukan agar proses latar belakang tidak melaporkan saat memulai / mengakhiri.Contoh keluaran:
sumber
Setelah membaca semua solusi dan mencoba banyak hal, salah satu yang berhasil untuk saya adalah-
sumber
Anda dapat menjalankan
DescribeInstances()
di semua wilayah.Selain itu, Anda dapat:
Contoh di NodeJS:
getInstances
fungsi,DescribeInstances()
bisa dipanggil.Dan Off Course, silakan gunakan ES6 dan yang lebih baru.
Saya menulis fungsi lambda untuk memberi Anda semua instance dalam keadaan apa pun [berjalan, berhenti] dan dari wilayah mana pun, juga akan memberikan detail tentang jenis instance dan berbagai parameter lainnya.
Skrip berjalan di semua wilayah dan panggilan AWS
DescribeInstances()
, untuk mendapatkan instans.Anda hanya perlu membuat fungsi lambda dengan run-time
nodejs
. Anda bahkan dapat membuat API darinya dan menggunakannya sesuai kebutuhan.Selain itu, Anda dapat melihat Docs For DescribeInstances resmi AWS untuk menjelajahi lebih banyak opsi.
sumber
Saya membuat skrip sumber terbuka yang membantu Anda mencantumkan semua instans AWS. https://github.com/Appnroll/aws-ec2-instances
Itu adalah bagian dari skrip yang mencantumkan instance untuk satu profil yang merekamnya ke dalam database postgreSQL dengan menggunakan
jq
for json parsing:sumber
Skrip saya di bawah ini, berdasarkan berbagai tips dari postingan ini dan di tempat lain. Skrip ini lebih mudah diikuti (setidaknya bagi saya) daripada baris perintah yang panjang.
Skrip mengasumsikan profil kredensial disimpan dalam file yang
~/.aws/credentials
terlihat seperti:Naskah:
sumber
sumber
Berdasarkan kode @hansaplast saya membuat versi ramah Windows yang mendukung banyak profil sebagai argumen. Simpan saja file itu sebagai file cmd atau bat. Anda juga harus memiliki
jq
perintah.sumber
Anda dapat menggunakan alat cli yang dirancang untuk menghitung sumber daya cloud (pemindaian lintas wilayah dan akun) - https://github.com/scopely-devops/skew
Setelah konfigurasi singkat, Anda dapat menggunakan kode berikut untuk mencantumkan semua instans di semua wilayah AWS AS (dengan asumsi 123456789012 adalah nomor akun AWS Anda).
sumber
Alat yang bagus untuk CRUD sumber daya AWS . Temukan [EC2 | RDS | IAM ..] di semua wilayah. Ada dapat melakukan operasi (stop | run | terminate) pada hasil filter.
sumber