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 para Devs
Search
Victor Martinez
July 28, 2024
Programming
1
78
Kubernetes para Devs
O mínimo necessário para mandar bem na sua empresa!
Victor Martinez
July 28, 2024
Tweet
Share
More Decks by Victor Martinez
See All by Victor Martinez
Building Scalable Restaurants
victormartinez
0
30
Hexagonal Architecture
victormartinez
0
100
Defensive Software Delivery
victormartinez
0
170
O Manual do Trabalho Remoto
victormartinez
0
100
Fast results with Elasticsearch
victormartinez
1
390
Remote Lifestyle: Oportunidades e desafios do programador remoto
victormartinez
0
130
Ferret: an open-source library to extract data from web news pages
victormartinez
0
85
Maintaining 200+ spiders and still having time to sleep
victormartinez
0
100
Crawling the web like a boss
victormartinez
0
200
Other Decks in Programming
See All in Programming
cXML という電子商取引の トランザクションを支える プロトコルと向きあっている話
phigasui
3
2.3k
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
930
カラム追加で増えるActiveRecordのメモリサイズ イメージできますか?
asayamakk
4
1.6k
Pinia Colada が実現するスマートな非同期処理
naokihaba
2
160
gopls を改造したら開発生産性が高まった
satorunooshie
8
240
Content Security Policy入門 セキュリティ設定と 違反レポートのはじめ方 / Introduction to Content Security Policy Getting Started with Security Configuration and Violation Reporting
uskey512
1
440
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
3
400
役立つログに取り組もう
irof
27
8.7k
PagerDuty を軸にした On-Call 構築と運用課題の解決 / PagerDuty Japan Community Meetup 4
horimislime
1
110
VR HMDとしてのVision Pro+ゲーム開発について
yasei_no_otoko
0
110
Go言語でターミナルフレンドリーなAIコマンド、afaを作った/fukuokago20_afa
monochromegane
2
140
とにかくAWS GameDay!AWSは世界の共通言語! / Anyway, AWS GameDay! AWS is the world's lingua franca!
seike460
PRO
1
560
Featured
See All Featured
Designing the Hi-DPI Web
ddemaree
280
34k
Faster Mobile Websites
deanohume
304
30k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
504
140k
[RailsConf 2023] Rails as a piece of cake
palkan
51
4.9k
Designing Experiences People Love
moore
138
23k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
107
49k
The Language of Interfaces
destraynor
154
24k
YesSQL, Process and Tooling at Scale
rocio
167
14k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
32
1.8k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Transcript
@vcrmartinez Lead Software Engineer @ LEND KUBERNETES PARA DEVs O
mínimo necessário para mandar bem na sua empresa! Victor "Frodo" Martinez
PLATAFORMA & CONTAINER & SERVIÇOS & INFRAESTRUTURA & KUBERNETES
MODELO ANTIGO CULTURA DEVOPS VS
QUAL O MÍNIMO NECESSÁRIO PARA MANDAR BEM COMO DEV ?
Créditos: Kubernetes Mega Mind Map <https://www.mindmeister.com/app/map/2875615881>
1. HISTÓRIA & MOTIVAÇÃO 2. ARQUITETURA 3. CONTROLE 4. OBJETOS
5. LOGGING & MÉTRICAS
1 HISTÓRIA & MOTIVAÇÃO
CENÁRIO DE DEPLOY EM MÁQUINAS
CENÁRIO DE DEPLOY EM MÁQUINAS
CENÁRIO DE DEPLOY EM MÁQUINAS
CENÁRIO DE DEPLOY EM MÁQUINAS
Fonte: https://pdos.csail.mit.edu/6.824/papers/borg.pdf
Fonte: https://storage.googleapis.com/pub-tools-public-publication-data/pdf/41684.pdf
Kubernetes /k(j)uːbəˈnɛtɪs/ K8S
Fonte: What is Kubernetes <https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/> Kubernetes é uma plataforma open-source,
portável e extensível para gerenciamento de containers e serviços.
BUILD & DEPLOY Cria uma imagem da sua aplicação e
disponibiliza em um Registry
BUILD & DEPLOY Cria uma imagem da sua aplicação e
disponibiliza em um Registry
BUILD & DEPLOY Informa ao Kubernetes que é preciso atualizar
seu estado com base na imagem publicada e em um arquivo de Manifesto
Arquivo de descreve a especificação do objeto que você deseja
fazer deploy MANIFESTO Objects <https://kubernetes.io/docs/concepts/overview/working-with-objects/>
2ARQUITETURA
Conjunto de componentes que gerenciam os nós do cluster CONTROL
PLANE Components <https://kubernetes.io/docs/concepts/overview/components/>
Conjunto de componentes que gerenciam os nós do cluster CONTROL
PLANE Components <https://kubernetes.io/docs/concepts/overview/components/>
Conjunto de componentes que gerenciam os nós do cluster CONTROL
PLANE Components <https://kubernetes.io/docs/concepts/overview/components/>
3 CONTROLE
KUBECTL Kubernetes Command Line Tool
KUBECTL Kubernetes Command Line Tool
KUBECTL Kubernetes Command Line Tool
GOOGLE KUBERNETES ENGINE Serviço Kubernetes totalmente gerenciável
GOOGLE KUBERNETES ENGINE Serviço Kubernetes totalmente gerenciável
4 OBJETOS
Working with Objects <https://kubernetes.io/docs/concepts/overview/working-with-objects/> Entidades do sistema que representam o
estado do cluster. 1. Applicações containerizadas 2. Recursos disponíveis 3. Políticas de como as aplicações se comportam
Viewing Pods and Nodes <https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/#pods-overview> POD Conjunto de 1 ou
mais containers
Viewing Pods and Nodes <https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/#pods-overview> POD Conjunto de 1 ou
mais containers
Viewing Pods and Nodes <https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/#pods-overview> POD Conjunto de 1 ou
mais containers
Viewing Pods and Nodes <https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/#pods-overview> POD Conjunto de 1 ou
mais containers
POD Conjunto de 1 ou mais containers
POD Conjunto de 1 ou mais containers
DEPLOYMENT Objeto que descreve o estado esperado de um Pod
DEPLOYMENT Objeto que descreve o estado esperado de um Pod
DEPLOYMENT Objeto que descreve o estado esperado de um Pod
SERVICE Gateways que permitem a comunicação com os PODs
SERVICE Gateways que permitem a comunicação com os PODs
SERVICE Gateways que permitem a comunicação com os PODs
SERVICE Gateways que permitem a comunicação com os PODs
SERVICE Gateways que permitem a comunicação com os PODs
SERVICE Gateways que permitem a comunicação com os PODs
SERVICE: LOAD BALANCE Expõe o Serviço externamente usando um LB
do cloud provider.
HORIZONTAL POD AUTOSCALER Ajusta o número de réplicas em resposta
a uma demanda
HORIZONTAL POD AUTOSCALER Ajusta o número de réplicas em resposta
a uma demanda
HORIZONTAL POD AUTOSCALER Ajusta o número de réplicas em resposta
a uma demanda
HORIZONTAL POD AUTOSCALER Ajusta o número de réplicas em resposta
a uma demanda
HORIZONTAL POD AUTOSCALER Ajusta o número de réplicas em resposta
a uma demanda
HORIZONTAL POD AUTOSCALER Ajusta o número de réplicas em resposta
a uma demanda
HORIZONTAL POD AUTOSCALER Ajusta o número de réplicas em resposta
a uma demanda
JOBS & CRONJOB SECRETS & CONFIGMAPS NAMESPACES INGRESS DAEMONSET LABELS
& SELECTORS TAINTS & TOLERATIONS VOLUMES AFFINITY
5 LOGGING & MÉTRICAS
Acesse os logs da aplicação com kubectl logs -f LOGGING
MÉTRICAS Visualize o uso de CPU/Memória
RECAPITULANDO…
MATERIAIS kubernetes.io
MATERIAIS cloud.google.com/kubernetes-engine
MATERIAIS Livros
SERÁ QUE COBRIMOS O MÍNIMO? Victor “Frodo” Martinez Julho, 2024