Как запустить экземпляр EC2 с предварительно настроенным AWS Alarm

Я не хочу убивать конкретный случай, когда некоторые из его показателей потребления оборудования достигают определенного уровня. Если я создаю сигнал тревоги для масштабирующей группы (например, установив максимальный порог потребления процессора>=50), он убьет самый старый экземпляр, а не тот, который плохо себя ведет. Один из способов убить конкретный экземпляр - создать для него сигнал тревоги, а не создать его для группы масштабирования. Однако, если я запускаю новый экземпляр (с автоматическим масштабированием), у этого нового экземпляра не будет тревоги.

Есть ли способ запуска экземпляров с предварительно настроенными аварийными сигналами уровня ec2?

1 ответ

AWS::CloudWatch::Alarm от Cloudformation полезен для настройки машинно- зависимых сигналов тревоги. Это особенно здорово в сочетании с автомасштабированием, ELB и EC2. Вот фрагмент, используемый с группой автоматического масштабирования. Возможно, кто-то может предложить редактирование, чтобы привести пример для EC2.

"appCPUAlarmHigh": {
  "Type": "AWS::CloudWatch::Alarm",
  "Properties": {
    "EvaluationPeriods": "7",
    "Dimensions": [
      {
        "Name": "AutoScalingGroupName",
        "Value": {
          "Ref": "appServerGroup"
        }
      }
    ],
    "AlarmActions": [
      {
        "Ref": "appStatusTopic"
      }
    ],
    "AlarmDescription": "Notify if CPU high for >  7m",
    "Namespace": "AWS/EC2",
    "Period": "60",
    "ComparisonOperator": "GreaterThanThreshold",
    "Statistic": "Average",
    "Threshold": "50",
    "MetricName": "CPUUtilization"
  }
},

В противном случае вы можете выполнить что-то с помощью Cloudinit и mon-enable-alarm-actions. Или OpsWorks, использующий, я не знаю.

Другие вопросы по тегам