Escalabilidade de serviços com Kubernetes

0a8f40c6cc23fb6c8aad4de732c5abaf?s=47 Lucas Santos
September 11, 2019

Escalabilidade de serviços com Kubernetes

Do you dream with a fast, scalable, stable, available and simple application all the time? Well, this may not be a dream anymore! Let's discuss what Kubernetes is and how we can improve our whole infrastructure using this awesome orchestrator so we never need to worry about scalability and maintenance issues anymore!

0a8f40c6cc23fb6c8aad4de732c5abaf?s=128

Lucas Santos

September 11, 2019
Tweet

Transcript

  1. 7.
  2. 8.
  3. 11.
  4. 12.

    - Criado dentro do Google como uma ferramenta de orquestração

    em 2000 - Primeira versão OSS lançada em 2015 - Mantido pela CNCF, uma parte da Linux Foundation - "Kubernetes" é a palavra grega para "Timoneiro" - Escrito em Go
  5. 13.

    O que é? - Feito para gerenciar containers - Orquestrador

    de containers - Baseado em clusters - Declarativo - Possui diversas abstrações
  6. 14.
  7. 22.

    Kubectl Nossa caixa de ferramentas universal - Acessa a API

    exposta pelo master - É agnóstico de cluster - Manipula os serviços internos do Kubernetes - Única ferramenta de controle
  8. 24.

    Workloads! Pod Deploy Stateful Set Horizontal Auto Scaler Ingress ReplicaSet

    Service Secret Service Account Daemon Set Config Map Volume Claim Chart
  9. 25.

    Pods - Estruturas básicas do K8S - Podem conter um

    ou mais containers - Isolados - Volumes compartilhados - IP único para todos os serviços
  10. 26.

    Deployments - Agrupam pods em uma estrutura de controle -

    Controlam número de réplicas - Mantém um estado desejado - Controle de falhas - Permitem rolling updates - Gerencia versões diferentes de uma mesma app - Permite upgrades, downgrades e escalabilidade
  11. 27.

    Services - Grupos de pods em um único IP -

    Regras de acesso a um app - IP fixo imutável para todos os pods (mesmo após crash) - Pode ser utilizado para expor serviços externos
  12. 28.

    Ingress - Por padrão, todo tráfego externo é bloqueado para

    o cluster - Ingress são regras de acesso para determinados serviços - Possibilidade de criar registros de DNS para acessar através de um host - Permitem implementação de SSL
  13. 31.

    Gostei! Como eu testo? - Minikube - Micro-k8s - Katacoda

    - Play With Kubernetes - Azure Kubernetes Service - Google Kubernetes Engine - AWS EKS
  14. 32.

    referências_ - https://github.com/khaosdoctor/palestra-containers-kubernetes - http://bit.ly/microsservicos-monolitos - https://github.com/kubernetes - https://kubernetes.io -

    https://kubernetes.io/docs/setup/minikube - https://microk8s.io - https://aws.amazon.com/pt/eks - https://cloud.google.com/kubernetes-engine - https://azure.microsoft.com/pt-br/services/kubernetes-service - https://labs.play-with-k8s.com - https://www.katacoda.com/courses/kubernetes/playground