Infraestrutura automatizada: Escalando aplicações com eficiência operacional
Tags: carrer
Published: 2020-07-08 11:56:13

---
title: Infraestrutura automatizada: Escalando aplicações com eficiência operacional
published: true
date: 2020-06-22 17:45:31 UTC
tags: carrer
canonical_url: https://eusoudev.com.br/infraestrutura-automatizada/
---

Tempo de leitura:<small> 3 minutos</small>

 

À 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

![](https://eusoudev.com.br/wp-content/uploads/2020/06/exemplo-terraform.png)

[O código encontrado aqui](//github.com/guisesterheim/TerraformAndPackerSample) 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](//www.linkedin.com/in/gsesterheim/) | [GitHub](//github.com/guisesterheim) | [Site](//sesterheim.com.br)

The post [Infraestrutura automatizada: Escalando aplicações com eficiência operacional](//eusoudev.com.br/infraestrutura-automatizada/) appeared first on [Eu Sou Dev](//eusoudev.com.br).