SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
Evitando Lock-in: Continuous
Deployment, Kubernetes e Spinnaker
para gerenciar um ambiente multi-cloud.
Fonte: https://www.itau.com.br/sobre/quem-somos/
R$ 24,9 bi
lucro líquido
+ 96 mil
colaboradores
74,8 mi
contas-correntes
administradas
7 mi
usuários que
utilizam o app
Itaú Unibanco.
Start Point.
• Falta de integração entre os pipelines;
• Gerenciamento de mudanças ad hoc; • Configuração entre os ambientes são diferentes.
• Falta de monitoramento das implantações;
• Grandes pacotes de implantações;
Aonde queremos chegar?
Remover o passo
de deploy
manual
Pipelines Integrados
(dev, uat, prod)
Canary
Analysis
Zero Downtime
Deployment
Infraestrutura
Imutável
Serviços
Containerizados
“Spinnaker é uma plataforma open source de entrega contínua.
Ele permite a liberação de novas features de software com alta
velocidade e confiança. Ele combina um sistema de gerenciamento
de pipeline poderoso e flexível com integrações aos principais
provedores de nuvem.’’
spinnaker.
features.
conceitos.
Spinnaker vs Kubernetes
Instance
vs
Pod
Server group
vs
Replica set
Cluster
vs
Deployment
Application
vs
Cluster
Load Balancer
vs
Service
Service Group
vs
Network Policy
conceitos.
Spinnaker vs Kubernetes
Instance
vs
Pod
Server group
vs
Replica set
Cluster
vs
Deployment
Application
vs
Cluster
Load Balancer
vs
Service
Service Group
vs
Network Policy
conceitos.
Spinnaker vs Kubernetes
Instance
vs
Pod
Server group
vs
Replica set
Cluster
vs
Deployment
Application
vs
Cluster
Load Balancer
vs
Service
Service Group
vs
Network Policy
conceitos.
Spinnaker vs Kubernetes
Instance
vs
Pod
Server group
vs
Replica set
Cluster
vs
Deployment
Application
vs
Cluster
Load Balancer
vs
Service
Service Group
vs
Network Policy
conceitos.
Spinnaker vs Kubernetes
Instance
vs
Pod
Server group
vs
Replica set
Cluster
vs
Deployment
Application
vs
Cluster
Load Balancer
vs
Service
Service Group
vs
Network Policy
conceitos.
Spinnaker vs Kubernetes
Instance
vs
Pod
Server group
vs
Replica set
luster
vs
Deployment
Application
vs
Cluster
Load Balancer
vs
Service
Service Group
vs
Network Policy
Infraestrutura imutável
A ideia básica é, uma vez que você instância
alguma coisa, você nunca mais a altera.
Aumento da previsibilidade, uma vez que há
pouca variação entre servidores testados e
servidores em produção.
instalação.
• Install Halyard;
• Configure environment;
• Configure Spinnaker;
• Deploy.
https://www.spinnaker.io/downloads/kubernetes/quick-install.yml
ambiente.
• Instalação local de pacotes debian;
• Instalação distribuída no Kubernetes;
• Instalação Git local.
• Jenkins Jobs;
• Webhooks;
• Pub/Sub Messages;
• Docker registry;
• Artifacts GCS/Github.
triggering pipelines
simplificando implantações
• Red/Black (a.k.a blue/green);
• Rollbacks.
• Canary Strategy;
Tenha métricas
para avaliar
(latência, erros,
saturação).
visibilidade.
1
2
3
Configure seu
ambiente canário.
Compare canário
contra linha de base,
não contra produção.
aos times do processo de deploy
https://landing.google.com/sre/sre-book/chapters/monitoring-distributed-systems/
a. Mesmo tempo de implantação
b. Mesmo tamanho de implantação
c. Mesmo tipo e quantidade de tráfego
demo.
análise.
• Coleta de métricas (Kayenta);
• Julgamento;
automatizada de canários
a. Validação dos dados
b. Limpeza de dados
c. Comparação métrica
d. Cálculo da pontuação
demo.
obrigado.
Arquiteto de soluções
@junioortads
https://medium.com/@junior.tads
junior.tads@gmail.com
Joel Júnior.

Mais conteúdo relacionado

Semelhante a Gerenciando ambientes multi-cloud com Spinnaker e Kubernetes

TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
TDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaTDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaRodrigo Cândido da Silva
 
Arquiteturas e Estratégias para Criar Aplicações Modernas na AWS - ARC201 - ...
Arquiteturas e Estratégias para Criar Aplicações Modernas na AWS -  ARC201 - ...Arquiteturas e Estratégias para Criar Aplicações Modernas na AWS -  ARC201 - ...
Arquiteturas e Estratégias para Criar Aplicações Modernas na AWS - ARC201 - ...Amazon Web Services
 
Um método para o desenvolvimento de software baseado em microsserviços
Um método para o desenvolvimento de software baseado em microsserviçosUm método para o desenvolvimento de software baseado em microsserviços
Um método para o desenvolvimento de software baseado em microsserviçosThiago Pereira
 
Microservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixMicroservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixNatanael Fonseca
 
Achieving DevSecOps Outcomes with Tanzu Advanced - Portuguese
Achieving DevSecOps Outcomes with Tanzu Advanced - PortugueseAchieving DevSecOps Outcomes with Tanzu Advanced - Portuguese
Achieving DevSecOps Outcomes with Tanzu Advanced - PortugueseVMware Tanzu
 
Como aplicar práticas DevOps em um sistema monólito
Como aplicar práticas DevOps em um sistema monólito Como aplicar práticas DevOps em um sistema monólito
Como aplicar práticas DevOps em um sistema monólito Anderson Silveira
 
Arquitetura de Micro Serviços
Arquitetura de Micro ServiçosArquitetura de Micro Serviços
Arquitetura de Micro ServiçosFernando Ike
 
Aplicações poderosas e elegantes aprenda a usar Kubernetes
Aplicações poderosas e elegantes aprenda a usar KubernetesAplicações poderosas e elegantes aprenda a usar Kubernetes
Aplicações poderosas e elegantes aprenda a usar KubernetesValdomiro Bilharvas
 
Evento System Center - Apresentação (2)
Evento System Center - Apresentação (2)Evento System Center - Apresentação (2)
Evento System Center - Apresentação (2)Allen Informática
 
Utilização de DevOps
Utilização de DevOpsUtilização de DevOps
Utilização de DevOpsCaio Candido
 
DataLakers 2018 Qmeeting - São Paulo
DataLakers 2018 Qmeeting - São PauloDataLakers 2018 Qmeeting - São Paulo
DataLakers 2018 Qmeeting - São PauloEduardo Hahn
 
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...DevCamp Campinas
 
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...Luiz Costa
 
TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...
TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...
TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...tdc-globalcode
 

Semelhante a Gerenciando ambientes multi-cloud com Spinnaker e Kubernetes (20)

TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
TDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaTDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com Java
 
Arquiteturas e Estratégias para Criar Aplicações Modernas na AWS - ARC201 - ...
Arquiteturas e Estratégias para Criar Aplicações Modernas na AWS -  ARC201 - ...Arquiteturas e Estratégias para Criar Aplicações Modernas na AWS -  ARC201 - ...
Arquiteturas e Estratégias para Criar Aplicações Modernas na AWS - ARC201 - ...
 
Um método para o desenvolvimento de software baseado em microsserviços
Um método para o desenvolvimento de software baseado em microsserviçosUm método para o desenvolvimento de software baseado em microsserviços
Um método para o desenvolvimento de software baseado em microsserviços
 
Microservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixMicroservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud Netflix
 
Achieving DevSecOps Outcomes with Tanzu Advanced - Portuguese
Achieving DevSecOps Outcomes with Tanzu Advanced - PortugueseAchieving DevSecOps Outcomes with Tanzu Advanced - Portuguese
Achieving DevSecOps Outcomes with Tanzu Advanced - Portuguese
 
Como aplicar práticas DevOps em um sistema monólito
Como aplicar práticas DevOps em um sistema monólito Como aplicar práticas DevOps em um sistema monólito
Como aplicar práticas DevOps em um sistema monólito
 
Architecture performance using micro services
Architecture performance using micro servicesArchitecture performance using micro services
Architecture performance using micro services
 
Arquitetura de Micro Serviços
Arquitetura de Micro ServiçosArquitetura de Micro Serviços
Arquitetura de Micro Serviços
 
Aplicações poderosas e elegantes aprenda a usar Kubernetes
Aplicações poderosas e elegantes aprenda a usar KubernetesAplicações poderosas e elegantes aprenda a usar Kubernetes
Aplicações poderosas e elegantes aprenda a usar Kubernetes
 
Evento System Center - Apresentação (2)
Evento System Center - Apresentação (2)Evento System Center - Apresentação (2)
Evento System Center - Apresentação (2)
 
Utilização de DevOps
Utilização de DevOpsUtilização de DevOps
Utilização de DevOps
 
DataLakers 2018 Qmeeting - São Paulo
DataLakers 2018 Qmeeting - São PauloDataLakers 2018 Qmeeting - São Paulo
DataLakers 2018 Qmeeting - São Paulo
 
Datalakers 2018 Qmeeting
Datalakers 2018 QmeetingDatalakers 2018 Qmeeting
Datalakers 2018 Qmeeting
 
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
 
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
 
TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...
TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...
TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...
 
Fundamentos em Containers
Fundamentos em ContainersFundamentos em Containers
Fundamentos em Containers
 
Microservices
MicroservicesMicroservices
Microservices
 
Flisol 2015
Flisol 2015 Flisol 2015
Flisol 2015
 

Gerenciando ambientes multi-cloud com Spinnaker e Kubernetes