Можно бегать DescribeInstances()
по всем регионам.
Дополнительно вы можете:
- Автоматизируйте это с помощью Lambda и Cloud Watch.
- Создайте конечную точку api с помощью Lambda и шлюза api и используйте ее в своем коде
Пример в NodeJS:
- Создание массива регионов (конечных точек). [также можно использовать AWS describeRegions () ]
var regionNames = ['us-west-1', 'us-west-2', 'us-east-1', 'eu-west-1', 'eu-central-1', 'sa-east-1 ',' ап-юго-восток-1 ',' ап-юго-восток-2 ',' ап-северо-восток-1 ',' ап-северо-восток-2 '];
regionNames.forEach (функция (регион) {
getInstances (регион);
});
- Затем в
getInstances
функции DescribeInstances()
можно вызвать.
function getInstances (регион) {
EC2.describeInstances (params, function (err, data) {
if (err) return console.log («Ошибка подключения к AWS, такой экземпляр не найден!»);
data.Reservations.forEach (функция (резервирование) {
// выполняем любую предполагаемую операцию
});
}
И, конечно же, смело используйте ES6 и выше.
Я написал лямбда-функцию, чтобы получить все экземпляры в любом состоянии [запущен, остановлен] и из любых регионов, а также предоставит подробную информацию о типе экземпляра и различных других параметрах.
Скрипт запускается во всех регионах и вызовах AWS DescribeInstances()
для получения экземпляров.
Вам просто нужно создать лямбда-функцию во время выполнения nodejs
. Вы даже можете создать из него API и использовать его по мере необходимости.
Кроме того, вы можете просмотреть официальную документацию AWS для DescribeInstances, чтобы изучить многие другие варианты.