Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Kubernetes 101
Search
Samuel Birocchi
August 05, 2019
Programming
0
34
Kubernetes 101
Uma pequena introdução a Kubernetes e seus componentes
Samuel Birocchi
August 05, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
Kotlinで実装するCPU/GPU 「協調的」パフォーマンス管理
matuyuhi
0
110
AsyncSequenceとAsyncStreamのプロポーザルを全部読む!!
s_shimotori
1
190
Ktorで簡単AIアプリケーション
tsukakei
0
120
AI 駆動開発におけるコミュニティと AWS CDK の価値
konokenj
5
300
Google Opal解体新書
mickey_kubo
3
100
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
640
ALL CODE BASE ARE BELONG TO STUDY
uzulla
28
6.9k
Developer Joy - The New Paradigm
hollycummins
1
400
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
3
1.7k
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
2
250
Reactive Thinking with Signals and the Resource API
manfredsteyer
PRO
0
120
Google Opalで使える37のライブラリ
mickey_kubo
3
180
Featured
See All Featured
Designing for Performance
lara
610
69k
Code Reviewing Like a Champion
maltzj
526
40k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
How to Think Like a Performance Engineer
csswizardry
27
2.2k
A designer walks into a library…
pauljervisheath
209
24k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
Docker and Python
trallard
46
3.6k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
BBQ
matthewcrist
89
9.9k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
A better future with KSS
kneath
239
18k
Transcript
Kubernetes 101
Samuel Birocchi • Ex-aluno Eng. de Computação UNICAMP • Presidente
AAACEC 2012 • Ex-desenvolvedor iFood • Fundador e CTO da GoBots • Gamer nas horas vagas
Afinal, o que é Kubernetes? "Kubernetes is a portable, extensible,
open-source platform for managing containerized workloads and services, that facilitates both declarative configuration and automation."
História • Servidores físicos / Datacenters • Mais de uma
aplicação por servidor = +Riscos • Recursos subutilizados
• Virtualização! Várias máquinas virtuais por servidor • Aplicações rodam
isoladas (+ segurança) • Mais escalável • Menos custos com hardware • Perfeito História
• Virtualização! Várias máquinas virtuais por servidor • Aplicações rodam
isoladas (+ segurança) • Mais escalável • Menos custos com hardware • Perfeito História ?
História • Containers! • Todos benefícios de VMs + ◦
Consistência de ambientes ◦ Desenvolvimento mais ágil ◦ Roda em qualquer OS ◦ Facilidade para criar micro-serviços ◦ E muito mais
Docker e containers App Runtime Dependências Imagem Contêiner $docker run
Nuvem e escalabilidade $ ssh user@pc1 $ docker run our-app
$ ssh user@pc2 $ docker run our-app Sucesso!
$ ssh user@pc1 $ docker run our-app $ ssh user@pc2
$ docker run our-app Várias máquinas + Varios apps + Múltiplos deploys diários = Alto risco de falha $ ssh user@pc3 $ docker run our-app $ ssh user@pc4 $ docker run our-app $ ssh user@pc5 $ docker run our-app $ ssh user@pc6 $ docker run our-app $ ssh user@pc7 $ docker run our-app $ ssh user@pc8 $ docker run our-app
$ ssh user@pc1 $ docker run our-app $ ssh user@pc2
$ docker run our-app $ ssh user@pc3 $ docker run our-app $ ssh user@pc4 $ docker run our-app Nuvem e escalabilidade
$ ssh user@pc1 $ docker run our-app $ ssh user@pc2
$ docker run our-app $ ssh user@pc3 $ docker run our-app $ ssh user@pc4 $ docker run our-app Nuvem e escalabilidade
$ ssh user@pc1 $ docker run our-app $ ssh user@pc2
$ docker run our-app $ ssh user@pc3 $ docker run our-app $ ssh user@pc4 $ docker run our-app Nuvem e escalabilidade
$ ssh user@pc1 $ docker run our-app $ ssh user@pc2
$ docker run our-app $ ssh user@pc3 $ docker run our-app $ ssh user@pc4 $ docker run our-app Nuvem e escalabilidade
Kubernetes • Descoberta de serviço e balanceamento de carga •
Orquestração de armazenamento • Rollout e Rollback automatizados • Self-Healing • Gerenciamento de secrets e de configuração
Kubernetes
Objetos do Kubernetes: Pods • Menor objeto "deployavel" • Representação
de processos rodando no cluster • Podem ser efêmeros ou guardar estado • Podem possuir mais de um container (casos especiais)
Objetos do Kubernetes: Deployments • Faz o rollout gradual de
pods • Scale up ou down facilitado • Faz o update de versão dos pods • Provavelmente o objeto mais popular
Objetos do Kubernetes: Services • Expõe os pods para o
Cluster/Internet • Responsável pelo balanceamento de carga • Faz o uso de "selectors" para expor os pods
Objetos do Kubernetes: Ingress • Expõe os "services" para o
Cluster/Internet • Faz o roteamento de requisições (proxy reverso)
Objetos do Kubernetes: Outros • Jobs • CronJobs • StatefulSets
• E muito mais
Infra GoBots
Sobre a • Completando 3 anos de empresa HOJE! •
Fundada por ex-alunos computação Unicamp • Parceria com a Unicamp para desenvolvimento da AI proprietária • Escritório em Barão Geraldo • Temos vagas!
[email protected]
Obrigado! Samuel Birocchi
[email protected]
@samuelbirocchi Artigo Kubernetes + Spring: https://itnext.io/migrating-a-spring-boot-service-to-kubernetes-in-5-steps-7c1702da81b6