Você sabe o que é DevOps?
Tags: devops
Published: 2022-06-02 14:37:24

## O que é?

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zhmctu4xctnetluh2lgl.png)

 É um movimento cultural que veio pra "atacar" o conflito entre equipe de desenvolvimento e de operação, através de colaboração e uso de uma série de ferramentas para fornecer aos clientes produtos melhores e mais confiáveis. 
 
 Essas equipes usam práticas para automatizar processos que historicamente sempre foram manuais e lentos. As ferramentas ajudam, também, os engenheiros à realizar tarefas independentemente (por exemplo, implantação de código ou provisionamento de infraestrutura) que normalmente exigiriam a ajuda de outras equipes, e isso aumenta ainda mais a velocidade da equipe.

---

## Benefícios?

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/u15d6agwh5rotgchgrfx.png)

#### Velocidade: 

 Operar com velocidade para que possa trazer inovações mais rapidamente, adaptar-se melhor a mercados dinâmicos e tornar-se mais eficiente na geração de resultados comerciais. 
 
#### Entrega rápida:

 Aumentar a frequência e o ritmo de lançamentos para poder inovar e melhorar seu produto mais rapidamente. Quanto mais rápido você puder lançar novos recursos e corrigir erros, maior será a sua agilidade para responder às necessidades dos clientes e criar vantagem competitiva. 

#### Confiabilidade:

Garantir a qualidade das atualizações de aplicativos e alterações de infraestrutura para que você possa entregar com confiança e manter uma experiência positiva para os usuários finais. 

#### Escala:

 Operar e gerenciar processos de infraestrutura e desenvolvimento em escala. A automação e a constância ajudam a gerenciar sistemas complexos ou dinâmicos com eficiência e risco reduzido. Por exemplo, a infraestrutura como código que  ajuda a gerenciar os ambientes de implantação, teste e produção de modo repetido e mais eficiente. 
 
#### Colaboração melhorada:

 Criar equipes mais eficientes, que enfatiza valores como propriedade e responsabilidade, colaborando de perto, compartilhando muitas responsabilidades e combinando seus fluxos de trabalho. Isso reduz ineficiências e economiza tempo.

#### Segurança:

 Operar rapidamente enquanto mantém o controle e preserva a conformidade. Podendo adotar o modelo DevOps sem sacrificar a segurança usando políticas de conformidade automáticas, controles minuciosos e técnicas de gerenciamento de configuração.

---

## Como?

#### Integração e Entrega contínua (CI/CD):

 Na entrega contínua, cada alteração de código é criada, testada e enviada para um ambiente de teste ou preparação, que não pertence à produção. Já na integração contínua, os desenvolvedores, com frequência, juntam as alterações de código em um repositório central e após isso os testes são executados.

 A diferença entre as duas é a presença de uma aprovação manual para atualizar o ambiente de produção. Com a CI, a atualização da produção ocorre automaticamente, sem aprovação explícita. 

#### Microserviços:

 É uma abordagem de projeto para a criação de uma aplicação única como um conjunto de pequenos serviços.

 Cada serviço é executado em seu próprio processo e se comunica com outros serviços por meio de uma interface bem definida usando um mecanismo leve, geralmente uma API.

#### Infraestrutura como código:

 Define os recursos e as topologias do sistema de uma maneira descritiva que permite às equipes gerenciar os recursos da maneira como codificarem. Essas definições também podem ser armazenadas e versionadas em sistemas de controle de versão, onde podem ser revisadas e revertidas.

 A prática de infraestrutura como código ajuda a automatizar a implantação e reduz o risco de erro humano, especialmente para ambientes grandes e complexos. Também, a duplicação de ambientes para diferentes data centers e plataformas em nuvem também se torna mais simples e eficiente.

#### Monitoramento e análie:

 O monitoramento de métricas e logs serve para ver como a performance do aplicativo e da infraestrutura afeta a experiência do usuário final do seu produto. 

#### Comunicação e colaboração:

 O aumento da comunicação e da colaboração é um dos principais aspectos culturais do DevOps pois auxilia em unir fisicamente os fluxos de trabalho e as responsabilidades de desenvolvimento e operações, permitindo que se alinhem mais às metas dos projetos. 

<hr>

### Finalização

Agora que você aprendeu sobre o conceito de DevOps, o próximo passo é aplicá-lo.