Como posso utilizar Linux e o Microsoft Azure para hospedar minhas aplicações? - Dica Rápida
Em um artigo anterior abordei o uso do Azure App Service na hospedagem de aplicações Web. Caso deseje conhecer mais a respeito acesse o link a seguir:
Como o Microsoft Azure pode simplificar a publicação de suas Web Apps? - Dica Rápida
Diversas stacks de desenvolvimento populares na atualidade surgiram em ambientes baseados em Linux/Unix. Tal fato contribui para que profissionais que utilizam as mesmas em seus projetos optem, quase que invariavelmente, por máquinas Linux na hospedagem das aplicações correspondentes.
Neste novo post apresento as seguintes opções para a publicação de aplicações no Microsoft Azure a partir de ambientes Linux:
- Azure Container Registry
- Azure Container Instances
- Azure App Service
- Azure Web App for Containers
- Azure Kubernetes Service (AKS)
Embora não se trate propriamente de um serviço de hospedagem de aplicações, o Azure Container Registry é uma alternativa ao Docker Hub que funciona como repositório privado para armazenamento de imagens baseadas em Linux e Windows. Na imagem a seguir temos um exemplo de imagem Linux vinculada a um recurso do Container Registry:
Opção simples e rápida para a criação e execução de containers na nuvem, o Azure Container Instances parte da utilização de imagens Docker (Linux ou Windows):
Permitindo tanto a hospedagem de aplicações Web na nuvem Microsoft:
Quanto a execução de jobs/rotinas de processamento implementadas em aplicações containerizadas:
Já com o Azure Web App Service temos a possibilidade de publicar em Linux ou Windows, a opção de escalar vertical ou horizontalmente uma aplicação (característica esta ausente no serviço Azure Container Instances), HTTPS habilitado por default e fácil integração com soluções como Azure DevOps e GitHub:
Conforme já mencionei no artigo referenciado no início deste post, aplicações Web podem ser hospedadas na nuvem empregando o Azure App Service via imagens Docker ou utilizando stacks como ASP.NET clássico (Web Forms, MVC, Web API), .NET Core, Java, Node, PHP, Python e Ruby.
No que diz respeito ao Azure Web App for Containers, um recurso criado por meio desta alternativa corresponde na prática a um App Service configurado para trabalhar com containers Docker (sejam imagens Linux ou Windows):
E finalmente chegamos ao Azure Kubernetes Service (AKS), serviço gerenciado que facilita a montagem e gerenciamento de um cluster Kubernetes na nuvem e cujos nodes podem ser baseados em máquinas virtuais Linux oferecidas pelo Microsoft Azure:
Em nossos eventos presencias e lives em comunidades como Canal .NET, .NET SP, DevOps Professionals, Coding Night, Campinas .NET, Azure Talks e Docker Definitivo sempre abordamos o uso dos serviços aqui mencionados de maneira gratuita. Fica aqui o convite para você que está acompanhando esse artigo efetuar sua inscrição nestas comunidades.
E que tal aprender mais sobre o Azure App Service na prática, em um workshop que acontecerá durante um sábado (dia 21/09) em São Paulo Capital e implementando na prática um case que combina o uso deste serviço com outras tecnologias como Azure SQL, Azure Storage, Azure Functions e Application Insights? Acesse então o link a seguir para efetuar sua inscrição com um desconto especial: http://bit.ly/anp-promo-linux-definitivo
Para concluir este post deixo aqui algumas referências gratuitas que podem ser úteis para que você conheça um pouco mais sobre os diversos serviços aqui mencionados:
ASP.NET Core + PowerShell: publicando via linha de comando e em segundos uma Web App no Azure
Hospedando projetos Web no Azure: de um site estático a um cluster Kubernetes
Orquestração de containers na Nuvem com o Azure Kubernetes Service (AKS) | Microsoft Tech
Kubernetes: do Pod ao Deployment Automatizado [Vídeo]
Docker para Desenvolvedores .NET - Guia de Referência
Azure Kubernetes Services - AKS: referências gratuitas e dicas para solução de problemas comuns