Поиск по сайту:

Как создать сигнал тревоги для инстанса EC2 с помощью Cloudwatch


На этой странице

  1. Предварительные требования
  2. Что будем делать?
  3. Войти в AWS
  4. Создание темы SNS
  5. Создать будильник
  6. Тестирование: увеличение нагрузки на ЦП в инстансе EC2
  7. Заключение

Cloudwatch относится к службе «Управление и управление» в AWS (Amazon Web Services). Cloudwatch — это служба мониторинга и управления, которую можно использовать для мониторинга служб в AWS и управления ими при выполнении определенных условий. Cloudwatch можно использовать для сбора данных о производительности. и рабочие данные (ЦП, ОЗУ, Network_IN, Network_Out и т. д.) сервисов, доступных на AWS.

Что касается выставления счетов, Cloudwartch предлагает 2 различных варианта: уровень бесплатного пользования и платный уровень. Уровень бесплатного пользования включает в себя базовые показатели мониторинга с периодичностью в 5 минут, а уровень платного уровня позволяет осуществлять мониторинг с периодичностью в 1 минуту. Это лишь небольшая разница между бесплатным уровнем и платным уровнем. Чтобы узнать больше о выставлении счетов, нажмите здесь.

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

Тревога. Тревога используется для выполнения еще одного действия на основе значения метрики или выражения относительно порогового значения за несколько периодов времени.

  • ОК: когда метрика находится в пределах указанного нами диапазона, сигнал находится в состоянии ОК.
  • ТРЕВОГА: когда метрика пересекает пороговое значение, сигнал тревоги переходит в состояние «ТРЕВОГА».
  • INSUFFICIENT_DATA: если данные, необходимые для принятия решения, отсутствуют или являются неполными, сигнал тревоги переходит в состояние \INSUFFICIENT_DATA.

Тема SNS. Это логический канал связи в AWS, по которому отправляются уведомления. Здесь мы будем использовать электронную почту в качестве нашей темы SNS (Simple Notification Service).

Действие EC2. Оповещения Cloudwatch можно использовать для выполнения определенных действий. Здесь мы остановим экземпляр EC2, когда тревога перейдет в состояние «Тревога».

В этой статье мы увидим, как отслеживать загрузку процессора экземпляра EC2. Мы создадим сигнал тревоги и посмотрим, как он может сработать, когда загрузка ЦП превысит указанный предел. Когда этот предел будет достигнут, мы отключим экземпляр EC2, чтобы понять, как действовать при срабатывании тревоги.

Предпосылки

  1. Аккаунт AWS (создайте, если у вас его нет)
  2. Инстанс EC2 (нажмите здесь, чтобы научиться создавать инстанс EC2, если у вас его нет или вы хотите научиться этому)

Что мы будем делать?

  1. Войдите в AWS.
  2. Создайте тему SNS.
  3. Создайте будильник.
  4. Увеличить нагрузку на ЦП экземпляра EC2.

Войти в АВС

  1. Нажмите здесь, чтобы перейти на страницу входа в AWS.

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

После успешного входа в AWS мы увидим главную консоль со всеми перечисленными ниже службами.

Создайте тему SNS

Чтобы создать тему SNS, в которую мы будем отправлять уведомления, нажмите «Услуги» и найдите SNS. Нажмите «Простая служба уведомлений». Здесь мы создадим тему SNS и добавим Email, на который будут отправляться уведомления. Запомните название темы, которую мы собираемся дать, это потребуется на следующем шаге.

Нажмите «Создать тему», чтобы создать тему «Простая служба уведомлений».

Дайте имя создаваемой теме, здесь это «my-sns-topic», по которой будут отправляться уведомления. Отображаемое имя не является обязательным и может быть оставлено как есть. Другие настройки, такие как шифрование, политика доступа и т. д., являются дополнительными. и мы не увидим их в этой статье, и их можно игнорировать для создания простого будильника.Прокрутите страницу вниз и нажмите «Создать тему». Это просто создаст тему. Осталось добавить канал связи.

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

Чтобы создать подписку, нажмите «Создать подписку».

Выберите ARN темы, которую мы создали на предыдущем шаге, и выберите протокол в качестве электронной почты (канал) в раскрывающемся меню. Укажите свой адрес электронной почты, на который необходимо отправлять уведомления. Нажмите «Создать подписку», чтобы завершить этот шаг. После того, как вы оформите подписку, вы получите электронное письмо от AWS с просьбой подписаться на тему. Если мы не подпишемся, мы не будем получать уведомления на нашу электронную почту. Так что не забудьте подписаться к теме.

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

Создать будильник

Теперь, чтобы создать будильник, нажмите «Службы» и найдите «Cloudwatch», щелкните по нему, чтобы выбрать.

Вы увидите следующий экран. Теперь нажмите «Тревоги» на левой панели.

Нажмите «Создать будильник».

Нажмите «Выбрать показатели».

В разделе \Все показатели выберите EC2.

Нажмите «Показатели перед экземпляром».

Выберите «CPUUtilization», а затем нажмите «Выбрать показатель».

Теперь выберите идентификатор экземпляра, для которого необходимо установить сигнал тревоги, и измените период на 1 минуту, чтобы мы могли протестировать сигнал тревоги, не теряя много времени.

Вы можете попробовать различные метрики и настройки после того, как освоите этот процесс.

Вот часть, которая позволяет нам установить условие, здесь мы определим пороговое значение как «10». Это означает, что если загрузка ЦП превысит 10 % в течение 1 минуты, сработает сигнализация.

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

Наряду с отправкой уведомления мы также предпримем определенное действие на этом экземпляре EC2, здесь мы остановим экземпляр, когда тревога перейдет в состояние  \Тревога. Вы можете выбрать любое действие по вашему выбору. Нажмите Далее. ».

Добавьте имя будильника, которое будет отправлено в качестве темы электронной почты, также может быть отправлена дополнительная информация. Нажмите «Далее».

Просмотрите конфигурацию и нажмите «Создать будильник».

И здесь заканчивается полная настройка настройки будильника, который будет отправлять уведомление в тему SNS при выполнении условия. Подождите некоторое время, и будильник будет готов к мониторингу экземпляра EC2.

Тестирование: увеличение нагрузки на ЦП на инстансе EC2

Чтобы вызвать тревогу вручную, мы увеличим нагрузку на инстанс EC2.

Для этого сначала нам нужно установить необходимый стрессовый пакет. Найдите следующие шаги, чтобы установить «стресс» на Ubuntu 18.04.

sudo apt-get update
apt-get install stress

Теперь мы увеличим нагрузку до 50% на 60 секунд подряд. Это вызовет тревогу и остановит экземпляр EC2 .

stress --cpu  50 --timeout 120

Как только условие будет выполнено, вы получите уведомление, и экземпляр будет снят.

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

В результате этого и из-за действия, которое мы указали на предыдущих шагах, экземпляр EC2 завершается.

Заключение

В этой статье мы научились создавать тему SNS, подписку и будильник. Мы также увидели, как можно вручную увеличить загрузку ЦП, чтобы активировать сигнал тревоги, который, в свою очередь, отправляет уведомление по каналу электронной почты.