Pro Yearly is on sale from $80 to $50! »

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. Kubernetes Escalando seus microservices de forma eficiente

  2. whoami /khaosdoctor @_staticvoid lsantos.dev @khaosdoctor lead engineering architect_ lucas@nindoo.ai

  3. obarra.co trainingcenter.io

  4. abcdevelopers.org cupom: LSANTOSABCDEV2019

  5. Microservices

  6. Vantagens - Rápidos - Simples - Eficientes - Escaláveis -

    Não dependem de uma stack
  7. None
  8. None
  9. Desvantagens - São MUITOS - Complexidade cresce com quantidade

  10. Mapa de uma arquitetura de microservices

  11. None
  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
  13. O que é? - Feito para gerenciar containers - Orquestrador

    de containers - Baseado em clusters - Declarativo - Possui diversas abstrações
  14. None
  15. Production Ready!

  16. Scale to infinity

  17. Como funciona?

  18. Primeiro: Temos um cluster

  19. Segundo: O Master Kubernetes Master Scheduler Service API Server Node

    Controller State storage (etcd)
  20. Terceiro: O Worker Kubelet Proxy Seu APP

  21. Como interagimos_?

  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
  23. O que podemos fazer_?

  24. Workloads! Pod Deploy Stateful Set Horizontal Auto Scaler Ingress ReplicaSet

    Service Secret Service Account Daemon Set Config Map Volume Claim Chart
  25. Pods - Estruturas básicas do K8S - Podem conter um

    ou mais containers - Isolados - Volumes compartilhados - IP único para todos os serviços
  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
  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
  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
  29. Hacking time!

  30. /khaosdoctor @_staticvoid lsantos.dev @khaosdoctor bit.ly/k8s-rocks

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

    - Play With Kubernetes - Azure Kubernetes Service - Google Kubernetes Engine - AWS EKS
  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
  33. referências_ - https://kubernetes.io/docs/reference/command-line-tools-reference/kubel et - https://kubernetes.io/docs/tasks/tools/install-kubectl - https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-int ro -

    https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intr o
  34. /khaosdoctor @_staticvoid lsantos.dev @khaosdoctor obrigado_

  35. Kubernetes: Tudo Sobre Orquestração de Contêineres bit.ly/lsantos-kubernetes Cupom: LIVROKUBERNETE