PERF02-BP01 Avaliar as opções de computação disponíveis
Compreenda como a workload pode se beneficiar do uso de diferentes opções de computação, como instâncias, contêineres e funções.
Resultado desejado: Ao compreender todas as opções de computação disponíveis, você conhecerá oportunidades para aumentar a performance, reduzir custos desnecessários de infraestrutura e diminuir o esforço necessário para manter a workload. Você também pode acelerar seu tempo de entrada no mercado ao implantar novos serviços e recursos.
Antipadrões comuns:
-
Em uma workload de pós-migração, usar a mesma solução de computação que foi usada on-premises.
-
Falta de conhecimento das soluções de computação de nuvem e como essas soluções podem melhorar a performance da computação.
-
Superdimensionar uma solução de computação existente para atender aos requisitos de escalabilidade ou de performance, quando uma solução de computação alternativa se alinharia com as características da sua workload de forma mais exata.
Benefícios do estabelecimento desta prática recomendada: Ao identificar os requisitos de computação e avaliar as soluções de computação disponíveis, as partes interessadas e as equipes de engenharia da empresa compreenderão os benefícios e as limitações de usar a solução de computação selecionada. A solução de computação selecionada deve se ajustar aos critérios de performance da workload. Os principais critérios incluem as necessidades de processamento, os padrões do tráfego, os padrões de acesso aos dados e as necessidades de escalabilidade e de latência.
Nível de exposição a riscos quando esta prática recomendada não for estabelecida: Alto
Orientações para a implementação
Compreenda as soluções de virtualização, conteinerização e gerenciamento que podem beneficiar sua workload e atender aos requisitos de performance. Uma workload pode conter vários tipos de soluções de computação. Cada solução de computação tem características diferentes. Com base na escala da sua workload e nos requisitos de computação, uma solução de computação pode ser selecionada e configurada para atender às suas necessidades. O arquiteto de nuvem deve aprender as vantagens e as desvantagens de instâncias, contêineres e funções. As seguintes etapas ajudarão você a selecionar a solução de computação que corresponda às características de sua workload e requisitos de performance.
Tipo | Servidor | Contêineres | Função |
---|---|---|---|
Serviço da AWS | Amazon Elastic Compute Cloud (Amazon EC2) | Amazon Elastic Container Service (Amazon ECS), Amazon Elastic Kubernetes Service (Amazon EKS) | AWS Lambda |
Características principais | Tem opção dedicada para requisitos de licenças de hardware, opções de posicionamento e uma grande seleção de diferentes famílias de instâncias com base em métricas de computação | Implantação fácil, ambientes consistentes, execuções em instâncias do EC2, escalável | Tempo limite curto (15 minutos ou menos), memória e CPU máximas não são tão altas quanto para outros serviços, camada de hardware gerenciada, escala para milhões de solicitação simultâneas |
Casos de uso comuns | Migrações do tipo mover sem alterações (lift-and-shift), aplicações monolíticas, ambientes híbridos, aplicações empresariais | Microsserviços, ambientes híbridos, | Microsserviços, aplicações orientadas por eventos |
Etapas da implementação:
-
Para selecionar o local em que a solução de computação deve residir, avalie a PERF05-BP06 Escolher o local da sua workload com base nos requisitos de rede. O local limitará os tipos de solução de computação disponíveis para você.
-
Identifique o tipo de solução de computação que funciona com os requisitos de local e das aplicações
-
Amazon Elastic Compute Cloud (Amazon EC2)
instâncias de servidor virtual são fornecidas em uma grande variedade de famílias e de tamanhos diferentes. Elas oferecem uma grande variedade de capacidades, como unidades de estado sólido (SSDs) e unidades de processamento gráfico (GPUs). As instâncias do EC2 oferecem a maior flexibilidade de opções de instâncias. Ao iniciar uma instância do EC2, o tipo de instância especificado determina o hardware da instância. Cada tipo de instância oferece diferentes capacidades de computação, memória e armazenamento. Os tipos de instância são agrupados em famílias de instância conforme essas capacidades. Os casos de uso típicos incluem: execução de aplicações empresariais, computação de alta performance (HPC), treinamento e implantação de aplicações de machine learning e execução de aplicações nativas de nuvem. -
Amazon Elastic Container Service (Amazon ECS)
é um serviço totalmente gerenciado de orquestração de contêineres que permite executar e gerenciar automaticamente contêineres em um cluster de instâncias do EC2 ou instâncias de tecnologia sem servidor usando o AWS Fargate. É possível usar o Amazon ECS com outros serviços, como o Amazon Route 53, o Secrets Manager, o AWS Identity and Access Management (IAM), e o Amazon CloudWatch. O Amazon ECS é recomendado quando sua aplicação é conteinerizada e a equipe de engenharia prefere contêineres do Docker. -
Amazon Elastic Kubernetes Service (Amazon EKS)
é um serviço gerenciado do Kubernetes. É possível optar por executar os clusters do EKS usando o AWS Fargate, eliminando a necessidade de provisionar e de gerenciar servidores. O gerenciamento do Amazon EKS é simplificado devido às integrações com os serviços da AWS, como o Amazon CloudWatch, os grupos do Auto Scaling, o AWS Identity and Access Management (IAM) e a Amazon Virtual Private Cloud (VPC). Ao usar contêineres, use métricas de computação para selecionar o tipo ideal para a sua workload, de forma semelhante a como você usa métricas de computação para selecionar seus tipos de instância do EC2 ou do AWS Fargate. O Amazon EKS é recomendado quando sua aplicação é conteinerizada e a equipe de engenharia prefere contêineres do Kubernetes em vez dos contêineres do Docker. -
Você pode usar o AWS Lambda
para executar código compatível com as opções permitidas de tempo de execução, memória e CPU. Basta fazer upload do seu código, e o AWS Lambda gerenciará tudo o que for necessário para executar e ajustar a escala desse código. É possível configurar o código para ser acionado automaticamente em outros serviços da AWS ou chamado diretamente. O Lambda é recomendado para execuções curtas, arquiteturas de microsserviço desenvolvidas para a nuvem.
-
-
Depois de experimentar a nova solução de computação, planeje a migração e valide as métricas de performance. Esse é um processo contínuo, consulte a PERF02-BP04 Determinar a configuração necessária com o dimensionamento correto.
Nível de esforço para o plano de implementação: Se uma workload estiver sendo movida de uma solução de computação para outra, poderá haver um nível moderado de esforço envolvido na refatoração da aplicação.
Recursos
Documentos relacionados:
Vídeos relacionados:
Exemplos relacionados: