Open4Education | MC122 - Introdução a ALM OpenSource
Praticas DevOps Com ZendServer
1.
2. 2
# wh oami
William Felipe Welter
● Líder das equipes de PHP e PostgreSQL na 4Linux
● Bacharel em Ciência da Computação
● Experiencia com desenvolvimento e infraestrutura
3. 3
Praticas DevOps com Zend Server
Deploys constantes e ambiente estável é possivel ?
4. 4
DevOps
O que é ? Para que serve ?
● Praticas para aproximar as áreas de desenvolvimento e
infraestrutura.
● Permitir deploys constantes mantendo a estabilidade da
aplicação.
● Evitar jogo de empurra entre a equipe de desenvolvimento e
infraestrutura … “A culpa é da aplicação”, “A culpa é da rede”..
● Desenvolvedores conscientes que recursos são finitos e sysadmin
cientes que novidades são necessárias.
5. 5
DevOps
Modelo tradicional
● Times de desenvolvimento e infraestrutura bem definidos e
apartados, com pouca interação e ou comunicação.
● Desenvolvedor “arremessa” o “pacote” para a “infraestrutura”.
7. 7
DevOps
O que pode acontecer ?
● Deploy mal sucedido devido a complexidade dos procedimentos
envolvido na operação, ambiente de produção parado.
● Novos bugs aparecem no ambiente de produção.
● Usuários reclamando de problema de desempenho.
● Time de infraestrutura aponta que o problema é aplicação
● Desenvolvedor não tem acesso a ambiente de produção e gasta-se
horas para se tentar reproduzir os problemas.
9. 9
ZendServer é DevOps
Deploy
● Processo de deploy padronizado e automatizado.
● O desenvolvedor entrega o pacote com todas as operações
necessárias para o deploy.
● O sysadmin não precisa conhecer de maiores detalhes da
aplicação e de programação para executar o deploy
● O sysadmin apenas informa parâmetros do ambiente.
● Todo procedimento de deploy é encapsulado pelo desenvolvedor
no pacote da aplicação.
10. 10
ZendServer é DevOps
Deploy
● Todas as dependências e configurações necessárias
para o correto funcionamento da aplicação podem ser
definidas pelo desenvolvedor.
● Todo procedimento pode ser validado em ambiente de
desenvolvimento e homologação.
● DEMO
11. 11
ZendServer é DevOps
Deploy
● Aumento de confiança da equipe de
infraestrutura.
● Menor chance de ocorrerem falhas
● Mas...
● Se ainda assim o deploy falhar ?
13. 13
ZendServer é DevOps
Rollback
● Sysadmin pode efetuar rollback para versão
anterior com apenas um click.
● Minimiza tempo de retomada em caso de
problemas no deploy.
● Demo
14. 14
ZendServer é DevOps
Desenvolvedores
+
Visibilidade do ambiente
de produção
=
● Agilidade na correção de
bugs.
● Identificação de problemas
de desempenho
15. 15
ZendServer é DevOps
Visão compartilhada do ambiente de produção
● Contas restritas para desenvolvedores onde podem visualizar
todas as estatísticas de monitoramento e eventos de uma
aplicação
● Eventos e code tracings podem ser exportados e importados no
Zend Studio localmente.
● Debug remoto a partir de um Zend Studio para um servidor de
produção
● DEMO
16. 16
ZendServer é DevOps
Monitorar é preciso ! Mas o que monitorar ?
17. 17
ZendServer é DevOps
Métricas definidas no pacote
● O desenvolvedor em conjunto com a equipe de
infraestrutura pode definir todas as métricas de
monitoramento aplicação e embuti-las no pacote.
● O desenvolvedor pode definir métricas a nível de
funções e métodos, que sejam relevantes para o bom
funcionamento da aplicação.
● DEMO