Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Infraestrutura Ágil

Guto Carvalho
September 26, 2015

Infraestrutura Ágil

Entenda a evolução deste novo modelo de operação

Guto Carvalho

September 26, 2015
Tweet

More Decks by Guto Carvalho

Other Decks in Technology

Transcript

  1. ‣ Guto Carvalho ‣ Consultor e Instrutor na Instruct ‣

    Especialista em Gerência de Configurações e Orquestração ‣ Puppet Certified Professional & Instructor ‣ Blogueiro de TI há mais de 12 anos ‣ RHCSA, RCHE, RHCJA, ZCS, ZCP, LPIC3, PCP, PCI, NCLA ‣ 15 anos de experiência com linux, redes e tecnologias open source ‣ Atou e atua em diversos projetos de Governo ‣ ITI, MINICOM, MDA, MJ, MINC, EBC, PR, DATAPREV ‣ CAIXA, DETRAN-DF, ANATEL, FNDE, TCU ‣ Atua em diversos projetos de automação na iniciativa privada www.instruct.com.br Quem sou?
  2. Sobre a Instruct • Especializada em Infraestrutura Ágil e Automação

    • Possui profissionais pioneiros em automação no Brasil • Empresa alinhada com princípios da Cultura DevOps e Infra Ágil • 1o Parceira da Puppet Labs no Brasil • Única ATP (Authorized Training Partner) Puppet Labs no Brasil • Profissionais com mais de 15 anos de experiência em TI • Empresa atuando em projetos de Governo e Iniciativa Privada
  3. Plano de trabalho • 40 minutos de apresentação • 146

    slides serão apresentados • Ao final mais 5 minutos para últimas dúvidas • Pergunte quando quiser • Coloque seus gadgets em modo silencioso www.instruct.com.br
  4. Agenda • Esclarecendo alguns conceitos (5min) • A ideia por

    trás do conceito (5min) • Eixos principais da infraestrutura Ágil • Automação (5min) • Orquestração (5min) • Provisionamento (5min) • Deploy (5min) • Métricas (5min) • Feedback Equipe (5min) • Perguntas 6 www.instruct.com.br
  5. 9 Não existe um modelo formalizado, um manifesto ou um

    roteiro único a ser seguido www.instruct.com.br
  6. 10 Hoje o conceito traz um conjunto de boas práticas

    que se adaptada as necessidades de operação e infraestrutura www.instruct.com.br
  7. Infraestrutura ágil é parte integrante e fundamental do DevOps que

    é um conceito, uma cultura e um modelo muito mais amplo 12 www.instruct.com.br
  8. Se você utiliza automação isso não significa que sua infra

    seja ágil, de forma objetiva, isso significa que sua infra está sendo automatizada, somente isto! 14 www.instruct.com.br
  9. 16 Infraestrutura ágil está diretamente relacionada a uma mudança de

    compor tando no consumo e no gerenciamento de recursos de TI em uma organização www.instruct.com.br
  10. 17 Mudar o compor tament o significa entregar o que

    o cliente precisa de uma forma simples e eficaz www.instruct.com.br
  11. 18 Para entregar recursos e permitir a gestão destes, é

    necessário pensar e agir de forma disruptiva www.instruct.com.br
  12. 19 É preciso utilizar soluções e m é t o

    d o s q u e t o r n e m a construção de ambientes e sistemas algo flexível e rápido www.instruct.com.br
  13. 20 A infraestrutura ágil precisa permitir e deve ampliar o

    feedback entre pessoas e equipes para que isto agregue valor a organização www.instruct.com.br
  14. 22 Uma boa forma de começar essa mudança é olhar

    para os conceitos e as experiências do modelo ágil de desenvolvimento www.instruct.com.br
  15. 23 Pense mais em colaborar, pense mais em interagir, pense

    mais em empoderar pessoas e simplificar processos www.instruct.com.br
  16. 28 Automação é obrigatória se o s e u a

    m b i e n t e u t i l i z a tecnologias de container, virtualização ou nuvem www.instruct.com.br
  17. 29 Automação está diretamente ligada a soluções de gerência de

    configurações que implementam o que chamamos de "infraestrutura como código" www.instruct.com.br
  18. 30 Não há mais espaço para longas janelas de tempo

    para provisionamento de ambientes www.instruct.com.br
  19. 32 Não há mais espaço para p r o c

    e s s o s l e n t o s e burocráticos www.instruct.com.br
  20. 33 Em infra ágil criar novos ambientes deve algo simples

    e deve ser realizado em minutos ao invés de horas, dias, semanas ou meses www.instruct.com.br
  21. 34 E a criação desses ambientes , em determinados contextos,

    deve ser feita pelo cliente e não pela operação www.instruct.com.br
  22. 36 Para a infraestrutura ágil, a configuração de ambientes e

    serviços deve ser realizada por sua sua ferramenta de gerência de configurações e todo esse processo deve ser automatizado www.instruct.com.br
  23. 37 Sua ferramenta de gerência deve ter inteligência o suficiente

    para conseguir identificar e corrigir problemas em sua infra e em si mesma www.instruct.com.br Omeostasia Idempotência Autogerência Autoconserto
  24. 38 Sua ferramenta de gerência de configuração deve oferecer o

    conceito de documentação executável www.instruct.com.br
  25. 39 V o c ê p r e c i

    s a c o n s e g u i r acompanhar todo o ciclo de vida de cada servidor do seu parque www.instruct.com.br
  26. 40 Você precisa ter condições de acompanhar e entender as

    mudanças que ocorreram em cada servidor www.instruct.com.br
  27. 42

  28. 44 www.instruct.com.br RSPEC PUPPET PUPPET
 PARSER
 VALIDATE PUPPET
 LINT BEAKER

    KITCHEN
 PUPPET TRAVIS
 CI KITCHEN
 CI JENKINS BATS JARVIS
  29. 46

  30. 47

  31. 48

  32. 51 Orquestrar significa invocar ações de forma paralela ou não,

    em tempo real, em servidores de um datacenter, fazendo isto de forma automatizada, eficiente e controlada. www.instruct.com.br
  33. 52 Ferramentas de automação t a m b é m

    p r e c i s a m d e gerenciamento, a orquestração te permite preencher este espaço www.instruct.com.br
  34. 53 Você pode encontrar significados d i f e r

    e n t e s p a r a t e r m o orquestrar, isto pode variar de fabricante ou tecnologia www.instruct.com.br
  35. 54 E m i n f r a e s

    t r u t u r a á g i l , orquestrar significa agir e interagir em tempo real com nosso parque de servidores www.instruct.com.br
  36. 58 O provisionamento permite que sejam criados ambientes simples ou

    complexos, usando ou não gerência de configurações, usando ou não orquestração www.instruct.com.br
  37. 59 Instalar um sistema operacional em um host físico com

    uma mídia física é provisionar www.instruct.com.br
  38. 60 I n s t a l a r u

    m s i s t e m a operacional em um host físico através da rede é provisionar www.instruct.com.br
  39. 61 C r ia r uma V M em um

    Hypervisor é provisionar www.instruct.com.br
  40. 62 Criar uma container em cima do LXC do Kernel

    Linux é provisionar www.instruct.com.br
  41. 63 Para inf rae s t r ut ura ágil

    , provisionar significa ter uma camada de inteligência entre sua necessidade e suas ferramentas www.instruct.com.br
  42. 65

  43. 66

  44. 67

  45. 68

  46. 69

  47. 70

  48. 71

  49. 72 Não crie VMs/Containers/Instâncias ou ambientes manualmente, coloque i n

    t e l i g ê n c i a e m s u a i n f r a , u s e provisionamento dinâmico para abstrair atividades repetitivas e processos complexos www.instruct.com.br
  50. 74 Vamos nivelar o que é deploy e o que

    é qualquer outra coisa. www.instruct.com.br
  51. 75 Receber arquivos anexados em um e- mail, pedindo para

    colocá-los em 15 diretórios distintos em 7 servidores em diferentes redes - manualmente - não é DEPLOY. www.instruct.com.br
  52. 76 Entrar em um servidor em produção, editar um arquivo

    de texto manualmente e alterar a linha X ou Y a pedido de alguém não é deploy. www.instruct.com.br
  53. 77 Publicar quaisquer coisa em produção que não passe por

    um build automatizado que contenha diversos testes (unitários, comportamental, aceitação, funcional, etc..) não é deploy www.instruct.com.br
  54. 78 Tais exemplos, infelizmente comuns, mostram grandes riscos que organizações

    se expõe devido a um falho processo em s e u a m b i e n t e d e o p e r a ç ã o e desenvolvimento www.instruct.com.br
  55. 79 Em infraestrutura ágil fazer deploy significa entregar uma nova

    versão de uma aplicação com segurança, eficiência e baixo risco www.instruct.com.br
  56. 80 Isto significa que para algo ir para produção, este

    deve ser rigorosamente testado e armazenado em local adequado para permitir o deploy e se necessário o rollback www.instruct.com.br
  57. 82 O código da aplicação deve ser sempre versionado, desenvolvimento

    sem controle de código não é uma prática segura para a organização www.instruct.com.br
  58. 85 Sempre que alguém fizer um commit no repositório de

    uma aplicação, isto deve acionar um gatilho de integração com alguma ferramenta para que seja feito o build automatizado da versão www.instruct.com.br
  59. 88 Durante o processo de build as ferramentas devem fazer

    diversos tipos de testes invocando tecnologias especializadas para aquela linguagem ou ambiente www.instruct.com.br
  60. 89 Caso o build falhe a nova versão não será

    empacotada e não será armazenada no repositório www.instruct.com.br
  61. 92 Uma vez feito o build das aplicações, estas devem

    ser armazenadas em um repositório afim de que seja possível configurar algum tipo de deploy automatizado www.instruct.com.br
  62. 94 A equipe de infraestrutura deve automatizar o deploy de

    acordo com premissas claras para publicação, tais como versão, branch, tag, etc. www.instruct.com.br
  63. 95 Não é papel da equipe de infraestrutura autorizar ou

    decidir se algo deve ser publicado ou não, essa competência não cabe a eles www.instruct.com.br
  64. 96 O processo de CI composto pelos testes de unitários

    e de aceitação deve ser uma das premissas além do aceite do time de QA www.instruct.com.br
  65. 97 O rollback tem que ser um processo tão simples

    e automatizado quanto o deploy www.instruct.com.br
  66. 100 Se você não tem métricas de seu ambiente, você

    está administrando sua infra no escuro e na adivinhação www.instruct.com.br
  67. 112

  68. 113

  69. 116 Gerar o dados Coletar o dados Processar os dados

    Encaminhar os dados Armazenar os dados Visualizar e consumir os dados
  70. Assuma o controle da sua infra, saiba o que acontece

    nela, como, quando, onde e por que! 125 www.instruct.com.br
  71. Integre seu monitoramento com sua inteligência de orquestração, gerência de

    configurações e até mesmo com o provisionamento 126 www.instruct.com.br
  72. 128 Talvez a parte mais sensível de uma iniciativa de

    infraestrutura ágil seja a mudança na forma da equipe se comunicar e trabalhar www.instruct.com.br
  73. 129 As pessoas precisam se comunicar, se expressar, precisam ter

    liberdade criativa, precisam de direcionamento e principalmente de foco www.instruct.com.br
  74. 133 Ajude sua equipe a encontrar o que ela precisa

    para se motivar e para manter o foco www.instruct.com.br
  75. 136 Qual o estado desejado de nossa infra daqui a

    3, 6, 9 e 12, 24 meses? www.instruct.com.br
  76. 139 Ajude-os a enxergar o caminho a ser percorrido e

    tudo será mais fácil www.instruct.com.br
  77. 140 Se as pessoas estão motivadas, se elas tem liberdade

    criativa, sem tem incentivo e direcionamento, isso retorna como resultados positivos para o profissional, para a equipe e para a organização www.instruct.com.br
  78. 144 " Te c n o l o g i

    a é m a t o , o importante são as pessoas”. @dpadua www.instruct.com.br
  79. 145 Apesar de todos os métodos e tecnologias, o importante

    são as sempre as pessoas, são elas que fazem seu negócio fluir, lembre-se disto! www.instruct.com.br
  80. Como é a transição de uma infra clássica para uma

    infra ágil? 147 www.instruct.com.br
  81. blog: gutocarvalho.net
 twitter: @gutocarvalho telegram: @gutoccarvalho skype: gutoccarvalho freenode irc:

    gutocarvalho
 email: [email protected]
 email: [email protected]
 
 slideshare.net/instructbr slideshare.net/gutocarvalho speakerdeck.com/instructbr speakerdeck.com/gutocarvalho
 
 tel: 61-3246-929 / 19-2511-6506 152 www.instruct.com.br Entre em contato