Назад | Перейти на главную страницу

Автоматическая пометка инстансов EC2 в AWS (только для серверов Windows)

Я ищу совета от сообщества serverfault.

В ближайшие несколько дней мы запускаем несколько новых экземпляров AWS (Windows Server 2008/2012). У нас есть соглашение об именах для AWS и теги, чтобы мы могли отслеживать владельца, дату создания, присоединение к домену и центр затрат.

Я пытаюсь найти хороший метод автоматической пометки экземпляров.

Пример использования будет выглядеть так:

Скрипт (powershell / или какое-то приложение) будет опрашивать AWS каждую ночь в полночь и искать экземпляры, в которых отсутствуют теги. Как только экземпляры будут найдены, он попытается добавить IP-адрес экземпляра в качестве имени AWS и заранее определенный набор тегов по умолчанию, чтобы отслеживать ранее «немаркированные» экземпляры.

Кто-нибудь знаком с этим? Я не очень хорошо пишу сценарии, но хочу попробовать, но не знаю, где искать.

Спасибо

Во-первых, прежде чем я перейду к настоящему ответу, я объясню, почему я не отвечаю прямо на ваш вопрос. Конечно, вы могли бы написать сценарий, который бы делал то, что вы хотели. Это решило бы этот проблема, но ничего не сделает для решения десятков других потенциальных проблем, с которыми вы рано или поздно столкнетесь.

Итак, вот настоящий ответ ...


При использовании AWS для чего-нибудь серьезного вы нарушили самое важное правило: веб-консоль предназначена для только осмотр, без изменений. При использовании веб-консоли просто слишком легко забыть шаги, что-то напутать, завершить работу не того экземпляра и т. Д.

При создании экземпляров вы и ваши сотрудники должны только использовать одну из многих технологий, которые AWS предоставляет для создания ресурсов контролируемым, надежным и повторяемым образом.

По крайней мере, познакомьтесь с Инструменты AWS Powershell. После того, как вы ознакомитесь с ними, создайте, опубликуйте и распространите среди своих сотрудников стандартный метод взаимодействия с AWS.

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

Кроме того, убедитесь, что все ваши сотрудники используют их собственный Пользователь IAM. Ни при каких обстоятельствах не разрешайте никому, кроме владельца учетной записи, иметь корневые учетные данные учетной записи - даже этот человек должен использовать эти учетные данные только для минимума задач, вместо этого также используя пользователя IAM.

Или, если вы уже находитесь под водой, используйте это: https://blog.gorillastack.com/gorillastack-presents-auto-tag/

Или совсем недавно: вторая часть этого поста: https://aws.amazon.com/blogs/security/how-to-automatically-tag-amazon-ec2-resources-in-response-to-api-events/

Архитектура подразумевает следующее: 1. -Лямбда-функция с ролью IAM и политиками с разрешениями на теги ваших ресурсов / экземпляров 2.-Способ запуска лямбда-функции на основе события (создание экземпляра)

Вот основное различие между решением 1 и решением 2.

Шаг 2. Способ запуска лямбда-функции на основе события (создание экземпляра)

Вариант 1. Лямбда-функция ПРОСЛУШАЕТ журналы Cloud Trail в сегменте AWS S3 Cloudtrail: вы определяете имя и регион сегмента в разделе «Регион-> CloudTrail-> Добавить трейл».

Вариант 2. Функция Lambda запускается непосредственно событиями CloudWatch, которые необходимо создать и связать с Lambda. Затем фильтрует событие, чтобы пометить экземпляр / ресурс.

Помните, что второе решение выходит за рамки простой маркировки, поскольку они используют теги для скрытой цели.