Visão geral do monitoramento de métricas no Amazon RDS - Amazon Relational Database Service

Visão geral do monitoramento de métricas no Amazon RDS

O monitoramento é uma parte importante da manutenção da confiabilidade, da disponibilidade e da performance do Amazon RDS e de suas soluções da AWS. Para depurar mais facilmente falhas de vários pontos, recomendamos coletar dados de monitoramento de todas as partes da sua solução da AWS.

Plano de monitoramento

Antes de iniciar o monitoramento Amazon RDS, crie um plano de monitoramento. Esse plano deve responder às seguintes perguntas:

  • Quais são seus objetivos de monitoramento?

  • Quais recursos você vai monitorar?

  • Com que frequência você vai monitorar esses recursos?

  • Quais ferramentas de monitoramento você usará?

  • Quem realizará o monitoramento das tarefas?

  • Quem deve ser notificado quando algo der errado?

Linha de base de performance

Para atingir suas metas de monitoramento, é necessário estabelecer uma linha de base. Para fazer isso, meça a performance em diferentes condições de carga em vários momentos em seu ambiente do Amazon RDS. É possível monitorar métricas como as seguintes:

  • Taxa de transferência na rede

  • Conexões de cliente

  • E/S para operações de leitura, gravação ou metadados

  • Saldos de crédito intermitentes para suas instâncias de banco de dados

Recomendamos armazenar dados históricos de performance para o Amazon RDS. Usando os dados armazenados, é possível comparar a performance atual com as tendências anteriores. Também é possível distinguir padrões de performance normais de anomalias e criar técnicas para resolver problemas.

Orientações de performance

Em geral, os valores aceitáveis para as métricas de performance dependem do que a aplicação está fazendo em relação à sua linha de base. Investigue variações consistentes ou tendenciais de sua linha de base. Muitas vezes, as métricas a seguir são a origem dos problemas de performance:

  • Alto consumo de CPU ou RAM – valores altos para o consumo de CPU ou RAM podem ser adequados, se estiverem de acordo com seus objetivos em relação ao aplicativo (como taxa de transferência ou concorrência).

  • Consumo de espaço em disco – inspecione o consumo de espaço em disco caso o espaço usado seja consistentemente igual ou superior a 85% do espaço total no disco. Veja se é possível excluir dados da instância ou arquivar dados em um sistema diferente para liberar mais espaço.

  • Tráfego de rede – em relação ao tráfego de rede, fale com o administrador do sistema para entender qual taxa de transferência é esperada para sua rede de domínio e conexão com a Internet. Inspecione o tráfego de rede caso a taxa de transferência seja consistentemente menor do que a esperada.

  • Conexões do banco de dados: se você observar números elevados de conexões de usuários e também diminuições na performance da instância e no tempo de resposta, considere restringir as conexões do banco de dados. O melhor número de conexões de usuários para sua instância de banco de dados varia conforme a classe da instância e a complexidade das operações em execução. Para determinar o número de conexões de banco de dados, associe sua instância de banco de dados a um grupo de parâmetros cujo parâmetro User Connections esteja definido como um valor diferente de 0 (ilimitado). Você pode usar um parameter group existente ou criar um novo. Para obter mais informações, consulte Trabalhar com grupos de parâmetros.

  • Métricas de IOPS – os valores esperados para as métricas de IOPS dependem da especificação do disco e da configuração do servidor, por isso, use sua linha de base para saber os valores típicos. Inspecione caso os valores sejam consistentemente diferentes da sua linha de base. Para obter a melhor performance de IOPS, confira se o seu conjunto de trabalho típico se adéqua à memória para minimizar as operações de leitura e gravação.

Quando a performance estiver fora da linha de base estabelecida, talvez seja necessário fazer alterações para otimizar a disponibilidade do banco de dados para sua workload. Por exemplo, talvez você precise alterar a classe de sua instância de banco de dados. Ou talvez seja necessário alterar o número de instâncias de banco de dados e réplicas de leitura disponíveis para clientes.

Ferramentas de monitoramento

O monitoramento é uma parte importante para manter a confiabilidade, a disponibilidade e a performance do Amazon RDS e suas outras soluções da AWS. A AWS fornece várias ferramentas de monitoramento para observar o Amazon RDS, gerar relatórios quando algo estiver errado e executar ações automáticas quando for apropriado.

Ferramentas de monitoramento automatizadas

Recomendamos que as tarefas de monitoramento sejam automatizadas ao máximo possível.

Status e recomendações de instância do Amazon RDS

É possível usar as seguintes ferramentas automatizadas para supervisionar o Amazon RDS e gerar relatórios quando algo estiver errado:

  • Status da instância do Amazon RDS: exibe detalhes sobre o status atual da instância usando o console do Amazon RDS, a AWS CLI ou a API do RDS.

  • Amazon RDS recomendações — responda a recomendações automatizadas para recursos de banco de dados, como instâncias de banco de dados, réplicas de leitura e grupo de parâmetros de banco de dados. Para obter mais informações, consulte Visualizar e responder às recomendações do Amazon RDS.

Métricas do Amazon CloudWatch para Amazon RDS

O Amazon RDS integra-se ao Amazon CloudWatch para oferecer recursos adicionais de monitoramento.

  • Amazon CloudWatch: esse serviço monitora seus recursos da AWS e as e aplicações executadas na AWS em tempo real. É possível usar os seguintes recursos do Amazon CloudWatch com o Amazon RDS:

    • Métricas do Amazon CloudWatch: o Amazon RDS envia métricas automaticamente para o CloudWatch a cada minuto, para cada banco de dados ativo. Você não recebe cobranças adicionais para métricas do Amazon RDS no CloudWatch. Para obter mais informações, consulte Monitorar métricas do Amazon RDS com o Amazon CloudWatch.

    • Alarmes do Amazon CloudWatch– Você pode assistir a uma única métrica do Amazon RDS em um período de tempo específico. Depois, você pode realizar uma ou mais ações com base no valor da métrica em relação a um limite definido. Para obter mais informações, consulte Monitorar métricas do Amazon RDS com o Amazon CloudWatch.

Performance Insights do Amazon RDS e monitoramento do sistema operacional

É possível usar as seguintes ferramentas automatizadas para monitorar a performance do Amazon RDS:

Serviços integrados

Os seguintes serviços da AWS estão integrados ao Amazon RDS:

  • O Amazon EventBridge é um serviço de barramento de eventos sem servidor que facilita a conexão de aplicações a dados de diversas origens. Para obter mais informações, consulte Monitorar eventos do Amazon RDS.

  • O Amazon CloudWatch Logs permite monitorar, armazenar e acessar os arquivos de log de instâncias do Amazon RDS, do CloudTrail e de outras fontes. Para obter mais informações, consulte Monitorar arquivos de log do Amazon RDS.

  • O AWS CloudTrail captura chamadas de API e eventos relacionados feitos por sua conta da Conta da AWS ou em nome dela e entrega os arquivos de log a um bucket do Amazon S3 que você especificar. Para obter mais informações, consulte Monitorar chamadas de API do Amazon RDSno AWS CloudTrail.

  • O Database Activity Streams é um recurso do Amazon RDS que fornece uma transmissão quase em tempo real da atividade em sua instância de banco de dados Oracle. Para obter mais informações, consulte Monitorar o Amazon RDS com o recurso Database Activity Streams.

Ferramentas de monitoramento manual

É necessário monitorar manualmente os itens que os alarmes do CloudWatch não cobrem. Os painéis do console do Amazon RDS, do CloudWatch do AWS Trusted Advisor e outros painéis do console AWS apresentam uma visão rápida do estado do ambiente da AWS. Recomendamos que você também verifique os arquivos de log de sua instância de banco de dados.

  • Na console do Amazon RDS, é possível monitorar os seguintes itens de seus recursos:

    • O número de conexões a uma instância de banco de dados

    • A quantidade de operações de leitura e gravação em uma instância de banco de dados

    • A quantidade de armazenamento que uma instância de banco de dados está utilizando

    • A quantidade de memória e CPU em uso para uma instância de banco de dados

    • A quantidade de tráfego de rede de e para uma instância de banco de dados

  • No painel do Trusted Advisor, você pode rever as seguintes verificações de otimização de custos, segurança, tolerância a falhas e melhoria de desempenho:

    • Amazon RDS Idle DB Instances

    • Amazon RDS Security Group Access Risk

    • Amazon RDS Backups

    • Amazon RDS Multi-AZ

    Para obter mais informações sobre essas verificações, consulte Melhores práticas do Trusted Advisor (verificações).

  • A página inicial do CloudWatch mostra:

    • Alertas e status atual

    • Gráficos de alertas e recursos

    • Estado de integridade do serviço

    Além disso, é possível usar o CloudWatch para fazer o seguinte:

    • Criar painéis personalizados para monitorar os serviços de seu interesse.

    • Colocar em gráfico dados de métrica para solucionar problemas e descobrir tendências.

    • Pesquise e procure todas as métricas de recursos da AWS.

    • Criar e editar alertas para ser notificado sobre problemas.