Slide 1

Slide 1 text

de Gitlab a Kubernetes: Serviços públicos com entrega ágil de sistemas de TIC sustentados por plataforma de orquestração contêineres Adriano Vieira [email protected]

Slide 2

Slide 2 text

de Gitlab a Kubernetes Serviços públicos com entrega ágil de sistemas de TIC sustentados por plataforma de orquestração de contêineres

Slide 3

Slide 3 text

Empresa Brasil de Comunicação ● Agencia Brasil: agência pública de notícias ● NBR Governo Federal: emissora estatal de televisão do Governo Federal ● Portais: Conteúdo público & Comunicação pública. ● Rádioagência Nacional: comunicação de conteúdos radiofônicos ● Rádios: Sistema EBC de Rádio que cobre todo o território nacional ● Serviços: diretamente prestados a clientes publico e privado ● TV Brasil: emissora de TV integrante da Rede Pública de Televisão http://www.ebc.com.br/institucional

Slide 4

Slide 4 text

Empresa Brasil de Comunicação Nacional da Amazônia Nacional de Brasília Nacional do Rio de Janeiro MEC Internet: municípios com acesso para uso público (Fonte: IBGE/2009) Emissoras e parcerias da TV Brasil (geradoras, retransmissoras, afiliadas)

Slide 5

Slide 5 text

Empresa Brasil de Comunicação em TIC ● Equipes: 4 (~30 Dev&Ops) ● Projetos: 300+ ● Java EE, Drupal, RoR, Python, NodeJS, C/C++, pyTorch ● Portais/Serviços/apps ● Gestão de Ativos Digitais ● Publicidade Legal ● Portais EBC ● EBC Play ● EBC Rádios http://www.ebc.com.br/institucional Keep C.A.L.M.S. and having fun!

Slide 6

Slide 6 text

Melhorar e Adaptar Keep C.A.L.M.S. and having fun!

Slide 7

Slide 7 text

Tecnologia Melhorar e Adaptar Keep C.A.L.M.S. and having fun!

Slide 8

Slide 8 text

Tecnologia Processos Melhorar e Adaptar Keep C.A.L.M.S. and having fun!

Slide 9

Slide 9 text

Tecnologia Processos Pessoas Fonte: Making IT Lean Melhorar e Adaptar Keep C.A.L.M.S. and having fun!

Slide 10

Slide 10 text

Tecnologia Processos Pessoas (Cultura) Fonte: Making IT Lean Melhorar e Adaptar Keep C.A.L.M.S. and having fun!

Slide 11

Slide 11 text

Fonte: HBS. https://www.isc.hbs.edu/strategy/business-strategy/Pages/the-value-chain.aspx Melhorar e Adaptar Keep C.A.L.M.S. and having fun! Cadeia de Valor Michael Porter

Slide 12

Slide 12 text

Fonte: The Lean IT house. Orzen, Paider Melhorar e Adaptar Keep C.A.L.M.S. and having fun!

Slide 13

Slide 13 text

Melhorar e Adaptar Keep C.A.L.M.S. and having fun!

Slide 14

Slide 14 text

Melhorar e Adaptar Keep C.A.L.M.S. and having fun! Cadeia de Valor em TI

Slide 15

Slide 15 text

Melhorar e Adaptar Trabalhe em interações curtas ajustadas ao negócio Cultura de experimentação Keep C.A.L.M.S. and having fun!

Slide 16

Slide 16 text

Melhorar e Adaptar Feedback constante Gestão apoiada em observação / monitoramento / KPI Keep C.A.L.M.S. and having fun!

Slide 17

Slide 17 text

Melhorar e Adaptar

Slide 18

Slide 18 text

E Melhorar e Adaptar

Slide 19

Slide 19 text

Tecnologias Keep C.A.L.M.S. and having fun!

Slide 20

Slide 20 text

Periodic Table of DevOps Tools (v3) from @XebiaLabs https://xebialabs.com/periodic-table-of-devops-tools Tecnologias Keep C.A.L.M.S. and having fun!

Slide 21

Slide 21 text

Cloud Native Landscape from @CloudNativefdn https://landscape.cncf.io/ Tecnologias Keep C.A.L.M.S. and having fun!

Slide 22

Slide 22 text

Tecnologias Adote a mais aderente a resolver o problema Cultura de experimentação & domínio da equipe Keep C.A.L.M.S. and having fun!

Slide 23

Slide 23 text

Tecnologias Keep C.A.L.M.S. and having fun! Kanban

Slide 24

Slide 24 text

Tecnologias -CI build / teste / .. Keep C.A.L.M.S. and having fun! Kanban

Slide 25

Slide 25 text

Tecnologias -CI build / teste / .. Keep C.A.L.M.S. and having fun! -CI deploy CaaS Kanban & Análise de ciclos

Slide 26

Slide 26 text

Keep C.A.L.M.S. and having fun! Tecnologias

Slide 27

Slide 27 text

 Gitlab (http://www-scm.ebc)  SonarQube (http://www-qa.ebc)  Nexus (http://www-bin.ebc)  Gitlab-CI Runner  Docker  PostgreSQL  Rancher Keep C.A.L.M.S. and having fun! Tecnologias

Slide 28

Slide 28 text

 Gitlab (http://www-scm.ebc)  SonarQube (http://www-qa.ebc)  Nexus (http://www-bin.ebc)  Gitlab-CI Runner  Docker  PostgreSQL  Rancher Keep C.A.L.M.S. and having fun! Tecnologias

Slide 29

Slide 29 text

Keep C.A.L.M.S. and having fun!  Gitlab (http://www-scm.ebc)  SonarQube (http://www-qa.ebc)  Nexus (http://www-bin.ebc)  Gitlab-CI Runner  Docker  PostgreSQL  Rancher Tecnologias

Slide 30

Slide 30 text

 Gitlab (http://www-scm.ebc)  SonarQube (http://www-qa.ebc)  Nexus (http://www-bin.ebc)  Gitlab-CI Runner  Docker  PostgreSQL  Rancher Keep C.A.L.M.S. and having fun! Tecnologias

Slide 31

Slide 31 text

 Gitlab (http://www-scm.ebc)  SonarQube (http://www-qa.ebc)  Nexus (http://www-bin.ebc)  Gitlab-CI Runner  Docker  PostgreSQL  Rancher Keep C.A.L.M.S. and having fun! Tecnologias

Slide 32

Slide 32 text

 Gitlab (http://www-scm.ebc)  SonarQube (http://www-qa.ebc)  Nexus (http://www-bin.ebc)  Gitlab-CI Runner  Docker  PostgreSQL  Rancher Keep C.A.L.M.S. and having fun! Day 2 DevOps Tecnologias

Slide 33

Slide 33 text

 Gitlab (http://www-scm.ebc)  SonarQube (http://www-qa.ebc)  Nexus (http://www-bin.ebc)  Gitlab-CI Runner  Docker  PostgreSQL  Rancher Keep C.A.L.M.S. and having fun! Day 2 DevOps Tecnologias

Slide 34

Slide 34 text

Tecnologias -CI build / teste / .. Keep C.A.L.M.S. and having fun! -CI deploy CaaS Kanban & Análise de ciclos

Slide 35

Slide 35 text

Keep C.A.L.M.S. and having fun! Tecnologias

Slide 36

Slide 36 text

Keep C.A.L.M.S. and having fun! Tecnologias

Slide 37

Slide 37 text

Fluxo CI/CD aplicado  DSL do pipeline como código ➔.gitlab-ci.yml + docker  DSL deploy (rancher + k8s) ➔deployment.yml + service.yml + loadbalancing.yml Keep C.A.L.M.S. and having fun!

Slide 38

Slide 38 text

Fluxo CI/CD aplicado  DSL do pipeline como código .gitlab-ci.yml + docker (http://www-scm.ebc/help/ci/yaml/README.md) Keep C.A.L.M.S. and having fun!

Slide 39

Slide 39 text

Fluxo CI/CD aplicado  DSL do pipeline como código .gitlab-ci.yml + docker (http://www-scm.ebc/help/ci/yaml/README.md) em tempo de CI, instancia serviço de BD em docker Keep C.A.L.M.S. and having fun!

Slide 40

Slide 40 text

Fluxo CI/CD aplicado  DSL do pipeline como código ➔.gitlab-ci.yml + docker Testes: Preparação Keep C.A.L.M.S. and having fun!

Slide 41

Slide 41 text

Fluxo CI/CD aplicado Testes:Execução http://www-scm.ebc/corporativo/api-ebcPlay/blob/development/.gitlab-ci.yml Keep C.A.L.M.S. and having fun!

Slide 42

Slide 42 text

Fluxo CI/CD aplicado  DSL deploy (.gitlab-ci.yml) (Rancher+K8s) deployment.yml + service.yml + ingress-lb.yml Keep C.A.L.M.S. and having fun!

Slide 43

Slide 43 text

Fluxo CI/CD aplicado  DSL deploy (.gitlab-ci.yml) (Rancher+K8s) deployment.yml + service.yml + ingress-lb.yml Keep C.A.L.M.S. and having fun!

Slide 44

Slide 44 text

Desafios Identificar cadeia de valor Testes incipientes e manuais Domínio da infraestrutura Deploy dia(s) Monitoramento de serviços baixa maturidade Keep C.A.L.M.S. and having fun!

Slide 45

Slide 45 text

Desafios Keep C.A.L.M.S. and having fun! D ev D evO ps O ps 360º 360º Entender a cadeia de valor Testes automatizados dev*.*ops Domínio da infraestrutura n Deploy/dia Monitoramento de serviços alta maturidade

Slide 46

Slide 46 text

Resultados  agilidade na entrega:  de: dia(s) para: < 1h  maturidade de testes  de: manual para: automatizado  entregas com mais qualidade  Débito técnico: < 5% Keep C.A.L.M.S. and having fun!

Slide 47

Slide 47 text

Oportunidades  Aprimorar cobertura de testes  Ampliar uso da esteira CI/CD para mais projetos  Aumentar a qualidade do código  Amplificar monitoramento de comportamento de aplicações e ambientes Keep C.A.L.M.S. and having fun! “Eficiência & Agilidade” (~5min), https://www.youtube.com/watch?v=u00S-hCnmFY Fome de poder / The Founder

Slide 48

Slide 48 text

Estou Preparado para o Futuro do Trabalho? Keep C.A.L.M.S. and having fun! Cadeia de valor

Slide 49

Slide 49 text

Referências  Accelerate. Nicole Forsgren, Gene Kim, Jez Humble. 2018  Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Jez Humble, David Farley. 2010  Continuous Integration: Improving Software Quality and Reducing Risk. Andrew Glover, Steve Matyas, Paul M. Duvall. 2007  The Lean IT Field Guide. Thomas A. Paider, Michael A. Orzen. 2017  Making IT Lean. Rebecca Duray, Howard Williams. 2012  GitLab Continuous Integration (GitLab CI/CD), https://docs.gitlab.com/ce/ci  Continuous integration, https://en.wikipedia.org/wiki/Continuous_integration  Ansible IT automation tool documentation, https://docs.ansible.com/  Docker Documentation, https://docs.docker.com  SonarQube documentation, https://docs.sonarqube.org/ Keep C.A.L.M.S. and having fun!

Slide 50

Slide 50 text

@adriano_vieira speakerdeck.com/adrianovieira gitlab.com/adrianovieira Adriano Vieira Entusiasta em integração de equipes e agilidade em entrega de resultados, atua como agente influenciador na implementação de infraestruturas ágeis e na internalização de práticas Lean & DevOps. Profissional de TI com mais 20 anos de experiência trabalhando e gerenciando equipes em ambientes de Datacenter, tendo atuado em desenho, análise e desenvolvimento de sistemas de baixa a alta complexidade como ERP. Também atuou como líder do desenvolvimento de projeto open-source e contribui para projetos desta natureza. Atualmente trabalha na Empresa Brasil de Comunicação (EBC) como Coordenador de Desenvolvimento e Distribuição de Conteúdos. É formado em engenharia mecânica e em MBA. Keep C.A.L.M.S. and having fun!