SlideShare une entreprise Scribd logo
1  sur  69
Télécharger pour lire hors ligne
Ambientes padronizados de
Desenvolvimento e Monitoramento de
Aplicações baseado na cultura DevOps
Chapecó - SC, 2015
UNIVERSIDADE COMUNITÁRIA DA REGIÃO DE CHAPECÓ
(UNOCHAPECÓ)
Área de Ciências Exatas e Ambientais
Ciência da Computação
Acadêmico: Alefe Variani
Orientador: Cezar Júnior de Souza
Chapecó - SC, 2015
Introdução Objetivos
Justificativa
Ambientes Equipes
Monitoramento
DevOps
Reuniões
Problemas
Aplicação dos
conceitos
Ferramentas
Resultados Conclusões
Questionário
empresas
Aplicação dos
conceitos DevOps
Questionário
CRS e DTI Ferramentas
Resultados Conclusões
Problemas Ferramentas
Resultados Conclusões
Aplicação dos
conceitos
Questionário
empresas
Problemas entre
CRS e DTI
Questionário
CRS e DTI
Introdução Objetivos
Justificativa
Ambientes Equipes
Monitoramento
DevOps
Reuniões
Problemas
Aplicação dos
conceitos
Pesquisa
Aplicação
Reuniões
Aplicação dos
conceitos
Questionário Ferramentas
Resultados Conclusões
Problemas
Questionário
empresas
Aplicação dos
conceitos DevOps
Questionário
CRS e DTI
Questionário
empresas
Problemas entre
CRS e DTI
Questionário
CRS e DTI Ferramentas
Resultados Conclusões
Aplicação dos
conceitos
Introdução
Introdução
● Avanço tecnológico e importância do software para as
pessoas;
● Surgimento dos Métodos Ágeis;
● Divisão das responsabilidades;
Objetivos
Objetivos
Objetivo Geral
Levantar ferramentas e práticas que utilizam os conceitos
do DevOps, analisar às melhorias que o DevOps pode
trazer para o ambiente de desenvolvimento de software e
aplicá-la no Centro de Residência em Software, para
verificar se a abordagem realmente traz benefícios aos
envolvidos no processo de desenvolvimento de software.
Objetivos
Objetivos Específicos
● Conhecer os processos do desenvolvimento de software;
● Entender conceitos da metodologia que se aplicam ao ambiente DevOps;
● Melhorar o ambiente de desenvolvimento e monitoramento da aplicação
através da cultura do DevOps;
● Aplicar uma proposta em um ambiente desenvolvimento real (CRS e DTI
da Unochapecó), utilizando conceitos e práticas do DevOps;
● Analisar o comportamento, vantagens e desvantagens que a proposta
traz ao ambiente de desenvolvimento;
Justificativa
Justificativa
● Entregar software em produção cada vez mais difícil;
● Métodos ágeis de desenvolvimento não alcançaram
todo valor da aplicação;
● Medos de mudanças e liberações de versões (deploy)
arriscadas;
● Surgimento de Silos;
Introdução Objetivos
Justificativa
Ambientes Equipes
Monitoramento
DevOps
Reuniões
Problemas
Aplicação dos
conceitos
Ferramentas
Resultados Conclusões
Reuniões
Questionário
Aplicação dos
conceitos
Ferramentas
Resultados Conclusões
Aplicação
dos
conceitos
Questionário
empresas
Problemas entre
CRS e DTI
Questionário
CRS e DTI Ferramentas
Resultados Conclusões
Aplicação dos
conceitos
Ambientes de desenvolvimento
do Software
Ambiente de Desenvolvimento Ambiente de Operações
Ambiente de Produção
Ambientes de Desenvolvimento
Necessário para a equipe de desenvolvimento
desenvolver o software.
Envolve um coleção de ferramentas:
● Sistema Operacional;
● Linguagem de Programação;
● IDE (ambiente de desenvolvimento integrado);
● Controle de Versão;
Ambientes de Produção
Processo de execução de produto, onde os usuários
terão acesso ao software desenvolvimento.
Mantêm sempre um grau de complexidade alto:
● Gerenciamento de dependências;
● Arquivos de configurações;
● Versões diferentes;
Ambientes de Operações
Necessário para a equipe de infraestrutura manter o
software funcionando.
Processos envolvidos:
● Instalação/Configuração de servidores;
● Build e Deploy da aplicação;
Monitoramento da Aplicação
Monitoramento da Aplicação
É observar, analisar e manter o acompanhamento de
como a aplicação está se comportando.
Pontos que o monitoramento deve ganhar atenção:
● Notificações;
● Agregação de logs;
● Métricas, visualizações;
● Informações em tempo de execução;
● Disponibilidade;
Equipes
Equipes de Desenvolvimento Equipes de Operações
Problemas
Equipes de Desenvolvimento
Responsável por desenvolver novos produtos,
funcionalidades e dar manutenção para possíveis
problemas que ocorram no software.
Dentre as principais responsabilidades são:
● Design do Software;
● Protótipo;
● Programação;
● Testes, validação;
Equipes de Operações
Responsável por manter os sistemas funcionando.
Monitorando a performance, avaliando e propondo
melhorias.
Principais responsabilidades:
● Gestão de ambiente de teste;
● Gestão de error e incidentes;
● FeedBack Contínuo;
Problemas entre as Equipes
Alguns fatores que geram estes conflitos entre as equipes
● Surgimento de metodologias de desenvolvimento ágil
para equipes de Desenvolvimento;
● Demora em fazer Deploys para a produção;
● Falta de FeedBack;
● Ambiente dos desenvolvedores diferente do ambiente
de produção;
● Equipe de operações com culturas arcaicas de
administração;
DevOps
Introdução Como surgiu
Conceitos Ferramentas
DevOps
Introdução
O movimento/cultura DevOps foca em
aperfeiçoamento da comunicação, colaboração e
integração entre desenvolvedores de software e
administradores da infraestrutura de TI.
DevOps
Como surgiu
● Por volta de 2008 começa-se a utilizar o termo
infraestrutura ágil;
● Em algumas listas de discussão com foco em
desenvolvimento ágil, e na mesma época durante
evento Agile 2008;
● Entusiasta do assunto era Patrick Debois, criador do
DevOpsDay;
DevOps
Conceitos
DevOps se mantêm em quatro pilares principais,
conhecidos pelas siglas C.A.M.S:
● Cultura;
● Automação;
● Medição/Avaliação;
● Compartilhamento;
DevOps
● Gerenciamento do Ambiente de
Desenvolvimento;
● Gerenciamento das
Configurações da Aplicação;
Ferramentas
DevOps
● Gerenciamento de
Configurações;
● Monitoramento da Aplicação;
Ferramentas
Introdução Objetivos
Justificativa
Ambientes Equipes
Monitoramento
DevOps
Reuniões
Questionário Ferramentas
Resultados ConclusõesProblemas
Questionário Aplicação dos
conceitos
Questionário
empresas
Problemas entre
CRS e DTI
Questionário
CRS e DTI
Questionário
Questionário
● Criado pelo Google form;
● 18 perguntas descritivas e de múltiplas escolhas;
● Questões sobre o entendimento e aplicação do
DevOps na empresa;
● Aplicado para o CRS e DTI da Unochapecó;
● Aplicado para empresas do Oeste de Santa Catarina;
Questionário aplicado
para empresas
Questionário de pesquisa empresas
● Distribuído para mais de 25 empresas de
desenvolvimento onde teve 11 respostas obtidas;
● Pode-se identificar pouco conhecimento das empresas
e apresentação de vários problemas que a cultura
DevOps poderia auxiliar a resolver;
Questionário de pesquisa empresas
1. Já ouvi-o falar sobre DevOps?
Questionário de pesquisa empresas
4. Os ambientes de produção e desenvolvimento são
iguais (versões de linguagens de programação, SO, banco
de dados entre outros)?
Questionário de pesquisa empresas
12. É usado alguma ferramenta para monitorar as
aplicações?
Questionário de pesquisa empresas
17. Com que frequência é feita liberação de versão do(s)
software?
Questionário aplicado
para CRS e DTI da
Unochapecó
Reunião/Encontro
Problemas
Problemas entre CRS e DTI
● Contato só existe quando abrem-se chamados;
● Equipe de Operações (ops) desconhece metodologias e ferramentas que
a equipe de Desenvolvimento (devs) utilizam;
● Equipe de Desenvolvimento (devs) desconhece também o papel da
equipe de Operações (ops);
● Diferenças entre ambientes de desenvolvimento e produção;
● Em poucos casos o Devs e Ops decidem os projetos juntos;
● Monitoramento da aplicação não é feito;
Introdução Objetivos
Justificativa
Ambientes Equipes
Monitoramento
DevOps
Reuniões
Questionário Ferramentas
Resultados ConclusõesProblemas
Questionário Aplicação dos
conceitos
Questionário
empresas
Problemas entre
CRS e DTI
Questionário
CRS e DTI
Aplicação dos Conceitos
Aplicação dos Conceitos
● Apresentação dos conceitos da cultura do DevOps
entre os envolvidos;
● Utilização de uma ferramenta de monitoramento (New
Relic);
● Utilização de uma ferramenta para padronização dos
ambientes (Docker);
Apresentação dos
Conceitos DevOps para
CRS e DTI
Apresentação dos Conceitos
● Primeiro documento, material sobre o DevOps;
● Segundo documento, tutorial sobre a ferramenta New
Relic;
● Terceiro documento, tutorial sobre a ferramenta
Docker;
● Encontro/reunião entre o acadêmico, equipes de
operações e desenvolvimento;
Ferramentas
New Relic Docker
Ferramenta New Relic
● New Relic foi fundada em 2008;
● 250 mil usuários;
● 4 mil aplicações monitoradas por dia;
● Vários tipos de produtos (mobile, browser e servers);
Ferramenta New Relic
● Sistema monitorado através do New Relic foi infohab.
org.br;
● Tem como características realizar muitas consultas no
banco de dados;
● Transações web dos últimos 30 minutos;
Ferramenta New Relic Recursos
● Transações Web do Infohab (overview);
Ferramenta New Relic Recursos
● Consultas mais demoradas da Infohab (transactions);
Ferramenta New Relic Recursos
● Tela queries Infohab (Databases);
Ferramenta New Relic Recursos
● Bases com conexão (Service Maps);
Ferramenta New Relic
Ganhos
● Oferece vários recursos úteis para os desenvolvedores;
● Pontos críticos da aplicação;
● Satisfação dos usuários;
● Aplicação mais estável;
Ferramenta Docker
● Open source (código aberto) sem nenhum custo;
● Solicitação de um relatório das versões dos ambientes
de desenvolvimento e produção;
● Criação de um máquina para utilização no ambiente de
desenvolvimento e no ambiente de produção;
Ferramenta Docker
Ferramenta Docker
Ferramenta Docker
Exemplo criação máquina Docker;
Ferramenta Docker
Ganhos
● Fácil utilização e distribuição;
● Muito utilizado atualmente por devs/ops;
● Permitiu manter ambientes do CRS e DTI iguais;
Resultados
Vantagens Desvantagens
Resultados
Vantagens
● Conhecimento de novos conceitos e ferramentas do DevOps;
● Melhor acompanhamento das aplicações através da ferramenta de
monitoramento New Relic;
● Padronização dos ambientes de desenvolvimento e produção;
● Diminuição das diferenças entre os ambientes de desenvolvimento e
produção;
● Diminuição da distância entre equipe de desenvolvedores (CRS) e equipe
de operações (DTI da Unochapecó);
Resultados
Desvantagens
● Tempo gasto para aprender e utilizar novas
ferramentas;
● Tempo para assimilar novos conceitos;
● Processos burocráticos da Instituição;
Conclusões
Conclusões
● Itens importantes foram aplicados;
● Divulgação do DevOps na região do Oeste de Santa
Catarina (através do questionário);
● DevOps é um tema atual utilizado por várias empresas
de grande porte;
● O DevOps para meios corporativos é necessário muita
motivação;
Trabalhos futuros
Para trabalhos futuros sugere-se aplicar novos itens no CRS e DTI da
Unochapecó ou empresas que desconheçam o DevOps:
● Automatizar e facilitar processo de Deploy da aplicação;
● Gerenciamento de logs;
● Ferramentas para centralização das configurações (Chef e Puppet);
● Análise entre a aplicação do DevOps para meios corporativos e startups;
Introdução Objetivos
Justificativa
Ambientes Equipes
Monitoramento
DevOps
Reuniões
Questionário Ferramentas
Resultados ConclusõesProblemas
Questionário Aplicação dos
conceitos
Questionário
empresas
Problemas entre
CRS e DTI
Questionário
CRS e DTI
Referências
● CARVALHO, Guto. O que é DevOps afinal?. Disponível em: <http:
//gutocarvalho.net/octopress/2013/03/16/o-que-e-um-devops-afinal/>.
Acesso em: 16 mar. 2015.
● RELIC, New. O que é DevOps? Metodologia, benefícios e ferramentas.
Disponível em: <http://newrelic.com/devops/what-is-devops>. Acesso
em: 01 maio 2015.
● SATO, Danilo. DevOps na prática: entrega de software confiável e
automatizada. São Paulo: Casa do Código, 2013. 248 p.
Muito obrigado,
perguntas?
Chapecó - SC, 2015

Contenu connexe

Tendances

DevOps com Exemplos Práticos - QConRio 2014
DevOps com Exemplos Práticos - QConRio 2014DevOps com Exemplos Práticos - QConRio 2014
DevOps com Exemplos Práticos - QConRio 2014Leo Lorieri
 
Cultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e develCultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e develJose Augusto Carvalho
 
IFSP 2015 - Cultura DevOps
IFSP 2015 - Cultura DevOpsIFSP 2015 - Cultura DevOps
IFSP 2015 - Cultura DevOpsLeonardo Comelli
 
DevOps I - Ambientes padronizados e Monitoramento da Aplicação | Monografia I
DevOps I - Ambientes padronizados e Monitoramento da Aplicação | Monografia IDevOps I - Ambientes padronizados e Monitoramento da Aplicação | Monografia I
DevOps I - Ambientes padronizados e Monitoramento da Aplicação | Monografia IAlefe Variani
 
Discutindo DevOps na pratica, por Danilo Sato
Discutindo DevOps na pratica, por Danilo SatoDiscutindo DevOps na pratica, por Danilo Sato
Discutindo DevOps na pratica, por Danilo SatoThoughtworks
 
Cultura DevOps - Integração entre infra e devel
Cultura DevOps - Integração entre infra e develCultura DevOps - Integração entre infra e devel
Cultura DevOps - Integração entre infra e develJose Augusto Carvalho
 
DevOps é cultura, processo ou cargo ?
DevOps é cultura, processo ou cargo ?DevOps é cultura, processo ou cargo ?
DevOps é cultura, processo ou cargo ?Carlos Felippe Cardoso
 
DevOps, por onde começar
DevOps, por onde começarDevOps, por onde começar
DevOps, por onde começarAdriano Tavares
 
Explicando DevOps
Explicando DevOpsExplicando DevOps
Explicando DevOpss4nx
 
Arquitetura de Software para a Entrega Continua
Arquitetura de Software para a Entrega ContinuaArquitetura de Software para a Entrega Continua
Arquitetura de Software para a Entrega ContinuaOtávio Calaça Xavier
 
Como montar um DevOps Toolchain
Como montar um DevOps Toolchain Como montar um DevOps Toolchain
Como montar um DevOps Toolchain Fabio Reginaldo
 
Implantando continuous delivery e seus oito principios
Implantando continuous delivery e seus oito principiosImplantando continuous delivery e seus oito principios
Implantando continuous delivery e seus oito principiosCarlos Felippe Cardoso
 
DevOps... O caminho! - Monitoramento de aplicações com App Insights
DevOps... O caminho! - Monitoramento de aplicações com App InsightsDevOps... O caminho! - Monitoramento de aplicações com App Insights
DevOps... O caminho! - Monitoramento de aplicações com App InsightsAdriano Bertucci
 
DevOps - Estado da Arte
DevOps - Estado da ArteDevOps - Estado da Arte
DevOps - Estado da Arteilegra
 

Tendances (20)

DevOps com Exemplos Práticos - QConRio 2014
DevOps com Exemplos Práticos - QConRio 2014DevOps com Exemplos Práticos - QConRio 2014
DevOps com Exemplos Práticos - QConRio 2014
 
Cultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e develCultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e devel
 
IFSP 2015 - Cultura DevOps
IFSP 2015 - Cultura DevOpsIFSP 2015 - Cultura DevOps
IFSP 2015 - Cultura DevOps
 
DevOps - visão geral
DevOps - visão geralDevOps - visão geral
DevOps - visão geral
 
DevOps I - Ambientes padronizados e Monitoramento da Aplicação | Monografia I
DevOps I - Ambientes padronizados e Monitoramento da Aplicação | Monografia IDevOps I - Ambientes padronizados e Monitoramento da Aplicação | Monografia I
DevOps I - Ambientes padronizados e Monitoramento da Aplicação | Monografia I
 
Discutindo DevOps na pratica, por Danilo Sato
Discutindo DevOps na pratica, por Danilo SatoDiscutindo DevOps na pratica, por Danilo Sato
Discutindo DevOps na pratica, por Danilo Sato
 
Cultura DevOps - Integração entre infra e devel
Cultura DevOps - Integração entre infra e develCultura DevOps - Integração entre infra e devel
Cultura DevOps - Integração entre infra e devel
 
DevOps é cultura, processo ou cargo ?
DevOps é cultura, processo ou cargo ?DevOps é cultura, processo ou cargo ?
DevOps é cultura, processo ou cargo ?
 
DevOps, por onde começar
DevOps, por onde começarDevOps, por onde começar
DevOps, por onde começar
 
Explicando DevOps
Explicando DevOpsExplicando DevOps
Explicando DevOps
 
DevOps - o que é?
DevOps - o que é?DevOps - o que é?
DevOps - o que é?
 
Arquitetura de Software para a Entrega Continua
Arquitetura de Software para a Entrega ContinuaArquitetura de Software para a Entrega Continua
Arquitetura de Software para a Entrega Continua
 
Como montar um DevOps Toolchain
Como montar um DevOps Toolchain Como montar um DevOps Toolchain
Como montar um DevOps Toolchain
 
DevOps
DevOpsDevOps
DevOps
 
Startups e DevOps
Startups e DevOpsStartups e DevOps
Startups e DevOps
 
Implantando continuous delivery e seus oito principios
Implantando continuous delivery e seus oito principiosImplantando continuous delivery e seus oito principios
Implantando continuous delivery e seus oito principios
 
Monografia-Devops
Monografia-DevopsMonografia-Devops
Monografia-Devops
 
Apresentacao dev ops
Apresentacao dev opsApresentacao dev ops
Apresentacao dev ops
 
DevOps... O caminho! - Monitoramento de aplicações com App Insights
DevOps... O caminho! - Monitoramento de aplicações com App InsightsDevOps... O caminho! - Monitoramento de aplicações com App Insights
DevOps... O caminho! - Monitoramento de aplicações com App Insights
 
DevOps - Estado da Arte
DevOps - Estado da ArteDevOps - Estado da Arte
DevOps - Estado da Arte
 

En vedette

DevOps utilizando Docker
DevOps utilizando DockerDevOps utilizando Docker
DevOps utilizando Dockerthdotnet
 
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...Leandro Nunes
 
Automatizando a implantação e operação de aplicações conteinerizadas no...
Automatizando a implantação e operação de aplicações conteinerizadas no...Automatizando a implantação e operação de aplicações conteinerizadas no...
Automatizando a implantação e operação de aplicações conteinerizadas no...Elo7
 
Deploying Docker Containers
Deploying Docker ContainersDeploying Docker Containers
Deploying Docker ContainersHugo Henley
 
Desenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando DockerDesenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando DockerBruno Ricardo Siqueira
 
TDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de DockerTDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de DockerStefan Teixeira
 
Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3Wellington Silva
 
Docker para deploy de aplicação
Docker para deploy de aplicaçãoDocker para deploy de aplicação
Docker para deploy de aplicaçãoMundo Docker
 
Blue Green Deployment com Docker
Blue Green Deployment com DockerBlue Green Deployment com Docker
Blue Green Deployment com DockerPedro Cavalheiro
 
Da Integração Contínua à Entrega Contínua apenas com ferramentas open-source
Da Integração Contínua à Entrega Contínua apenas com ferramentas open-sourceDa Integração Contínua à Entrega Contínua apenas com ferramentas open-source
Da Integração Contínua à Entrega Contínua apenas com ferramentas open-sourceRaphael Paiva
 
O poder do Docker (7 Masters)
O poder do Docker (7 Masters)O poder do Docker (7 Masters)
O poder do Docker (7 Masters)Wellington Silva
 
Into the ZF2 Service Manager
Into the ZF2 Service ManagerInto the ZF2 Service Manager
Into the ZF2 Service ManagerChris Tankersley
 
Indo para as nuvens mais rápido e fácil com Docker
Indo para as nuvens mais rápido e fácil com DockerIndo para as nuvens mais rápido e fácil com Docker
Indo para as nuvens mais rápido e fácil com DockerLuan Cestari
 
Cloud: Container Service In Action, por Heitor Vidal
Cloud: Container Service In Action, por Heitor VidalCloud: Container Service In Action, por Heitor Vidal
Cloud: Container Service In Action, por Heitor VidaliMasters
 
Serviços em nuvem para sua infraestrutura virtual
Serviços em nuvem para sua infraestrutura virtualServiços em nuvem para sua infraestrutura virtual
Serviços em nuvem para sua infraestrutura virtualshsouza
 
DevOps - melhores práticas e integração contínua
DevOps - melhores práticas e integração contínuaDevOps - melhores práticas e integração contínua
DevOps - melhores práticas e integração contínuaAmazon Web Services LATAM
 

En vedette (20)

DevOps utilizando Docker
DevOps utilizando DockerDevOps utilizando Docker
DevOps utilizando Docker
 
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
 
Automatizando a implantação e operação de aplicações conteinerizadas no...
Automatizando a implantação e operação de aplicações conteinerizadas no...Automatizando a implantação e operação de aplicações conteinerizadas no...
Automatizando a implantação e operação de aplicações conteinerizadas no...
 
Deploying Docker Containers
Deploying Docker ContainersDeploying Docker Containers
Deploying Docker Containers
 
Desenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando DockerDesenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando Docker
 
TDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de DockerTDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de Docker
 
Alagoas Dev Day
Alagoas Dev DayAlagoas Dev Day
Alagoas Dev Day
 
Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3
 
Docker para deploy de aplicação
Docker para deploy de aplicaçãoDocker para deploy de aplicação
Docker para deploy de aplicação
 
Blue Green Deployment com Docker
Blue Green Deployment com DockerBlue Green Deployment com Docker
Blue Green Deployment com Docker
 
Da Integração Contínua à Entrega Contínua apenas com ferramentas open-source
Da Integração Contínua à Entrega Contínua apenas com ferramentas open-sourceDa Integração Contínua à Entrega Contínua apenas com ferramentas open-source
Da Integração Contínua à Entrega Contínua apenas com ferramentas open-source
 
O poder do Docker (7 Masters)
O poder do Docker (7 Masters)O poder do Docker (7 Masters)
O poder do Docker (7 Masters)
 
Into the ZF2 Service Manager
Into the ZF2 Service ManagerInto the ZF2 Service Manager
Into the ZF2 Service Manager
 
Tcc obz -
Tcc obz - Tcc obz -
Tcc obz -
 
Global Azure Bootcamp 2015 Curitiba
Global Azure Bootcamp 2015 CuritibaGlobal Azure Bootcamp 2015 Curitiba
Global Azure Bootcamp 2015 Curitiba
 
Indo para as nuvens mais rápido e fácil com Docker
Indo para as nuvens mais rápido e fácil com DockerIndo para as nuvens mais rápido e fácil com Docker
Indo para as nuvens mais rápido e fácil com Docker
 
Cloud: Container Service In Action, por Heitor Vidal
Cloud: Container Service In Action, por Heitor VidalCloud: Container Service In Action, por Heitor Vidal
Cloud: Container Service In Action, por Heitor Vidal
 
Gerenciando Implementação de Projetos de CLOUD
Gerenciando Implementação de Projetos de CLOUDGerenciando Implementação de Projetos de CLOUD
Gerenciando Implementação de Projetos de CLOUD
 
Serviços em nuvem para sua infraestrutura virtual
Serviços em nuvem para sua infraestrutura virtualServiços em nuvem para sua infraestrutura virtual
Serviços em nuvem para sua infraestrutura virtual
 
DevOps - melhores práticas e integração contínua
DevOps - melhores práticas e integração contínuaDevOps - melhores práticas e integração contínua
DevOps - melhores práticas e integração contínua
 

Similaire à DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II

Engenharia Software Rup
Engenharia Software   RupEngenharia Software   Rup
Engenharia Software RupFelipe
 
Engenharia software rup
Engenharia software   rupEngenharia software   rup
Engenharia software rupFelipe
 
Desconstruindo monolitos - Construindo microservicos em Delphi
Desconstruindo monolitos - Construindo microservicos em DelphiDesconstruindo monolitos - Construindo microservicos em Delphi
Desconstruindo monolitos - Construindo microservicos em DelphiFelipe Caputo
 
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiTDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiMayara Fernandes
 
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOpsE se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOpsEdson Celio
 
Apresentacao engenharia aup
Apresentacao engenharia aupApresentacao engenharia aup
Apresentacao engenharia aupRenato Lucena
 
Palestra DevOps para Teste de Software
Palestra DevOps para Teste de SoftwarePalestra DevOps para Teste de Software
Palestra DevOps para Teste de SoftwareJúlio de Lima
 
DEV-OPS para teste de software
DEV-OPS para teste de softwareDEV-OPS para teste de software
DEV-OPS para teste de softwareQualister
 
Projeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareAragon Vieira
 
Projeto Indiana
Projeto IndianaProjeto Indiana
Projeto Indianahellequin
 
QATEST - Agile Brazil 2014 - O impacto do DEVOPS na Qualidade de Software
QATEST - Agile Brazil 2014 - O impacto do DEVOPS na Qualidade de SoftwareQATEST - Agile Brazil 2014 - O impacto do DEVOPS na Qualidade de Software
QATEST - Agile Brazil 2014 - O impacto do DEVOPS na Qualidade de SoftwareWelington Monteiro
 
O Impacto da adoção de DevOps na qualidade
O Impacto da adoção de DevOps na qualidadeO Impacto da adoção de DevOps na qualidade
O Impacto da adoção de DevOps na qualidadeAntônio Carlos
 
Como o Departamento de Defesa avalia agilidade em seus projetos
Como o Departamento de Defesa avalia agilidade em seus projetos Como o Departamento de Defesa avalia agilidade em seus projetos
Como o Departamento de Defesa avalia agilidade em seus projetos Vandre Ramos, MSc, MBA, CSM
 
Implantacao.Processo.Fabrica.SL
Implantacao.Processo.Fabrica.SLImplantacao.Processo.Fabrica.SL
Implantacao.Processo.Fabrica.SLAnnkatlover
 
AGILE UNIFIED PROCESS
AGILE UNIFIED PROCESSAGILE UNIFIED PROCESS
AGILE UNIFIED PROCESSEder Nogueira
 
Padrões_Desenvolvimento
Padrões_DesenvolvimentoPadrões_Desenvolvimento
Padrões_DesenvolvimentoWagner Zaparoli
 

Similaire à DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II (20)

Engenharia Software Rup
Engenharia Software   RupEngenharia Software   Rup
Engenharia Software Rup
 
Engenharia software rup
Engenharia software   rupEngenharia software   rup
Engenharia software rup
 
Desconstruindo monolitos - Construindo microservicos em Delphi
Desconstruindo monolitos - Construindo microservicos em DelphiDesconstruindo monolitos - Construindo microservicos em Delphi
Desconstruindo monolitos - Construindo microservicos em Delphi
 
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiTDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
 
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOpsE se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
 
Vamos falar de DevOps?
Vamos falar de DevOps?Vamos falar de DevOps?
Vamos falar de DevOps?
 
Apresentacao engenharia aup
Apresentacao engenharia aupApresentacao engenharia aup
Apresentacao engenharia aup
 
Palestra DevOps para Teste de Software
Palestra DevOps para Teste de SoftwarePalestra DevOps para Teste de Software
Palestra DevOps para Teste de Software
 
DEV-OPS para teste de software
DEV-OPS para teste de softwareDEV-OPS para teste de software
DEV-OPS para teste de software
 
Artigo corrigido
Artigo corrigidoArtigo corrigido
Artigo corrigido
 
Artigo23
Artigo23Artigo23
Artigo23
 
Projeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de Software
 
Projeto Indiana
Projeto IndianaProjeto Indiana
Projeto Indiana
 
QATEST - Agile Brazil 2014 - O impacto do DEVOPS na Qualidade de Software
QATEST - Agile Brazil 2014 - O impacto do DEVOPS na Qualidade de SoftwareQATEST - Agile Brazil 2014 - O impacto do DEVOPS na Qualidade de Software
QATEST - Agile Brazil 2014 - O impacto do DEVOPS na Qualidade de Software
 
O Impacto da adoção de DevOps na qualidade
O Impacto da adoção de DevOps na qualidadeO Impacto da adoção de DevOps na qualidade
O Impacto da adoção de DevOps na qualidade
 
Como o Departamento de Defesa avalia agilidade em seus projetos
Como o Departamento de Defesa avalia agilidade em seus projetos Como o Departamento de Defesa avalia agilidade em seus projetos
Como o Departamento de Defesa avalia agilidade em seus projetos
 
Implantacao.Processo.Fabrica.SL
Implantacao.Processo.Fabrica.SLImplantacao.Processo.Fabrica.SL
Implantacao.Processo.Fabrica.SL
 
AGILE UNIFIED PROCESS
AGILE UNIFIED PROCESSAGILE UNIFIED PROCESS
AGILE UNIFIED PROCESS
 
Artigo
ArtigoArtigo
Artigo
 
Padrões_Desenvolvimento
Padrões_DesenvolvimentoPadrões_Desenvolvimento
Padrões_Desenvolvimento
 

DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II

  • 1. Ambientes padronizados de Desenvolvimento e Monitoramento de Aplicações baseado na cultura DevOps Chapecó - SC, 2015
  • 2. UNIVERSIDADE COMUNITÁRIA DA REGIÃO DE CHAPECÓ (UNOCHAPECÓ) Área de Ciências Exatas e Ambientais Ciência da Computação Acadêmico: Alefe Variani Orientador: Cezar Júnior de Souza Chapecó - SC, 2015
  • 3. Introdução Objetivos Justificativa Ambientes Equipes Monitoramento DevOps Reuniões Problemas Aplicação dos conceitos Ferramentas Resultados Conclusões Questionário empresas Aplicação dos conceitos DevOps Questionário CRS e DTI Ferramentas Resultados Conclusões Problemas Ferramentas Resultados Conclusões Aplicação dos conceitos Questionário empresas Problemas entre CRS e DTI Questionário CRS e DTI
  • 4. Introdução Objetivos Justificativa Ambientes Equipes Monitoramento DevOps Reuniões Problemas Aplicação dos conceitos Pesquisa Aplicação Reuniões Aplicação dos conceitos Questionário Ferramentas Resultados Conclusões Problemas Questionário empresas Aplicação dos conceitos DevOps Questionário CRS e DTI Questionário empresas Problemas entre CRS e DTI Questionário CRS e DTI Ferramentas Resultados Conclusões Aplicação dos conceitos
  • 6. Introdução ● Avanço tecnológico e importância do software para as pessoas; ● Surgimento dos Métodos Ágeis; ● Divisão das responsabilidades;
  • 8. Objetivos Objetivo Geral Levantar ferramentas e práticas que utilizam os conceitos do DevOps, analisar às melhorias que o DevOps pode trazer para o ambiente de desenvolvimento de software e aplicá-la no Centro de Residência em Software, para verificar se a abordagem realmente traz benefícios aos envolvidos no processo de desenvolvimento de software.
  • 9. Objetivos Objetivos Específicos ● Conhecer os processos do desenvolvimento de software; ● Entender conceitos da metodologia que se aplicam ao ambiente DevOps; ● Melhorar o ambiente de desenvolvimento e monitoramento da aplicação através da cultura do DevOps; ● Aplicar uma proposta em um ambiente desenvolvimento real (CRS e DTI da Unochapecó), utilizando conceitos e práticas do DevOps; ● Analisar o comportamento, vantagens e desvantagens que a proposta traz ao ambiente de desenvolvimento;
  • 11. Justificativa ● Entregar software em produção cada vez mais difícil; ● Métodos ágeis de desenvolvimento não alcançaram todo valor da aplicação; ● Medos de mudanças e liberações de versões (deploy) arriscadas; ● Surgimento de Silos;
  • 12. Introdução Objetivos Justificativa Ambientes Equipes Monitoramento DevOps Reuniões Problemas Aplicação dos conceitos Ferramentas Resultados Conclusões Reuniões Questionário Aplicação dos conceitos Ferramentas Resultados Conclusões Aplicação dos conceitos Questionário empresas Problemas entre CRS e DTI Questionário CRS e DTI Ferramentas Resultados Conclusões Aplicação dos conceitos
  • 13. Ambientes de desenvolvimento do Software Ambiente de Desenvolvimento Ambiente de Operações Ambiente de Produção
  • 14. Ambientes de Desenvolvimento Necessário para a equipe de desenvolvimento desenvolver o software. Envolve um coleção de ferramentas: ● Sistema Operacional; ● Linguagem de Programação; ● IDE (ambiente de desenvolvimento integrado); ● Controle de Versão;
  • 15. Ambientes de Produção Processo de execução de produto, onde os usuários terão acesso ao software desenvolvimento. Mantêm sempre um grau de complexidade alto: ● Gerenciamento de dependências; ● Arquivos de configurações; ● Versões diferentes;
  • 16. Ambientes de Operações Necessário para a equipe de infraestrutura manter o software funcionando. Processos envolvidos: ● Instalação/Configuração de servidores; ● Build e Deploy da aplicação;
  • 18. Monitoramento da Aplicação É observar, analisar e manter o acompanhamento de como a aplicação está se comportando. Pontos que o monitoramento deve ganhar atenção: ● Notificações; ● Agregação de logs; ● Métricas, visualizações; ● Informações em tempo de execução; ● Disponibilidade;
  • 19. Equipes Equipes de Desenvolvimento Equipes de Operações Problemas
  • 20. Equipes de Desenvolvimento Responsável por desenvolver novos produtos, funcionalidades e dar manutenção para possíveis problemas que ocorram no software. Dentre as principais responsabilidades são: ● Design do Software; ● Protótipo; ● Programação; ● Testes, validação;
  • 21. Equipes de Operações Responsável por manter os sistemas funcionando. Monitorando a performance, avaliando e propondo melhorias. Principais responsabilidades: ● Gestão de ambiente de teste; ● Gestão de error e incidentes; ● FeedBack Contínuo;
  • 22. Problemas entre as Equipes Alguns fatores que geram estes conflitos entre as equipes ● Surgimento de metodologias de desenvolvimento ágil para equipes de Desenvolvimento; ● Demora em fazer Deploys para a produção; ● Falta de FeedBack; ● Ambiente dos desenvolvedores diferente do ambiente de produção; ● Equipe de operações com culturas arcaicas de administração;
  • 24. DevOps Introdução O movimento/cultura DevOps foca em aperfeiçoamento da comunicação, colaboração e integração entre desenvolvedores de software e administradores da infraestrutura de TI.
  • 25. DevOps Como surgiu ● Por volta de 2008 começa-se a utilizar o termo infraestrutura ágil; ● Em algumas listas de discussão com foco em desenvolvimento ágil, e na mesma época durante evento Agile 2008; ● Entusiasta do assunto era Patrick Debois, criador do DevOpsDay;
  • 26. DevOps Conceitos DevOps se mantêm em quatro pilares principais, conhecidos pelas siglas C.A.M.S: ● Cultura; ● Automação; ● Medição/Avaliação; ● Compartilhamento;
  • 27. DevOps ● Gerenciamento do Ambiente de Desenvolvimento; ● Gerenciamento das Configurações da Aplicação; Ferramentas
  • 28. DevOps ● Gerenciamento de Configurações; ● Monitoramento da Aplicação; Ferramentas
  • 29. Introdução Objetivos Justificativa Ambientes Equipes Monitoramento DevOps Reuniões Questionário Ferramentas Resultados ConclusõesProblemas Questionário Aplicação dos conceitos Questionário empresas Problemas entre CRS e DTI Questionário CRS e DTI
  • 31. Questionário ● Criado pelo Google form; ● 18 perguntas descritivas e de múltiplas escolhas; ● Questões sobre o entendimento e aplicação do DevOps na empresa; ● Aplicado para o CRS e DTI da Unochapecó; ● Aplicado para empresas do Oeste de Santa Catarina;
  • 33. Questionário de pesquisa empresas ● Distribuído para mais de 25 empresas de desenvolvimento onde teve 11 respostas obtidas; ● Pode-se identificar pouco conhecimento das empresas e apresentação de vários problemas que a cultura DevOps poderia auxiliar a resolver;
  • 34. Questionário de pesquisa empresas 1. Já ouvi-o falar sobre DevOps?
  • 35. Questionário de pesquisa empresas 4. Os ambientes de produção e desenvolvimento são iguais (versões de linguagens de programação, SO, banco de dados entre outros)?
  • 36. Questionário de pesquisa empresas 12. É usado alguma ferramenta para monitorar as aplicações?
  • 37. Questionário de pesquisa empresas 17. Com que frequência é feita liberação de versão do(s) software?
  • 38. Questionário aplicado para CRS e DTI da Unochapecó Reunião/Encontro
  • 40. Problemas entre CRS e DTI ● Contato só existe quando abrem-se chamados; ● Equipe de Operações (ops) desconhece metodologias e ferramentas que a equipe de Desenvolvimento (devs) utilizam; ● Equipe de Desenvolvimento (devs) desconhece também o papel da equipe de Operações (ops); ● Diferenças entre ambientes de desenvolvimento e produção; ● Em poucos casos o Devs e Ops decidem os projetos juntos; ● Monitoramento da aplicação não é feito;
  • 41. Introdução Objetivos Justificativa Ambientes Equipes Monitoramento DevOps Reuniões Questionário Ferramentas Resultados ConclusõesProblemas Questionário Aplicação dos conceitos Questionário empresas Problemas entre CRS e DTI Questionário CRS e DTI
  • 43. Aplicação dos Conceitos ● Apresentação dos conceitos da cultura do DevOps entre os envolvidos; ● Utilização de uma ferramenta de monitoramento (New Relic); ● Utilização de uma ferramenta para padronização dos ambientes (Docker);
  • 45. Apresentação dos Conceitos ● Primeiro documento, material sobre o DevOps; ● Segundo documento, tutorial sobre a ferramenta New Relic; ● Terceiro documento, tutorial sobre a ferramenta Docker; ● Encontro/reunião entre o acadêmico, equipes de operações e desenvolvimento;
  • 47.
  • 48. Ferramenta New Relic ● New Relic foi fundada em 2008; ● 250 mil usuários; ● 4 mil aplicações monitoradas por dia; ● Vários tipos de produtos (mobile, browser e servers);
  • 49. Ferramenta New Relic ● Sistema monitorado através do New Relic foi infohab. org.br; ● Tem como características realizar muitas consultas no banco de dados; ● Transações web dos últimos 30 minutos;
  • 50. Ferramenta New Relic Recursos ● Transações Web do Infohab (overview);
  • 51. Ferramenta New Relic Recursos ● Consultas mais demoradas da Infohab (transactions);
  • 52. Ferramenta New Relic Recursos ● Tela queries Infohab (Databases);
  • 53. Ferramenta New Relic Recursos ● Bases com conexão (Service Maps);
  • 54. Ferramenta New Relic Ganhos ● Oferece vários recursos úteis para os desenvolvedores; ● Pontos críticos da aplicação; ● Satisfação dos usuários; ● Aplicação mais estável;
  • 55.
  • 56. Ferramenta Docker ● Open source (código aberto) sem nenhum custo; ● Solicitação de um relatório das versões dos ambientes de desenvolvimento e produção; ● Criação de um máquina para utilização no ambiente de desenvolvimento e no ambiente de produção;
  • 60. Ferramenta Docker Ganhos ● Fácil utilização e distribuição; ● Muito utilizado atualmente por devs/ops; ● Permitiu manter ambientes do CRS e DTI iguais;
  • 62. Resultados Vantagens ● Conhecimento de novos conceitos e ferramentas do DevOps; ● Melhor acompanhamento das aplicações através da ferramenta de monitoramento New Relic; ● Padronização dos ambientes de desenvolvimento e produção; ● Diminuição das diferenças entre os ambientes de desenvolvimento e produção; ● Diminuição da distância entre equipe de desenvolvedores (CRS) e equipe de operações (DTI da Unochapecó);
  • 63. Resultados Desvantagens ● Tempo gasto para aprender e utilizar novas ferramentas; ● Tempo para assimilar novos conceitos; ● Processos burocráticos da Instituição;
  • 65. Conclusões ● Itens importantes foram aplicados; ● Divulgação do DevOps na região do Oeste de Santa Catarina (através do questionário); ● DevOps é um tema atual utilizado por várias empresas de grande porte; ● O DevOps para meios corporativos é necessário muita motivação;
  • 66. Trabalhos futuros Para trabalhos futuros sugere-se aplicar novos itens no CRS e DTI da Unochapecó ou empresas que desconheçam o DevOps: ● Automatizar e facilitar processo de Deploy da aplicação; ● Gerenciamento de logs; ● Ferramentas para centralização das configurações (Chef e Puppet); ● Análise entre a aplicação do DevOps para meios corporativos e startups;
  • 67. Introdução Objetivos Justificativa Ambientes Equipes Monitoramento DevOps Reuniões Questionário Ferramentas Resultados ConclusõesProblemas Questionário Aplicação dos conceitos Questionário empresas Problemas entre CRS e DTI Questionário CRS e DTI
  • 68. Referências ● CARVALHO, Guto. O que é DevOps afinal?. Disponível em: <http: //gutocarvalho.net/octopress/2013/03/16/o-que-e-um-devops-afinal/>. Acesso em: 16 mar. 2015. ● RELIC, New. O que é DevOps? Metodologia, benefícios e ferramentas. Disponível em: <http://newrelic.com/devops/what-is-devops>. Acesso em: 01 maio 2015. ● SATO, Danilo. DevOps na prática: entrega de software confiável e automatizada. São Paulo: Casa do Código, 2013. 248 p.