IFSP 2015 - Cultura DevOps
-
Upload
leonardo-comelli -
Category
Software
-
view
415 -
download
0
Transcript of IFSP 2015 - Cultura DevOps
![Page 1: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/1.jpg)
CULTURA DEVOPS@leocomelli
![Page 2: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/2.jpg)
Leonardo Comelli@leocomelli
![Page 3: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/3.jpg)
![Page 4: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/4.jpg)
porque estamos aqui?software vs sistema
![Page 5: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/5.jpg)
o mais importante é…
![Page 6: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/6.jpg)
entregar valor para o cliente!
![Page 7: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/7.jpg)
mas isso precisa ser feito com:rapidez | segurança | confiabilidade
![Page 8: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/8.jpg)
nada é perfeito, as coisas podem falhar...
![Page 9: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/9.jpg)
qual o segredo?
![Page 10: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/10.jpg)
falhar rápido!
![Page 11: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/11.jpg)
como falhar rápido?desenvolvimento ágil | entrega contínua | análise da operação
![Page 12: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/12.jpg)
dev opsesse fluxo envolve os dois times
![Page 13: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/13.jpg)
porque toda essa distância?existe um conflito de interesse
![Page 14: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/14.jpg)
alteraré o papel do dev
![Page 15: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/15.jpg)
estabilizaré o papel de ops
![Page 16: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/16.jpg)
devnão publicam software consistente
![Page 17: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/17.jpg)
opssão resistentes a mudanças
![Page 18: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/18.jpg)
devprocesso ágil
![Page 19: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/19.jpg)
opsprocesso estático
![Page 20: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/20.jpg)
dev“na minha máquina funciona…"
![Page 21: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/21.jpg)
ops“não é o servidor, é o seu código…"
![Page 22: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/22.jpg)
é necessário unir os times
![Page 23: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/23.jpg)
feito! isso é devops!
![Page 24: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/24.jpg)
não!
![Page 25: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/25.jpg)
dev opsdevops não é juntar os times
![Page 26: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/26.jpg)
devops não é o time de opsdesenvolver um sistema para substituir os demais
![Page 27: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/27.jpg)
devops não é o time de opscriar um ambiente de uma maneira simples
![Page 28: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/28.jpg)
devops não é o time de opssaber o que o time de dev quer
![Page 29: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/29.jpg)
devops não é o time de devsaber utilizar uma ferramenta de aprovisionamento
![Page 30: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/30.jpg)
devops não é o time de devcriar um script para publicar uma nova versão
![Page 31: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/31.jpg)
devops não é o time de devsaber o que o time de ops quer
![Page 32: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/32.jpg)
devops não é apenasferramentas, automação, acessos e time
![Page 33: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/33.jpg)
os princípios são maiores que as práticas
![Page 34: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/34.jpg)
devops écomunicação, entendimento, integração e relacionamento
![Page 35: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/35.jpg)
devops é cultura!
![Page 36: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/36.jpg)
devops é uma cultura de colaboração entre desenvolvedores e operações
![Page 37: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/37.jpg)
[in]felizmente devops não é uma opção
![Page 38: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/38.jpg)
precisamos de tudo muito rápidoalterações, publicações, identificação de problemas, correções
![Page 39: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/39.jpg)
lembre-se, falhar é normal o segredo é falhar rápido!
![Page 40: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/40.jpg)
o que pode nos auxiliar a falhar rápido?ferramentas e automatizações
![Page 41: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/41.jpg)
pipeline!um exemplo
![Page 42: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/42.jpg)
executar testesintegração
executar testesunitários
obter dados doversionador
compilar códigofonte
publicar em homologaçãoempacotar
gerar documentação
publicar em produção
executar testes de aceitação
![Page 43: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/43.jpg)
publicaçãodeploy com bug zero?
![Page 44: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/44.jpg)
publicaçãoblue/green deployment
![Page 45: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/45.jpg)
https://blog.snap-ci.com/blog/2015/06/22/continuous-deployment-strategies
![Page 46: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/46.jpg)
publicaçãocanary deployment
![Page 47: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/47.jpg)
https://blog.snap-ci.com/blog/2015/06/22/continuous-deployment-strategies
![Page 48: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/48.jpg)
o trabalho não acaba após o deploy
![Page 49: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/49.jpg)
operation analyticsmonitoramento
![Page 50: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/50.jpg)
ferramentasalguns exemplos
![Page 51: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/51.jpg)
sistema de controle de versãosvn, tfs, git, etc
![Page 52: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/52.jpg)
$ git init
$ touch README.md
$ git add .
$ git commit -‐m “Criado arquivo readme”
$ git remote add origin https://github.com/user/repo.git
$ git push -‐u origin master
![Page 53: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/53.jpg)
infra como códigoansible, chef, puppet, etc
![Page 54: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/54.jpg)
-‐-‐-‐ -‐ name: create user group sudo: yes group: name: "hpe_apps" state: present
-‐ name: add server user sudo: yes user: name: "comelli" password: secret system: yes group: "hpe_apps" state: present
![Page 55: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/55.jpg)
virtualizaçãodocker, vagrant, vmware
![Page 56: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/56.jpg)
![Page 57: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/57.jpg)
# Pull base image. FROM ubuntu
# Install Ruby. RUN \ apt-‐get update && \ apt-‐get install -‐y ruby ruby-‐dev ruby-‐bundler && \ rm -‐rf /var/lib/apt/lists/*
# Define working directory. WORKDIR /data
# Define default command. CMD ["bash"]
![Page 58: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/58.jpg)
orquestração de containermesos, kubernetes, swarm, etc
![Page 59: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/59.jpg)
![Page 60: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/60.jpg)
integração contínuatravis, jenkins, go, etc
![Page 61: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/61.jpg)
![Page 62: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/62.jpg)
entrega e deploy contínuotravis, jenkins, go, etc
![Page 63: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/63.jpg)
![Page 64: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/64.jpg)
entrega contínua != deploy contínuo
![Page 65: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/65.jpg)
operation analyticslogstash, elasticsearch e kibana
![Page 66: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/66.jpg)
![Page 67: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/67.jpg)
esta pronto para o devops?
![Page 68: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/68.jpg)
Obrigado!http://slideshare.net/leocomelli
![Page 69: IFSP 2015 - Cultura DevOps](https://reader030.fdocuments.net/reader030/viewer/2022021421/5876fe0a1a28abf3398b6bd3/html5/thumbnails/69.jpg)
Bônus!git, docker, jenkins, travis ou kibana?