Поиск инстансов EC2 в API

В веб-консоли AWS EC2 есть окно поиска, позволяющее искать экземпляры по ключевому слову. Похоже, что это ищет множество полей (таких как имя хоста, теги, состояние экземпляра и т. д.) для предоставленного ключевого слова.

Вот пример поиска по ключевому слову «бег». Пользовательский интерфейс показывает фильтр с именем «поиск» со значением поиска «работает». Похоже, что это возвращает экземпляры в состоянии «работает», а также экземпляры с именем «работает», со значением тега «работает», именем хоста «работает» и т. д.

Пример поиска для бега

Доступна ли эта функция через API? Вызов API описания экземпляров имеет фильтры, но похоже, что нет документированного фильтра, соответствующего этому поведению (который выполняет поиск по всем полям, а не только по указанным). Я попробовал фильтр под названием «поиск», но он не работает.


person pfhayes    schedule 21.10.2015    source источник
comment
что вы подразумеваете под поиском по всем полям? Я имею в виду, что вы можете предоставить несколько фильтров. разве это не сработает для вас? образец был бы хорош, чтобы понять вопрос правильно.   -  person Volkan Paksoy    schedule 21.10.2015
comment
Я обновил вопрос более подробно, надеюсь, это ответит на ваш вопрос. Я мог бы просто добавить много фильтров, но мне нужно было бы добавить по одному для каждого возможного ключа фильтра. Кроме того, насколько я понимаю, несколько фильтров объединяются по И, но поведение поискового фильтра является ИЛИ - он вернет экземпляр, если какой-либо из фильтров соответствует   -  person pfhayes    schedule 21.10.2015
comment
ах поймал. благодарю за разъяснение. они могут немного обманывать консоль управления, поскольку у них есть прямой доступ ко всему :-)   -  person Volkan Paksoy    schedule 21.10.2015
comment
Не могли бы вы уточнить, что вы подразумеваете под API? Вы собирались использовать SDK или интерфейс командной строки AWS?   -  person John Rotenstein    schedule 22.10.2015
comment
@JohnRotenstein: Разве и SDK, и CLI не используют один и тот же API под капотом? Я имею в виду, что технически они даже не нужны для вызовов API, но они значительно облегчают жизнь. Может я что-то упускаю...   -  person Volkan Paksoy    schedule 22.10.2015
comment
@Volkan: Да, но я пытался уточнить, хотите ли вы, чтобы CLI выполнял поиск за вас (без кодирования), или вы хотели бы реализовать его в коде с помощью SDK.   -  person John Rotenstein    schedule 22.10.2015


Ответы (2)


Не существует эквивалента API для поиска по всем полям (например, по состоянию, имени, тегу). Однако вы можете эмулировать это, получая информацию обо ВСЕХ экземплярах через API, а затем заставляя ваше приложение фильтровать результаты.

person John Rotenstein    schedule 22.10.2015

Я думаю, что один из способов сделать это - использовать aws ec2 describe-instances (используйте соответствующий API на предпочитаемом вами языке sdk) и выполнить регулярное выражение для фильтрации результатов.

person Tommy    schedule 22.10.2015