Thank you for reading this post, don't forget to subscribe!
AWS Trusted Advisor – инструмент от AWS, позволяющий проверить аккаунт и используемые в нём ресурсы на предмет оптимизации расходов, производительности, безопасности и отказоустойчивости.
При этом доступные вам рекомендации зависят от типа Support Plan вашего аккаунта. К счастью, у нас Premium, так что есть возможность показать все детали Trusted Advisor.
Общая документация тут – Проверки AWS Trusted Advisor на основе рекомендаций, и документация по категориям и проверкам в каждой из них – AWS Trusted Advisor check reference.
Приступим.
Переходим в AWS Console > Trusted Adisor, попадаем в дашборд, где собраны основные рекомендации:
Тут:
- Action recommended: Trusted Advisor считает, что требуется вмешательство и настройка какого-то сервиса. например, при обнаружении IAM, которая требует немедленного фикса
- Investigation recommended: Trusted Advisor предполагает, что требуется вмешательство и настройка какого-то сервиса, например – достижение квоты каким-то ресурсом
- Excluded items: исключения из проверок
А с левой стороны видим доступные категории проверок – оптимизация расходов, производительность, безопасность и так далее.
Cost optimization
Начнём с Cost optimization, как наиболее интересная сейчас для тема.
Переходим в категорию, и видим список рекомендаций:
К примеру, раскроем рекомендации по Amazon RDS Idle DB Instances:
И видим пачку простаивающих без нагрузки и даже без подключений серверов RDS.
Откроем один их них – проверим что там:
В самом деле – сервер простаивает, а значит есть повод его или удалить, или уменьшить тип инстанса.
Аналогичная проверка для EC2:
Performance
Как понятно из названия – тут собраны рекомендации по производительности сервисов:
И рассмотрим отсюда например Large Number of EC2 Security Group Rules Applied to an Instance – вполне себе реальная проблема:
Security
Посмотрим, что Trusted Advisor умеет в Security:
Ожидаемо – предупреждение о том, что у нас не ротейтятся IAM-ключи, и это проблема.
Также, весьма занимательным оказался блок Security Groups – Unrestricted Access:
И в самом деле – в SecurityGroup (SG) открыт полный доступ в мир:
Как найти ресурс, к которому подключена AWS SecurityGroup?
Копируем ID группы, и переходим в Network Interfaces, где по SG ID находим интерфейс:
Справа видим Instance ID, к которому подключен ENI (AWS Elastic network Interface) и, соответственно, сама SecurityGroup.
В случае ошибки “No matching network interfaces found” – группа не подключена ни к какому интефрейсу, и её можно удалять.
Полезным может оказаться и проверка сообщений про LoadBalancer Listeners, которые не используют SSL:
Fault tolerance
Тут, ожидаемо, результаты проверок на отказоустойчивость:
К примеру, у нас есть сервера баз данных, которые располагаются в одной зоне доступности, о чём и предупреждает Trusted Advisor:
Service limits
И последняя категория тут – Service limits, где сообщается о том, что какой-либо из сервисов уже достиг лимита, или скоро его достигнет:
В случае с VPC – теперь мы предупрежены, что в us-east-1 мы не сможем создать новые VPC:
Preferences
В Настройках можно настроить отправку писем с результатами последних проверок:
Кроме того, можно настроить алерты CloudWatch, и отправлять сообщения в, например, Slack