Verificar o tempo de atividade para clusters e instâncias do Aurora
Você pode verificar e monitorar o período de tempo desde a última reinicialização para cada instância de banco de dados em seu cluster do Aurora. A métrica EngineUptime
do Amazon CloudWatch informa o número de segundos desde a última vez que uma instância de banco de dados foi iniciada. Você pode examinar essa métrica em um momento para descobrir o tempo de atividade da instância de banco de dados. Você também pode monitorar essa métrica ao longo do tempo para detectar quando a instância é reinicializada.
Você também pode examinar a métrica EngineUptime
no nível do cluster. As dimensões Minimum
e Maximum
relatam os menores e maiores valores de tempo de atividade para todas as instâncias de banco de dados no cluster. Para verificar o momento mais recente em que qualquer instância do leitor em um cluster foi reinicializada ou reiniciada por outro motivo, monitore a métrica no nível do cluster usando a dimensão Minimum
. Para verificar qual instância no cluster passou mais tempo sem uma reinicialização, monitore a métrica no nível do cluster usando a dimensão Maximum
. Por exemplo, talvez você queira confirmar que todas as instâncias de banco de dados no cluster foram reinicializadas após uma alteração de configuração.
dica
Para monitoramento de longo prazo, recomendamos monitorar a métrica EngineUptime
para instâncias individuais em vez de no nível do cluster. A métrica EngineUptime
no nível do cluster é definida como zero quando uma nova instância de banco de dados é adicionada ao cluster. Essas alterações de cluster podem ocorrer como parte das operações de manutenção e escalabilidade, como as realizadas pelo Auto Scaling.
Os exemplos da CLI a seguir mostram como examinar a métrica EngineUptime
para as instâncias do gravador e do leitor em um cluster. Os exemplos usam um cluster chamado tpch100g
. Este cluster tem uma instância de banco de dados do gravador instance-1234
. Ele também tem duas instâncias de banco de dados de leitor, instance-7448
e instance-6305
.
Primeiro, o comando reboot-db-instance
reinicializa uma das instâncias do leitor. O comando wait
aguarda até que a instância termine a reinicialização.
$ aws rds reboot-db-instance --db-instance-identifier instance-6305 { "DBInstance": { "DBInstanceIdentifier": "instance-6305", "DBInstanceStatus": "rebooting", ... $ aws rds wait db-instance-available --db-instance-id instance-6305
O comando get-metric-statistics
do CloudWatch examina a métrica EngineUptime
nos últimos cinco minutos em intervalos de um minuto. O tempo de atividade da instância instance-6305
é redefinido para zero e começa a contar novamente. Esse exemplo da AWS CLI para Linux usa substituição de variáveis $()
para inserir os carimbos de data/hora apropriados nos comandos da CLI. Ele também usa o comando sort
para Linux para ordenar a saída no momento em que a métrica foi coletada. Esse valor de carimbo de data/hora é o terceiro campo em cada linha de saída.
$ aws cloudwatch get-metric-statistics --metric-name "EngineUptime" \ --start-time "$(date -d '5 minutes ago')" --end-time "$(date -d 'now')" \ --period 60 --namespace "AWS/RDS" --statistics Maximum \ --dimensions Name=DBInstanceIdentifier,Value=instance-6305 --output text \ | sort -k 3 EngineUptime DATAPOINTS 231.0 2021-03-16T18:19:00+00:00 Seconds DATAPOINTS 291.0 2021-03-16T18:20:00+00:00 Seconds DATAPOINTS 351.0 2021-03-16T18:21:00+00:00 Seconds DATAPOINTS 411.0 2021-03-16T18:22:00+00:00 Seconds DATAPOINTS 471.0 2021-03-16T18:23:00+00:00 Seconds
O tempo de atividade mínimo para o cluster é redefinido para zero porque uma das instâncias no cluster foi reinicializada. O tempo de atividade máximo para o cluster não é redefinido porque pelo menos uma das instâncias de banco de dados no cluster permaneceu disponível.
$ aws cloudwatch get-metric-statistics --metric-name "EngineUptime" \ --start-time "$(date -d '5 minutes ago')" --end-time "$(date -d 'now')" \ --period 60 --namespace "AWS/RDS" --statistics Minimum \ --dimensions Name=DBClusterIdentifier,Value=tpch100g --output text \ | sort -k 3 EngineUptime DATAPOINTS 63099.0 2021-03-16T18:12:00+00:00 Seconds DATAPOINTS 63159.0 2021-03-16T18:13:00+00:00 Seconds DATAPOINTS 63219.0 2021-03-16T18:14:00+00:00 Seconds DATAPOINTS 63279.0 2021-03-16T18:15:00+00:00 Seconds DATAPOINTS 51.0 2021-03-16T18:16:00+00:00 Seconds $ aws cloudwatch get-metric-statistics --metric-name "EngineUptime" \ --start-time "$(date -d '5 minutes ago')" --end-time "$(date -d 'now')" \ --period 60 --namespace "AWS/RDS" --statistics Maximum \ --dimensions Name=DBClusterIdentifier,Value=tpch100g --output text \ | sort -k 3 EngineUptime DATAPOINTS 63389.0 2021-03-16T18:16:00+00:00 Seconds DATAPOINTS 63449.0 2021-03-16T18:17:00+00:00 Seconds DATAPOINTS 63509.0 2021-03-16T18:18:00+00:00 Seconds DATAPOINTS 63569.0 2021-03-16T18:19:00+00:00 Seconds DATAPOINTS 63629.0 2021-03-16T18:20:00+00:00 Seconds
Em seguida, outro comando reboot-db-instance
reinicializa a instância do gravador do cluster. Outro comando wait
pausa até que a instância do gravador termine a reinicialização.
$ aws rds reboot-db-instance --db-instance-identifier instance-1234 { "DBInstanceIdentifier": "instance-1234", "DBInstanceStatus": "rebooting", ... $ aws rds wait db-instance-available --db-instance-id instance-1234
Agora, a métrica EngineUptime
para a instância do gravador mostra que a instância instance-1234
foi reinicializada recentemente. A instância do leitor instance-6305
também foi reinicializada automaticamente junto com a instância do gravador. Este cluster está executando o Aurora MySQL 2.09, o que não mantém as instâncias do leitor em execução à medida que a instância do gravador é reinicializada.
$ aws cloudwatch get-metric-statistics --metric-name "EngineUptime" \ --start-time "$(date -d '5 minutes ago')" --end-time "$(date -d 'now')" \ --period 60 --namespace "AWS/RDS" --statistics Maximum \ --dimensions Name=DBInstanceIdentifier,Value=instance-1234 --output text \ | sort -k 3 EngineUptime DATAPOINTS 63749.0 2021-03-16T18:22:00+00:00 Seconds DATAPOINTS 63809.0 2021-03-16T18:23:00+00:00 Seconds DATAPOINTS 63869.0 2021-03-16T18:24:00+00:00 Seconds DATAPOINTS 41.0 2021-03-16T18:25:00+00:00 Seconds DATAPOINTS 101.0 2021-03-16T18:26:00+00:00 Seconds $ aws cloudwatch get-metric-statistics --metric-name "EngineUptime" \ --start-time "$(date -d '5 minutes ago')" --end-time "$(date -d 'now')" \ --period 60 --namespace "AWS/RDS" --statistics Maximum \ --dimensions Name=DBInstanceIdentifier,Value=instance-6305 --output text \ | sort -k 3 EngineUptime DATAPOINTS 411.0 2021-03-16T18:22:00+00:00 Seconds DATAPOINTS 471.0 2021-03-16T18:23:00+00:00 Seconds DATAPOINTS 531.0 2021-03-16T18:24:00+00:00 Seconds DATAPOINTS 49.0 2021-03-16T18:26:00+00:00 Seconds