Hoje criei um Grupo de AutoScaling com diversas políticas, cada uma com um Alarme associado a uma métrica do CloudWatch. O Grupo AutoScaling lançou duas instâncias, pois era o mínimo que eu exigia para aquele grupo. Ativei meus testes de benchmarking para atingir o novo grupo e a CPUUtilization média combinada subiu acima dos limites que eu havia definido para os alarmes. Observei o histórico de cada um desses alarmes conforme os estados mudavam de INSUFFICIENT_DATA, depois para OK e, finalmente, para ALARM. Como esperado. Então esperei que as Políticas fossem executadas. Os 300 segundos especificados antes da execução irem e virem. Então decidi ver quanto tempo levaria até que as Políticas fossem executadas. Já se passou mais de uma hora e meia e essas políticas ainda não foram executadas.
Fiquei frustrado e apaguei o ASG e todas as Políticas e Alarmes. Decidi que talvez tivesse cometido um erro ao criar as Políticas e Alarmes. Então eu recriei todos eles. Mesmo problema. Os Alarmes estão em estado ALARME e nunca executam as Políticas. Posso executar as Políticas manualmente sem problemas, mas isso vai contra o ponto.
Se faz alguma diferença, criei todas essas coisas no Console AWS. No passado, usei a API para criar ASGs e políticas e esses grupos executam políticas perfeitamente.
Há algo que estou fazendo de errado? (Ou talvez os serviços da AWS estejam apenas com problemas.)
ATUALIZAR:
Tentei isso novamente hoje. Decidi usar a API em vez do Console para ver se havia alguma diferença. O alarme que estou usando acabou de ser atualizado de OK para ALARME há 20 minutos.
CPUUtilization >= 35 for 5 minutes
Actions: In ALARM: For group TEST use policy Scale Out API (Add 1 instance)
Namespace: AWS/EC2
Metric Name: CPUUtilization
Dimensions: AutoScalingGroupName = TEST
Statistic: Average
Period: 5 minutes
19/12/2013 15:13 UTC-7 - Atualização de estado - Alarme atualizado de OK para ALARME
Hora atual: 15h43 UTC-7 (30 minutos desde o alarme)
A ação não foi acionada. Alguma ideia do porquê?
Responder1
Eu fiz essa pergunta noFóruns da Amazone aparentemente há um bug recente na criação de Alarmes que define automaticamente a propriedade "ActionsEnabled" como False.
Da AWS:
We have identified an issue in the AutoScaling console regarding the binding of
AutoScaling policies to CloudWatch alarms and are working on a fix. We will post
an update to this thread once the fix is rolled out. Thanks for bringing this to
our attention.
A solução alternativa por enquanto:
In the meantime, please try calling the DescribeAlarms CloudWatch API. If the
alarms associated with your policies have ActionsEnabled=false, then this could
cause your policies to not be invoked when the alarm is triggered. Please try
calling the PutMetricAlarm CloudWatch API to update ActionsEnabled=true for the
affected alarms, and that should fix the issues you are experiencing.
Confirmei o bug e a solução alternativa com meus próprios alarmes por meio da API.