DevOps Apresentação Encontro Rational 2013
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

DevOps Apresentação Encontro Rational 2013

  • 1,086 views
Uploaded on

Apresentação de DevOps com o SmartCloud Continuous Delivery, realizada no Encontro de Desenvolvimento Rational (Março/2013)

Apresentação de DevOps com o SmartCloud Continuous Delivery, realizada no Encontro de Desenvolvimento Rational (Março/2013)

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,086
On Slideshare
1,081
From Embeds
5
Number of Embeds
2

Actions

Shares
Downloads
43
Comments
0
Likes
5

Embeds 5

http://www.linkedin.com 3
https://twitter.com 2

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • * - Forrestor Study on DevOps, 2011** - From a commissioned study conducted by Forrester Consulting on behalf of IBM*** - Need a study Q: What do we see in industry today?A: 41% of organizations experience delays in application installs, 51% of apps rolled back due to production defect, 45% experience delays due to troubleshooting/fine tuning in production. Cycle time – 4-6 weeks to deploy code changes
  • Citar o caso da Serasa no mainframe que implantou realease management limitando o número de entregas para 1 ao mês e depois de alguns meses buscou aumentar essa quantidade (devido à melhor organização da equipe, automação, et)
  • Green == Existing capabilitiesOrange == New capabilitiesDashed border and Italics == No OSLC provider specification but is aspirational

Transcript

  • 1. Encontro Rational de Desenvolvimento de Software – 12 de março de 2013 – São Paulo DevOps Agilidade além do desenvolvimento, rumo à entrega contínuaFelipe Freire – pfreire@br.ibm.com Encontro Rational de Desenvolvimento de Software Building better software © 2012 IBM Corporation
  • 2. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Agenda Introdução DevOps –Desafios –Princípios e valores –Enterprise DevOps SmartCloud Continuous Delivery –Solução –Demonstração2 © 2013 IBM Corporation
  • 3. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Painel: Você conhece e aplica no seu dia-a-dia? Agile Scrum / Desenvolvimento Iterativo Integração contínua ITIL Release management CMDB Cloud Computing ALM Plataforma Jazz Rational Team Concert3 © 2013 IBM Corporation
  • 4. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Desafios na entrega PessoasHoje as necessidades de negócio e também técnicas Processosestão exigindo mais do que as abordagenstradicionais de entrega podem suportar Informação Desenvolvimento Clientes Negócio (LoB) Operações e Teste 1º 2º Gap Gap Inovação rápida Código e Serviços para o e contínua Requisitos Testes Negócio © 2013 IBM Corporation
  • 5. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Solucionando os GAPs no ciclo de entregas de software Desenvolvimento Clientes Negócio (LoB) Operações e Teste 1º 2º Gap Gap Inovação rápida Código e Serviços para o e contínua Requisitos Testes Negócio Endereçado por… Endereçado por… Dev Agile Ops © 2013 IBM Corporation
  • 6. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Desafios de entregar no prazo com qualidade 34% de todos os novos projetos de TI implantam com atraso** 41% 51% 45% experimenta atrasos das aplicações sofrem experimentam atrasos na integração, roll-back por para identificação de configuração ou teste problemas de problemas e ajustes da aplicação qualidade em produção Produção 4-6 Desenvolvimento Testes 3-4Semanas GAP GAP Semanas tempo médio tempo médiopara entregar para isolar umuma mudança defeito simples 1. Dificuldade em atender às requisições de desenvolvimento e testes para configuração de ambientes – infraestrutura, middleware e aplicações 2. Defeitos em aplicações e problemas de desempenho causam 50% dos rollbacks6 © 2013 IBM Corporation
  • 7. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013DevOps é…Um conjunto de princípios e valoresque visam facilitar a colaboração entredisciplinas para… Pessoas1. Possibilitar a rápida evolução da Processos implantação de serviços para o negócio Informação2. Reduzir riscos e custos e aumentar a qualidade em todo o portfólio 7 © 2013 IBM Corporation
  • 8. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013DevOps: Casos de Sucesso no Mercado 400 servidores por  Pode desabilitar código administrador sem a necessidade de roll-back Roll-outs diários para subconjuntos dos seus  Múltiplas implantações 750 milhões de usuários planejadas por dia8 © 2013 IBM Corporation
  • 9. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Como eles obtiveram esses resultados?Automatizaram tudoProjetam e desenvolvem com esses objetivos • Por que outras empresas não conseguem? • As vezes elas não podem • Não está no DNA9 © 2013 IBM Corporation
  • 10. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Adoção de DevOps no meio corporativo Algumas práticas podem ser adotadas agora Operations Development Team Team Run Line of Business Agile Develop Operations Agile Development Build Manage Analyze Monitor Test Development QA Staging Production Incident Management Development and Test server Production Severs10 © 2013 IBM Corporation
  • 11. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013IBM SmartCloud Continuous Delivery – Valor para o cliente Reduzir ciclos de 3 semanas para algumas horas Configurar ambientes de testes 90% mais rápido 98% de melhoria no atingimento de SLAs © 2013 IBM Corporation
  • 12. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Como Boas Equipes entregam Bons Softwares Código modular Gerenciamento de configuração e mudanças Test-driven development Integração Contínua Refactoring12 © 2013 IBM Corporation
  • 13. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013E depois que o software é construído? Normalmente nós não nos importamos!13 © 2013 IBM Corporation
  • 14. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013E depois que o software é construído? Instruções de Instalação Red Hat Linux Nanana na nana na nanana. Na nanana na nana. Nana nanana nananan na nana na nana nanana na na nanana. Apache Web Server Nanana na nana na nanana. Na nanana na nana. Nana nanana nananan na nana na nana nanana na na nanana.14 © 2013 IBM Corporation
  • 15. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013O que limita a agilidade no ambiente de TI? HARDWARE não é maleável como SOFTWARE15 © 2013 IBM Corporation
  • 16. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013E depois que o software é construído? deploy.rb Instruções de Instalação cookbook_file "/home/jazz/.jrubyrc" do # handle segfaults that occur when using JRuby w/ the IBM JDK Red Hat Linux # see: http://jira.codehaus.org/browse/JRUBY-5700 source "jrubyrc" CLOUD mode "0644" Nanana na nana na nanana. Na end nanana na nana. Nana nanana env_options nananan na nana na nana = { nanana na na nanana. # ensure that build scripts can easily access Java and Jruby from the normal path ANT_HOME => node[:ant][:ant_home], Apache Web Server JAVA_HOME => node[:java][:java_path], PATH => "#{node[:java][:java_path]}/bin:#{node[:jruby][:install_dir]}/jruby/bin:#{ENV[ "PATH"]}" Nanana na nana na nanana. Na } nanana na nana. Nana nanana # install external gem libs na nana na nana nananan %w{cucumber nanana na na net-scp httpclient jruby-openssl json- httpclient rake net-ssh nanana. jruby rubyzip}.each do |gem_name| execute "install_#{gem_name}" do action :run command "#{node[:jruby][:install_dir]}/jruby/bin/jgem install #{gem_name}" environment(env_options) end16 © 2013 IBM Corporation
  • 17. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013DevOps: Princípios e Valores  Colaboração entre disciplinas  Desenvolver e testar em um ambiente Pessoas próximo ao de produção Processos  Implantar frequentemente usando Informação processos repetitíveis e confiáveis  Monitorar continuamente e validar características operacionais de qualidade 17 © 2013 IBM Corporation
  • 18. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Alavancando uma infraestrutura programável#!/usr/bin/env rubyclass DevopsDeployer def initialize(build_url, build_id) @log = Logger.new(LOG_FILE) @log.level = LOG_LEVEL @iaas_gateway = IaasGateway.new(HsltProvider.new(),LOG_FILE, LOG_LEVEL) @server_instance = nil .jsp .html rtc_build_system_provider = RtcBuildSystemProvider.new(RTC_REPOSITORY_URL, RTC_USER_ID, RTC_PASSWORD_FILE) @build = rtc_build_system_provider.resolve_build(build_url, ENV[buildResultUUID], build_id) Infrastructure @build_system_gateway = BuildSystemGateway.new( .javartc_build_system_provider, LOG_FILE, LOG_LEVEL) end as Code def add_build_stamp template_file = WEB_APP_ROOT +"/app/templates/pages/page.html" @log.info "Adding build ID stamp #{@build.id} to .sh#{template_file}" chef recipes # Read in the files contents as a string, replace # the build_id, then overwrite the original contents # of the file text = File.read(template_file) new_text = text.gsub(/{{ build_id }}/, Source Artifacts"<a href="#{@build.uri}">#{@build.id}</a>") File.open(template_file, "w") { |file| } end Source Control file.puts new_text# ... Management 18 © 2013 IBM Corporation
  • 19. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013A esteira de entregas Build, Empacota, Testes unitários .jsp .html Binários Configuração Implantar .java da plataforma .sh chef recipes Ambiente de execução Artefatos entregáveis do sistema Artefatos fontes Repositório de BibliotecaControle de fontes 19 © 2013 IBM Corporation
  • 20. Encontro Rational de Desenvolvimento de Software – 12 de Março de 201320 © 2013 IBM Corporation
  • 21. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Cenário da demonstração Put configuration version Rational Automation Framework Apply Load changes and build configurations to system Publish packages Post results to build Rational AssetOp Engineer Jazz Build Engine(s) Manager (Deployables Library) Rational Team Concert Trigger build Get packages (server) Execute Notify tests results Store changes Provision pattern with build Virtual System Rational Team Concert (Client) Developer Provision system from pattern with build Cloud Provisioning System © 2013 IBM Corporation
  • 22. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013SmartCloud Continuous DeliveryINTRODUZINDO A ENTREGACONTÍNUA 22 © 2013 IBM Corporation
  • 23. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013IBM SmartCloud Continuous Delivery https://jazz.net/products/smartcloud-continuous-delivery/ 23 © 2013 IBM Corporation
  • 24. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013SmartCloud Continuous Delivery packaging Extending Agile Development with Continuous Delivery Build -> Publish -> Deploy -> TestRational Team Concert IBM SmartCloud Provisioning Agile Deployment to Development Virtual Systems 24 © 2013 IBM Corporation
  • 25. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013 Generate automationContinuous Delivery Deployment Design Pull configurations OSLC Continuous Configuration Automation Integration OSLC OSLC Trigger Update Delivery configuration s Trigger Pull deployment Deploy changes Delivery Provisioning service Pipeline Automation Change Collaborative Lifecycle OSLC OSLC Management Start stubs Management OSLC Configure endpoints Service Trigger Simulation & Cloud Track work tests Testing Track work OSLC Track Configure Monitor quality agents application Requirement Quality Application Management Management Monitoring OSLC OSLC OSLC Track Link defect incident Incident Management OSLC © 2013 IBM Corporation
  • 26. 26 Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Sucessos em clientes IBMPlanos de instalação de 80 páginas 35% 95% 50% Crescimento da Redução no tempo 12 equipes de demanda em 35% foi de testes de desenvolvimento, múltipl suportado pela mesma aceitação de 2 as entregas semanais equipe semanas para 3 Padronizou e horas, acelerando a Reduziu o tempo para automatizou o processo entrega com maior início de um projeto de 3 de build e entrega qualidade meses para 4 semanas Redução de 50% no Preparação do Tempo de implantação: tempo de build/entrega ambiente de testes: 3 dias  15 minutos 2 dias  1 hora12 © 2013 IBM Corporation
  • 27. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013 Sumário É o momento para DevOps Sucesso no DevOps requer  Mudança Cultural  Padronização dos processos  Tecnologias para automação A Cloud é um catalizador para projetos DevOps (e vice versa) DevOps possibilita inovar enquanto se reduz o suporte a aplicações existentes27 © 2013 IBM Corporation
  • 28. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013Mais informações sobre DevOps Visão geral de DevOps – http://youtu.be/Lws9aMzRJ_g Demonstração do IBM SmartCloud Contiunous Delivery – http://youtu.be/8oLj3lGFRpc DevOps distilled: A new look at DevOps – http://ibm.co/WHHeKa Sobre o Produto (versão Trial, feedback, etc) – https://jazz.net/products/smartcloud-continuous-delivery/ Sobre DevOps e Desenvolvimento de Software no Brasil Blog Rational Brasil – https://www.ibm.com/developerworks/mydeveloperworks/blogs/rationalbrasil/28 © 2013 IBM Corporation
  • 29. Encontro Rational de Desenvolvimento de Software – 12 de Março de 2013 Felipe Freire – pfreire@br.ibm.com29 © 2013 IBM Corporation