O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure Brasil - Agosto-2018

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio

Confira estes a seguir

1 de 33 Anúncio

Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure Brasil - Agosto-2018

Baixar para ler offline

Apresentação sobre o uso de Docker e serviços do Microsoft Azure como Web App for Containers e AKS (Azure Kubernetes Service) no desenvolvimento de soluções Web escaláveis. Palestra realizada em conjunto com o MVP Thiago Adriano em meetup promovido pelo grupo Azure Brasil em 28/08/2018 na cidade de São Paulo-SP.

Apresentação sobre o uso de Docker e serviços do Microsoft Azure como Web App for Containers e AKS (Azure Kubernetes Service) no desenvolvimento de soluções Web escaláveis. Palestra realizada em conjunto com o MVP Thiago Adriano em meetup promovido pelo grupo Azure Brasil em 28/08/2018 na cidade de São Paulo-SP.

Anúncio
Anúncio

Mais Conteúdo rRelacionado

Diapositivos para si (20)

Semelhante a Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure Brasil - Agosto-2018 (20)

Anúncio

Mais de Renato Groff (20)

Mais recentes (20)

Anúncio

Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure Brasil - Agosto-2018

  1. 1. • Microsoft Most Valuable Professional (MVP) • Multi-Plataform Technical Audience Contributor (MTAC) • Mais de 15 anos de experiência na área de Tecnologia • Autor Técnico e Palestrante • Um dos organizadores do Canal .NET, do .NET SP e do Azure Brasil Renato Groffe h t t p s : / / m e d i u m . c o m / @ re n a t o . g rof f e /
  2. 2. • Microsoft Most Valuable Professional (MVP) • Desenvolvedor de Software na TV Bandeirantes • Autor Técnico e Palestrante • Um dos organizadores do .NET SP Thiago Adriano h t t p s : / / m e d i u m . c o m / @ p ro g r a m a d r i a n o /
  3. 3. Agenda • Um pouco mais sobre escalabilidade na Web... • Por que utilizar Docker? • Exemplos práticos
  4. 4. Um pouco mais sobre escalabilidade na Web... Vertical Horizontal
  5. 5. Por que escalar uma aplicação Web? • Necessidade de atender a uma demanda crescente de uso sem comprometer a performance • Garantir uma alta disponibilidade
  6. 6. Problemas comuns ao se escalar uma aplicação Web • Como criar rapidamente diferentes instâncias de uma mesma aplicação? • Como evitar problemas envolvendo mudanças de ambientes (Desenvolvimento / Testes para Produção)? • Como configurar sem grandes complicações o balanceamento de carga (load balancing)? • Como evitar problemas com armazenamento temporário de dados (cache em memória, por exemplo)? • Como se recuperar de problemas envolvendo uma instância específica da aplicação?
  7. 7. Algumas respostas... • Utilizando soluções na nuvem do tipo PaaS (Plataform as a Service) → O Microsoft Azure conta com excelentes opções • Empregando alternativas para cache distribuído como o Redis • Utilização de containers Docker • Orquestação de containers com Kubernetes ou Docker Swarm (auto-recuperação e reinicialização automáticas)
  8. 8. Microsoft Azure e escalabilidade na Web • Azure App Service • Azure Web App for Containers • Azure Container Service • Azure Kubernetes Service (AKS)
  9. 9. E por que utilizar Docker?
  10. 10. Principais benefícios • Isolamento • Utilização mais racional de recursos • Rapidez no deployment • Menor dependência do ambiente
  11. 11. Azure Web App for Containers • Hospedagem de aplicações • Suporte a Continuous Integration • Escalabilidade (vertical e horizontal) • Suporte a HTTPS
  12. 12. Azure Web App for Containers - Suporte
  13. 13. Exemplos Práticos + +
  14. 14. Dificuldades na adoção de containers... • Como escalar containers? • Como garantir o trabalho coordenado entre os diferentes containers de uma aplicação? • Como detectar containers com falhas e corrigir isso automaticamente?
  15. 15. E como superar tais dificuldades?
  16. 16. Utilizando orquestradores
  17. 17. Kubernetes: uma visão geral
  18. 18. Kubernetes: uma visão geral • Também conhecido como K8s ou kube • Desenvolvido originalmente pela Google • Mantido pela Cloud Native Computing Foundation • Escrito em Go • Open source
  19. 19. Kubernetes: uma visão geral • Cluster com máquina Master e Nodes • Criação de objetos através de arquivos no formato YAML • Diversas funcionalidades para gerenciamento • kubectl → ferramenta de linha de comando • Minikube → ambiente de testes
  20. 20. Kubernetes: gerenciamento de containers • Orquestração • Auto recuperação • Reinício • Replicação • Escalonamento
  21. 21. Kubernetes: arquitetura • Master • Máquina que controla os Nodes (Nós) • Responsável pelas atribuições de tarefas aos Nodes • Nodes • Máquina que realizam as tarefas atribuídas pelo Master
  22. 22. Kubernetes: arquitetura kubectl
  23. 23. Kubernetes: arquitetura • Pod • Grupo de um ou mais containers implantados em um Node (Nó) • Compartilham o mesmo endereço IP, IPC, nome do host e outros recursos POD
  24. 24. Kubernetes: arquitetura • Deployment • Abstração de um Pod com recursos adicionais • Conta com gerenciamento de estados Deployment POD
  25. 25. Kubernetes: arquitetura • Service • Objeto mais estável (Pods são criados ou removidos continuamente) • Cuidará do acesso aos Pods, funcionando como um Load Balancer
  26. 26. Kubernetes: arquitetura • Replication Controller • Controla quantas cópias idênticas de um Pod serão executadas e em quais locais do cluster • Kubelet • Serviço que garante a inicialização e execução dos containers nos Nodes
  27. 27. Kubernetes: arquitetura
  28. 28. E como a nuvem Microsoft fica nisto? Azure Container Service
  29. 29. E mais recentemente Azure Kubernetes Service (AKS) conhecido anteriormente como AKS (managed Kubernetes) +
  30. 30. Exemplos Práticos + +

×