Você pode correr DescribeInstances()
em todas as regiões.
Além disso, você pode:
- Automatize-o através do Lambda e Cloud watch.
- Crie um endpoint api usando Lambda e api gateway e use-o em seu código
Uma amostra em NodeJS:
- Crie uma matriz de regiões (pontos de extremidade). [também pode usar AWS describeRegions () ]
var regionNames = ['us-west-1', 'us-west-2', 'us-east-1', 'eu-west-1', 'eu-central-1', 'sa-east-1 ',' ap-sudeste-1 ',' ap-sudeste-2 ',' ap-northeast-1 ',' ap-northeast-2 '];
regionNames.forEach (function (region) {
getInstances (região);
});
- Então, em
getInstances
função, DescribeInstances()
pode ser chamado.
function getInstances (region) {
EC2.describeInstances (params, function (err, data) {
if (err) return console.log ("Erro ao conectar a AWS, nenhuma instância encontrada!");
data.Reservations.forEach (função (reserva) {
// faça qualquer operação pretendida
});
}
E fora do curso, sinta-se à vontade para usar o ES6 e superior.
Eu escrevi uma função lambda para obter a você todas as instâncias em qualquer estado [executando, interrompido] e de quaisquer regiões, também fornecerá detalhes sobre o tipo de instância e vários outros parâmetros.
O script é executado em todas as regiões e chamadas da AWS DescribeInstances()
para obter as instâncias.
Você só precisa criar uma função lambda com tempo de execução nodejs
. Você pode até criar uma API a partir dele e usá-lo como e quando necessário.
Além disso, você pode ver os documentos oficiais da AWS para DescribeInstances para explorar muitas outras opções.