SlideShare uma empresa Scribd logo
CICLOS DE VIDA
DEVOPS
PEDRO FERREIRA
ROMEU
GIULIANO
GALVÃO
PROJETO E DESENVOLVIMENTO DE SOFTWARE II
UNIVERSIDADE FEDERAL DO RIO GRANDE
Implementação de um sistema de entrega contínua
pela Amazon para gerenciar a infraestrutura da AWS
O que é DevOps?
DevOps é uma cultura e conjunto de práticas que une
desenvolvimento de software e operações de TI, com o
objetivo de melhorar a colaboração, acelerar a entrega
e aumentar a qualidade dos produtos.
Cultura DevOps
Colaboração e Comunicação: Integração
contínua entre as equipes de
desenvolvimento, operações, segurança e
outros stakeholders.
Autonomia e Responsabilidade: Equipes
responsáveis pelo ciclo de vida completo
do produto, promovendo autonomia.
Inovação Contínua: Foco na melhoria
constante e na capacidade de responder
rapidamente às mundanças de mercado e
requisitos dos clientes.
Apresentação de Slides: DevOps - Ciclos de vida
Planejamento
Desenvolvimento
Integração Contínua (CI)
Entrega Contínua (CD)
Automação do deploy e validação em ambientes de produção.
Monitoramento
Implantação Contínua
Ciclo de Vida
DevOps
Definição de requisitos e planejamento de releases.
Codificação, revisão de código e testes iniciais.
Integração do código com automação de builds e testes.
Monitoramento de performance e segurança, coleta de feedback.
Iteração com base no feedback para melhorias contínuas.
DevOps na
Amazon
A Amazon é uma pioneira em DevOps, reconhecendo a necessidade de
fornecer software de forma rápida, segura e escalável. Utiliza princípios
de DevOps para suportar suas operações, incluindo a plataforma de e-
commerce Amazon.com e a Amazon Web Services (AWS).
Adota a filosofia You build it, you run it, onde as equipes são
responsáveis pelo ciclo de vida completo dos serviços que desenvolvem
e operam.
Como a
Executa as 3 principais fases do ciclo de vida do DevOps?
Integração Contínua (CI)
Entrega Contínua (CD)
Implantação Contínua
Integração Contínua (CI)
Integração Contínua (CI) é uma prática de desenvolvimento de software em que os
desenvolvedores mesclam regularmente suas alterações de código em um repositório
central. Isso permite a execução automática de compilações e testes para identificar problemas
rapidamente.
Práticas na Amazon
Criação do Repositório Git: A equipe começa criando um repositório Git (como no GitHub ou
AWS CodeCommit) para armazenar o código-fonte da aplicação. Isso facilita a colaboração,
controle de versões e compartilhamento de código de maneira eficiente.
Integração Contínua (CI)
Práticas na Amazon
Automação da Compilação e Testes: Sempre que ocorrem alterações no código por meio de
commits, o CI automatiza a compilação do código-fonte, garantindo que não haja erros de
sintaxe ou problemas de compilação. Testes automatizados são executados para verificar a
integridade do código.
Geração de Artefatos: Após a compilação e testes, o CI gera artefatos (como arquivos JAR e
pacotes Docker) que serão utilizados na implantação. Esses artefatos são armazenados em um
local acessível para uso posterior​
.
Ferramentas usadas no CI
Um serviço de controle de versão que hospeda repositórios Git seguros, permitindo
que equipes de desenvolvimento colaborem e gerenciem o código-fonte de maneira
eficiente.
Um serviço gerenciado de integração contínua que compila o código-fonte, executa
testes automatizados e produz artefatos de software prontos para implantação. Ele
escala automaticamente para processar várias compilações simultaneamente.
Uma ferramenta de automação de código aberto que pode ser integrada ao AWS
CodeBuild e outros serviços para orquestrar processos de CI, incluindo compilações,
testes e outras tarefas automatizadas.
Entrega Contínua (CD)
Entrega Contínua (CD) é uma prática que expande a CI, automatizando a preparação do
código para a produção. Inclui a criação de ambientes de teste e preparação para validar as
mudanças.
Práticas na Amazon
Ambientes de Preparação e Produção: Na entrega contínua, a Amazon cria dois ambientes
principais: preparação (staging) e produção (production). O ambiente de preparação é onde
as atualizações são automaticamente implantadas após a compilação e testes. No ambiente
de produção, as alterações são implantadas após testes adicionais e, se necessário, aprovação
manual.
Automação do Fluxo de Trabalho: O CD automatiza o fluxo de trabalho de entrega,
promovendo atualizações para o ambiente de produção de forma consistente e segura, após a
validação no ambiente de preparação.
Ferramentas usadas no CD
Um serviço de integração e entrega contínuas que orquestra o processo de
compilação, teste e implantação de aplicativos. Ele facilita a automação de todo o
fluxo de trabalho de entrega, desde o código-fonte até a produção.
Um serviço que automatiza implantações de código em diversas instâncias, sejam
elas EC2, on-premises ou outros serviços da AWS. Suporta vários métodos de
implantação, como Blue/Green e Rolling Deployments.
Um serviço de gerenciamento de configuração que permite automatizar o
provisionamento e a configuração de infraestrutura, facilitando o gerenciamento de
recursos em nuvem de forma consistente e eficiente.
Implantação Contínua
Implantação Contínua é a prática de liberar automaticamente todas as alterações
aprovadas para produção, garantindo que as atualizações estejam prontas para os
usuários.
Práticas na Amazon
Liberação Automática para Usuários Finais: A implantação contínua automatiza a liberação
de atualizações para os usuários finais. O sistema monitora métricas de desempenho,
como uso de CPU, latência e erros. Se todas as métricas estiverem dentro dos limites
aceitáveis, a implantação ocorre automaticamente.
Benefícios da Implantação Contínua: Essa prática permite entregas frequentes e
confiáveis, reduzindo o tempo entre a implementação de novas funcionalidades e sua
disponibilidade para os usuários. Além disso, minimiza o risco de erros manuais e aumenta
a eficiência do processo de implantação
Ferramentas usadas na Implantação Contínua
Um serviço que facilita a implantação e o dimensionamento de aplicativos e
serviços web. Ele suporta várias linguagens de programação e facilita a configuração
de infraestrutura, monitoramento e gerenciamento de aplicativos.
Um serviço que permite criar e gerenciar recursos da AWS utilizando templates,
facilitando a implementação de infraestrutura como código (IaC) para criar
ambientes consistentes e reproduzíveis.
Um serviço de computação serverless que executa código em resposta a eventos.
Pode ser integrado a pipelines de CI/CD para realizar tarefas automatizadas, como
manipulação de dados e integração com outros sistemas.
Conclusão
A integração e a entrega contínuas fornecem um cenário ideal para as equipes de aplicação da
sua organização. O processo é simples: os desenvolvedores enviam o código para um
repositório. Esse código será integrado, testado, implantado, testado novamente, mesclado à
infraestrutura, passará por revisões de segurança e qualidade e estará pronto para ser
implantado com altíssima confiança.
Quando a CI/CD é usada, a qualidade do código melhora e as atualizações de software são
entregues rapidamente e com alta confiança de que não haverá alterações significativas. O
impacto de qualquer lançamento pode ser correlacionado aos dados da produção e das
operações. Ela também pode ser usada para planejar o próximo ciclo, uma prática vital de
DevOps na transformação da nuvem da sua organização.
Referência
AWS. (2021). Prática de integração e entrega contínuas na AWS: Whitepaper da
AWS. Amazon Web Services, Inc. Disponível em:
https://docs.aws.amazon.com/pt_br/whitepapers/latest/practicing-continuous-
integration-continuous-delivery/practicing-continuous-integration-continuous-
delivery.pdf.

Mais conteúdo relacionado

PDF
Webinar: Introdução à Distribuição Contínua na AWS
PPTX
Desenvolvimento de CI/CD na AWS
PPTX
Automatização de Ambientes CI & CD & DevOps
PDF
DevOps & Docker com a stack Microsoft
PPTX
Automatize seu processo de entrega de software com CI/CD na AWS
PPTX
Melhores práticas de CI/CD na construção de aplicações modernas
PPSX
.Net Community Summit 2018 - CI/CD com ASP.NET Core, VSTS e Azure - Jaqueline...
PPSX
[.NET Community Summit] CI & CD com ASP.NET Core, VSTS e Azure
Webinar: Introdução à Distribuição Contínua na AWS
Desenvolvimento de CI/CD na AWS
Automatização de Ambientes CI & CD & DevOps
DevOps & Docker com a stack Microsoft
Automatize seu processo de entrega de software com CI/CD na AWS
Melhores práticas de CI/CD na construção de aplicações modernas
.Net Community Summit 2018 - CI/CD com ASP.NET Core, VSTS e Azure - Jaqueline...
[.NET Community Summit] CI & CD com ASP.NET Core, VSTS e Azure

Semelhante a Apresentação de Slides: DevOps - Ciclos de vida (20)

PDF
Da Integração Contínua à Entrega Contínua apenas com ferramentas open-source
PDF
Descomplicando CI/CD com Jenkins, Docker Swarm e Github
PPTX
Automatização - DevOps
PDF
Apresentacao dev ops
PDF
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
PDF
DevOps - melhores práticas e integração contínua
PDF
Continuous Deployment e DevOps na Nuvem
PPTX
DevOps: Entregando software e serviços rapidamente
PDF
Monografia-Devops
PPTX
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
PPTX
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
PPTX
PDF
Arquitetura de Software para a Entrega Continua
PDF
Introdução a DevOps e Continuous delivery agileday
PDF
Continuous delivery principios e praticas - Knowledge21
PDF
DevOps Culture: Como implementar métodos ágeis em infraestrutura como código
PDF
Continuous delivery
PDF
Continuous Delivery. Em Busca da Entrega Perfeita!
PPSX
GABC 2018 - Hands-On: DevOps, CI e CD
PPSX
Coders In Rio Summit - 2018
Da Integração Contínua à Entrega Contínua apenas com ferramentas open-source
Descomplicando CI/CD com Jenkins, Docker Swarm e Github
Automatização - DevOps
Apresentacao dev ops
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps - melhores práticas e integração contínua
Continuous Deployment e DevOps na Nuvem
DevOps: Entregando software e serviços rapidamente
Monografia-Devops
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
Arquitetura de Software para a Entrega Continua
Introdução a DevOps e Continuous delivery agileday
Continuous delivery principios e praticas - Knowledge21
DevOps Culture: Como implementar métodos ágeis em infraestrutura como código
Continuous delivery
Continuous Delivery. Em Busca da Entrega Perfeita!
GABC 2018 - Hands-On: DevOps, CI e CD
Coders In Rio Summit - 2018
Anúncio

Último (8)

PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PPTX
Mecânico de Manutenção de Equipamentos.pptx
PDF
Manejo integrado de pragas na cultura do algodão
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PDF
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
PPTX
Viasol Energia Solar -Soluções para geração e economia de energia
PPTX
Arquitetura de computadores - Memórias Secundárias
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Mecânico de Manutenção de Equipamentos.pptx
Manejo integrado de pragas na cultura do algodão
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
Viasol Energia Solar -Soluções para geração e economia de energia
Arquitetura de computadores - Memórias Secundárias
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Anúncio

Apresentação de Slides: DevOps - Ciclos de vida

  • 1. CICLOS DE VIDA DEVOPS PEDRO FERREIRA ROMEU GIULIANO GALVÃO PROJETO E DESENVOLVIMENTO DE SOFTWARE II UNIVERSIDADE FEDERAL DO RIO GRANDE Implementação de um sistema de entrega contínua pela Amazon para gerenciar a infraestrutura da AWS
  • 2. O que é DevOps? DevOps é uma cultura e conjunto de práticas que une desenvolvimento de software e operações de TI, com o objetivo de melhorar a colaboração, acelerar a entrega e aumentar a qualidade dos produtos. Cultura DevOps Colaboração e Comunicação: Integração contínua entre as equipes de desenvolvimento, operações, segurança e outros stakeholders. Autonomia e Responsabilidade: Equipes responsáveis pelo ciclo de vida completo do produto, promovendo autonomia. Inovação Contínua: Foco na melhoria constante e na capacidade de responder rapidamente às mundanças de mercado e requisitos dos clientes.
  • 4. Planejamento Desenvolvimento Integração Contínua (CI) Entrega Contínua (CD) Automação do deploy e validação em ambientes de produção. Monitoramento Implantação Contínua Ciclo de Vida DevOps Definição de requisitos e planejamento de releases. Codificação, revisão de código e testes iniciais. Integração do código com automação de builds e testes. Monitoramento de performance e segurança, coleta de feedback. Iteração com base no feedback para melhorias contínuas.
  • 5. DevOps na Amazon A Amazon é uma pioneira em DevOps, reconhecendo a necessidade de fornecer software de forma rápida, segura e escalável. Utiliza princípios de DevOps para suportar suas operações, incluindo a plataforma de e- commerce Amazon.com e a Amazon Web Services (AWS). Adota a filosofia You build it, you run it, onde as equipes são responsáveis pelo ciclo de vida completo dos serviços que desenvolvem e operam.
  • 6. Como a Executa as 3 principais fases do ciclo de vida do DevOps? Integração Contínua (CI) Entrega Contínua (CD) Implantação Contínua
  • 7. Integração Contínua (CI) Integração Contínua (CI) é uma prática de desenvolvimento de software em que os desenvolvedores mesclam regularmente suas alterações de código em um repositório central. Isso permite a execução automática de compilações e testes para identificar problemas rapidamente. Práticas na Amazon Criação do Repositório Git: A equipe começa criando um repositório Git (como no GitHub ou AWS CodeCommit) para armazenar o código-fonte da aplicação. Isso facilita a colaboração, controle de versões e compartilhamento de código de maneira eficiente.
  • 8. Integração Contínua (CI) Práticas na Amazon Automação da Compilação e Testes: Sempre que ocorrem alterações no código por meio de commits, o CI automatiza a compilação do código-fonte, garantindo que não haja erros de sintaxe ou problemas de compilação. Testes automatizados são executados para verificar a integridade do código. Geração de Artefatos: Após a compilação e testes, o CI gera artefatos (como arquivos JAR e pacotes Docker) que serão utilizados na implantação. Esses artefatos são armazenados em um local acessível para uso posterior​ .
  • 9. Ferramentas usadas no CI Um serviço de controle de versão que hospeda repositórios Git seguros, permitindo que equipes de desenvolvimento colaborem e gerenciem o código-fonte de maneira eficiente. Um serviço gerenciado de integração contínua que compila o código-fonte, executa testes automatizados e produz artefatos de software prontos para implantação. Ele escala automaticamente para processar várias compilações simultaneamente. Uma ferramenta de automação de código aberto que pode ser integrada ao AWS CodeBuild e outros serviços para orquestrar processos de CI, incluindo compilações, testes e outras tarefas automatizadas.
  • 10. Entrega Contínua (CD) Entrega Contínua (CD) é uma prática que expande a CI, automatizando a preparação do código para a produção. Inclui a criação de ambientes de teste e preparação para validar as mudanças. Práticas na Amazon Ambientes de Preparação e Produção: Na entrega contínua, a Amazon cria dois ambientes principais: preparação (staging) e produção (production). O ambiente de preparação é onde as atualizações são automaticamente implantadas após a compilação e testes. No ambiente de produção, as alterações são implantadas após testes adicionais e, se necessário, aprovação manual. Automação do Fluxo de Trabalho: O CD automatiza o fluxo de trabalho de entrega, promovendo atualizações para o ambiente de produção de forma consistente e segura, após a validação no ambiente de preparação.
  • 11. Ferramentas usadas no CD Um serviço de integração e entrega contínuas que orquestra o processo de compilação, teste e implantação de aplicativos. Ele facilita a automação de todo o fluxo de trabalho de entrega, desde o código-fonte até a produção. Um serviço que automatiza implantações de código em diversas instâncias, sejam elas EC2, on-premises ou outros serviços da AWS. Suporta vários métodos de implantação, como Blue/Green e Rolling Deployments. Um serviço de gerenciamento de configuração que permite automatizar o provisionamento e a configuração de infraestrutura, facilitando o gerenciamento de recursos em nuvem de forma consistente e eficiente.
  • 12. Implantação Contínua Implantação Contínua é a prática de liberar automaticamente todas as alterações aprovadas para produção, garantindo que as atualizações estejam prontas para os usuários. Práticas na Amazon Liberação Automática para Usuários Finais: A implantação contínua automatiza a liberação de atualizações para os usuários finais. O sistema monitora métricas de desempenho, como uso de CPU, latência e erros. Se todas as métricas estiverem dentro dos limites aceitáveis, a implantação ocorre automaticamente. Benefícios da Implantação Contínua: Essa prática permite entregas frequentes e confiáveis, reduzindo o tempo entre a implementação de novas funcionalidades e sua disponibilidade para os usuários. Além disso, minimiza o risco de erros manuais e aumenta a eficiência do processo de implantação
  • 13. Ferramentas usadas na Implantação Contínua Um serviço que facilita a implantação e o dimensionamento de aplicativos e serviços web. Ele suporta várias linguagens de programação e facilita a configuração de infraestrutura, monitoramento e gerenciamento de aplicativos. Um serviço que permite criar e gerenciar recursos da AWS utilizando templates, facilitando a implementação de infraestrutura como código (IaC) para criar ambientes consistentes e reproduzíveis. Um serviço de computação serverless que executa código em resposta a eventos. Pode ser integrado a pipelines de CI/CD para realizar tarefas automatizadas, como manipulação de dados e integração com outros sistemas.
  • 14. Conclusão A integração e a entrega contínuas fornecem um cenário ideal para as equipes de aplicação da sua organização. O processo é simples: os desenvolvedores enviam o código para um repositório. Esse código será integrado, testado, implantado, testado novamente, mesclado à infraestrutura, passará por revisões de segurança e qualidade e estará pronto para ser implantado com altíssima confiança. Quando a CI/CD é usada, a qualidade do código melhora e as atualizações de software são entregues rapidamente e com alta confiança de que não haverá alterações significativas. O impacto de qualquer lançamento pode ser correlacionado aos dados da produção e das operações. Ela também pode ser usada para planejar o próximo ciclo, uma prática vital de DevOps na transformação da nuvem da sua organização.
  • 15. Referência AWS. (2021). Prática de integração e entrega contínuas na AWS: Whitepaper da AWS. Amazon Web Services, Inc. Disponível em: https://docs.aws.amazon.com/pt_br/whitepapers/latest/practicing-continuous- integration-continuous-delivery/practicing-continuous-integration-continuous- delivery.pdf.