Diagnosticar (e evitar) os 3 principais problemas do AWS EC2
Há um número impressionante de empresas desenvolvendo seus aplicativos principais em torno das ofertas de nuvem da Amazon Web Services, como o Elastic Compute Cloud (EC2). Em 2010, a Amazon relatou uma taxa de crescimento EC2 de 35%. Ele tem sido usado para tudo, desde a criação de um cluster de supercomputação sob demanda para pesquisas farmacêuticas até o reforço do back-end para o aplicativo de reconhecimento de música Shazam.
EC2 é extremamente útil para equipes de TI de negócios que procuram reunir poder de computação massivo sem comprar infraestrutura física e para aqueles que devem se preparar para picos regulares na demanda do cliente. Dito isso, o EC2 é uma ferramenta como qualquer outra. É propenso a ser mal utilizado ou mal configurado e, se isso ocorrer, seu negócio pode ficar sem lugar para escalar. Aqui estão como evitar os erros mais comuns do EC2 antes que seu aplicativo comece a travar.
1. Latência de armazenamento confusa
Os volumes de armazenamento do Amazon EC2 (chamados de Elastic Block Storage ou EBS) vêm em dois sabores. Os volumes padrão fornecem dados aproximadamente na mesma taxa que um disco rígido de desktop padrão, mas os volumes provisionados são projetados para fornecer dados muito mais rápido. Se você precisa de uma taxa de transferência de até 4.000 IOPS (operações de entrada / saída por segundo), os volumes provisionados podem fazer isso para você, supondo que você passe por vários obstáculos.
Por exemplo, a instância em uso deve ser compatível com o número de IOPS de que você precisa. Você precisa definir o tamanho do bloco para 16 KB ou menos, e os blocos devem ter sido acessados pelo menos uma vez. Seus volumes ficarão mais lentos se um backup estiver prestes a ser executado. Por último, o Amazon EC2 aparentemente não inclui uma ferramenta que fornecerá dados IOPS em tempo real de um determinado volume (embora isso possa ser calculado usando aplicativos de monitoramento de terceiros).
Esta última restrição pode levar a algumas dificuldades. É possível que aconteça o seguinte:
- O IOPS aumenta sem o conhecimento do administrador até atingir o limite de um volume,
- As operações subsequentemente começam a se enfileirar,
- Todo o aplicativo é então limitado pela taxa do EBS,
- O aplicativo falha totalmente.
Corrigir esse problema significa encontrar outras maneiras de rastrear IOPS. A métrica VolumeQueueLength rastreia o número de solicitações de E / S pendentes. Se você achar que os volumes do EBS estão diminuindo e encontrar um VolumeQueueLength associado alto, isso pode indicar um problema com IOPS.
2. Instâncias EC2 inativas
A Amazon agora pode cobrar por segundo pelo uso de uma instância EC2. Para algumas empresas - por exemplo, aquelas que precisam usar menos de dois minutos de capacidade flexível por vez - isso representa um bom negócio. Para outros casos, pode representar um gotejamento lento de dinheiro desperdiçado. Ambientes de teste restantes, aplicativos de baixo desempenho e outros casos de uso se prestam a instâncias EC2 subutilizadas. Como você os rastreia?
As métricas são uma forma de resolver esse problema, mas são um alvo móvel. Diferentes aplicativos utilizam diferentes quantidades de CPU, por exemplo, então você não pode simplesmente olhar para a utilização da CPU para ver onde estão os de baixo desempenho. Você precisa eliminar as instâncias em que todas as métricas de uso são baixas, onde "baixo" significa "inferior à utilização da linha de base de todas as suas instâncias EC2". As instâncias com métricas de uso baixas em toda a linha podem ser reduzidas ou consolidadas.
3. Vazamentos de memória EC2
É possível que as instâncias do EC2 fiquem sem memória. Como algumas instâncias do EC2 não incluem volumes de troca, os aplicativos associados não serão capazes de liberar memória ao mesmo tempo em que está sendo alocado. Como isso ocorre em momentos de uso especialmente pesado de aplicativos, é possível que o EC2 congele enquanto está passando por uma carga de trabalho de pico - frustrando mais ou menos completamente o propósito de comprar instâncias do EC2 em primeiro lugar.
Como é o caso do IOPS, pode ser difícil ver sob o capô do EC2 para descobrir quais aplicativos estão usando muita memória. Embora o EC2 mate automaticamente os processos que consomem muita memória, é melhor não ter que encerrar esses processos em primeiro lugar. Também é possível adicionar mais instâncias EC2 para funcionar como um volume de swap ou como failover no caso de um processo vital ser eliminado. Adicionar essas instâncias é caro, no entanto. Existe uma maneira melhor.
Monitore AWS EC2 com AppNeta
Uma coisa é certa - as instâncias do AWS EC2 não oferecem aos administradores muitas ferramentas integradas para visualizar o desempenho. A programação inteligente, o planejamento de failover e o monitoramento manual de implementações podem levar você até certo ponto. O AppNeta oferece uma solução de visibilidade de desempenho para AWS que permite que os administradores busquem erros proativamente.
Dê uma olhada dentro do Amazon SDN (sim, é realmente possível) e entenda os gargalos e desacelerações com clareza instantânea. Para obter mais informações, experimente nossa demonstração hoje.
Computação em Nuvem
- Ferramentas de monitoramento da AWS — Bridging the Gap
- Qual é a diferença entre nuvem e virtualização?
- Nuvem e como ela está mudando o mundo da TI
- As 5 principais práticas de segurança para backup da AWS
- Problemas legais em computação em nuvem e suas soluções
- As 5 ferramentas em nuvem da AWS que você precisará para ter sucesso
- As 5 melhores certificações e cursos MS Azure na Índia
- Cinco principais certificações e cursos da AWS na Índia
- Quanto custa a certificação DevOps da AWS?
- Qual é a diferença entre hospedagem na web e hospedagem na nuvem?