Tempo de leitura: 3 minutos
À medida que a aplicação começa a escalar, mais ações são necessárias todos os dias para evoluí-la para os novos cenários encontrados. Assim, a automação passa a ser muito útil e também necessária. A infraestrutura automatizada proporciona diversos benefícios para a operação.
Benefícios da infraestrutura automatizada
A infraestrutura automatizada é a solução mais rápida possível para lançar um ambiente para um novo workflow. Economiza tempo para você lançar múltiplos ambientes como PROD, DEV e QA.
Garante que PROD, QA e DEV estejam exatamente iguais. Isto ajudará seus engenheiros a localizar problemas e resolver situações mais rápido.
Infraestrutura imutável – os velhos dias sombrios em que ninguém sabia como um servidor ainda estava funcionando já se foram. Com infraestrutura imutável, pare de usar interferência de humanos para consertar problemas e use somente para alterações emergenciais.
Defina seu workflow como código. Código é mais confiável do que a memória de qualquer pessoa.
Mantenha fácil rastreio sobre as mudanças através do tempo (com isto você também atinge mais cobertura para operações de auditoria ).
Sua infraestrutura-como-código já é documentação válida que você pode revisar e pedir por suporte se necessário.
Automatizando a infraestrutura
Existem algumas ferramentas para automatizar a criação de infraestrutura e cada provedor de cloud tem a sua própria. CloudFormation na AWS, Resource Templates na Azure e Cloud Deployment na Google.
Mas você pode estar em uma organização que quer manter o mínimo possível de lock-in devido a experiências do passado. Então a stack da HashiCorp, especialmente o Terraform, se torna muito útil.
Táticas para uma infraestrutura automatizada
1. Economizando com os ambientes: Tenha seus ambientes de DEV e QA desligados no fim de cada dia para economizar dinheiro na nuvem.
2. Monitorando a infraestrutura: Uma vez que sua infraestrutura pode se alterar durante a execução (upscaling, downscaling, finalização, etc), você pode ter um job olhando para partes específicas da sua aplicação que deveria manter sempre certa configuração ativa.
Exemplo: para sistemas que escala, você pode usar o Terraform para sempre ter uma instância “pré-aquecida” e pronta para ser adicionada a um auto-scaling group quando a aplicação precisar, em vez de ter que esperar pelo tempo de warm-up de toda a configuração da instância.
Uma vez que sua aplicação precisar escalar, aquela instância será adicionada ao auto scaling group e algum tempo após, o Terraform já começará a provisionar uma nova instância pro ativamente para quando a aplicação sofrer um novo pico de consumo.
3. Gerenciamento da configuração : Aplicando o conceito de infraestrutura imutável aqui, você terá uma única fonte da verdade para seu ambiente.
Exemplo : você teve que aplicar um ajuste emergencial em produção para prevenir um erro de acontecer. Logo após esta ação emergencial, você deve atualizar sua infraestrutura-como-código para incluir o ajuste e assim você não correrá o risco de esquecer de replicar o ajuste aos outros ambientes.
4. Orquestração : Digamos que você tem sua infraestrutura usando primariamente a AWS, mas quer usar Google para Machine Learning. Terraform orquestrará a criação deles todos para você. Isto economiza tempo indo até cada console de caa provider e ativando CloudFormation e Cloud Deployment ou ainda outros.
5. Segurança e Compliance : Ter sua infraestrutura como código tornará mais fácil para seu time ter certeza de que estão seguindo todas as definições de segurança e compliance da empresa. O código também é versionável, o que ajuda com operações de auditoria.
Exemplo com Terraform
O código encontrado aqui criará a infraestrutura acima em questão de minutos. Este é um exemplo de Terraform provisionando uma infraestrutura de best practices da AWS usando EC2 para computing. Não essqueça de adicionar o CloudFront e Route53 na sua stack caso queira usar em um ambiente real.
Confira aqui as redes sociais do autor: LinkedIn | GitHub | Site
The post Infraestrutura automatizada: Escalando aplicações com eficiência operacional appeared first on Eu Sou Dev.
Top comments (0)