Desmistificando o Azure #1 - Máquinas Virtuais

Desmistificando o Azure #1 - Máquinas Virtuais
Olá pessoal, hoje vamos falar um pouco sobre máquinas virtuais no Azure. O conceito é bem extenso porque vamos falar de um dos recursos mais utilizados na plataforma de nuvem da Microsoft e é difícil encontrar uma nuvem que não disponha deste tipo de recurso. Ainda assim, não vamos nos aprofundar tanto, até porque, uma coisa confunde demais no momento de dimensionar o seu ambiente é saber qual o tamanho correto para uma máquina virtual?
Arquitetura de VM única no Microsoft Azure

Arquitetura de VM única no Microsoft Azure

Quando entramos na página do Azure, nos deparamos com uma sopa de letrinhas que parece não ter nenhum significado e neste tópico vou desmistificar qual o objetivo das séries de VMs criadas pela Microsoft, e como elas se adequam ao mundo real.

Comparativo rápido

Uma comparação rápida sobre as VMs pode ser obtida na seguinte relação. Estou apresentando todas as versões disponíveis, mas hoje vamos falar apenas das VMs de Propósito geral:  
Objetivo Tamanhos Descrição
Propósito geral B, Dsv3, Dv3, DSv2, Dv2, DS, D, Av2, A0-7 Relação equilibrada de CPU/memória. Ideal para teste e desenvolvimento, bancos de dados pequenos a médios e servidores Web de tráfego baixo a médio.
Computação otimizada Fsv2, Fs, F Alta relação de CPU/memória. Boa para servidores web de tráfego médio, dispositivos de rede, processos de lote e servidores de aplicativo.
Memória otimizada Esv3, Ev3, M, GS, G, DSv2, DS, Dv2, D Alta relação de memória/CPU. Ótima para servidores de banco de dados relacionais, caches médios a grandes e análises na memória.
Armazenamento otimizado Ls Alta taxa de transferência de disco e de E/S. Ideal para Big Data, SQL e bancos de dados NoSQL.
GPU NV, NC, NCv2, ND Máquinas virtuais especializadas, destinadas para renderização gráfica e edição de vídeo pesadas. Disponível com uma ou várias GPUs.
Computação de alto desempenho H, A8-11 Nossas máquinas virtuais de CPU mais rápidas e potentes com adaptadores de rede de alta taxa de transferência (RDMA) opcionais.
(Fonte: Microsoft Corporation, 2017)

Propósito Geral

Todas as VMs do que tem como objetivo propósito geral fornecem uma boa relação de CPU (processamento) e memória equilibrada. Elas são ideais para ambientes de teste e desenvolvimento, instalação de pequenos bancos de dados ou servidores web de acesso baixo ou médio.

Série A

A série A e A_v2 podem ser implantadas com uma série de hardwares e processadores. O tamanho é bem limitado baseando-se no hardware para oferecer desempenho consistente para a instância em execução, independentemente do hardware em que é implantado. Exemplos de implantação: Active Directory, DNS Server, IIS usando 1 aplicação ou SQL Server Express. A Série A também apresenta duas camadas de serviço: básica e padrão. A camada básica tem algumas limitações como:
  • Desempenho de disco menor
  • Não há suporte para balanceamento de carga
Sendo assim, é interessante avaliar quando usar a série A Basic e A Standard.

Série D

As VMs da série D são desenhadas para executar aplicações que exigem maior capacidade de computação. Com processadores mais rápidos e discos baseados em SSD para armazenamento temporário, estas VMs são indicadas para um nível acima de desenvolvimento, e consegue suportar pequenas cargas para produção.

Série D_v2 e D_v3

Esta é uma continuação da Série D, com poder de processamento maior. A CPU da série Dv2 é aproximadamente 35% mais rápida que a série D. Ela tem como processador a última geração do processador Intel Xeon E5-2673 v3 (Haswell) de 2.4GHz e usando a tecnologia Intel Turbo Boost Technology 2.1 pode atingir até 3.1GHz. As configurações de VM são as mesmas que as da série D.

Série B

Esta série de VMs é nova no Azure e o seu principal diferencial é que estes servidores funcionam como um “plano de telefonia pré-pago”. Estas VMs são ideais para serviços que não precisam do desempenho total de processamento continuamente, como servidores web, pequenos bancos de dados ou ambientes de desenvolvimento e teste. As VMs desta série armazenam “créditos” quando o desempenho da máquina é menor que o desempenho de base. Quando a VM tiver acumulado crédito, poderá disparar para acima da linha de base, podendo usar até o dobro de processamento quando a aplicação exigir maior consumo de CPU. Sendo assim, a série B é bastante recomendada quando há imprevisibilidade de desempenho e certos “picos” de processamento são necessários, no momento de maior demanda.
Exemplo: implantei uma VM usando o tamanho B1ms para meu aplicativo de banco de dados pequeno. Esse tamanho permite que o meu aplicativo use até 20% de uma vCPU como minha linha de base, o que significa 0,2 de crédito por minuto que posso usar ou acumular. Meu aplicativo está ocupado no início e no final do dia de trabalho dos meus funcionários, de 7h às 9h e de 16h às 18h. Durante as outras 20 horas do dia, meu aplicativo está normalmente ocioso, usando apenas 10% da vCPU. No horário fora de pico, acumulo 0,2 de crédito por minuto, mas consumo 0,1 de crédito por minuto, ou seja, minha VM acumulará 0,1 x 60 = 6 créditos por hora. Ou seja, nas 20 horas em que estou fora de pico, acumularei 120 créditos. Durante o horário de pico, meu aplicativo aproveita 60% de utilização de vCPU, ainda acumulo 0,2 de crédito por minuto, mas consumo 0,6 de crédito por minuto, com um custo de 0,4 de crédito por minuto, ou 0,4 x 60 = 24 créditos por hora. Tenho 4 horas por dia de pico, ou seja, meu uso em hora de pico é de 4 x 24 = 96 créditos. Conclusão, se eu usar os 120 créditos acumulados fora de pico e subtrair os 96 créditos que usei para meu horário de pico, acumulo mais 24 créditos por dia para usar em outras atividades.
fonte: Como os créditos são acumulados?

Série F

As VMs da série F são ótimas quando falamos de servidores web de tráfego médio ou mesmo servidores de aplicação porque elas possuem uma ótima relação entre memória e núcleos de processamento. Estas VMs comumente podem ser usadas para suas cargas de trabalho em produção e podem ser oferecidas em dois modelos “Fsv2” ou “F”. A série Fsv2 é baseado no processador Intel® Xeon® Platinum 8168, com uma frequência de núcleo básico de 2,7 GHz e uma frequência máxima turbo de núcleo único de 3,7 GHz. A série F é baseada no processador 2.4 GHz Intel Xeon® E5-2673 v3 (Haswell), que pode obter velocidades de relógio tão altas quanto 3.1 GHz com o Intel Turbo Boost Technology 2.0. Esse é o mesmo desempenho de CPU que o das VMs da série Dv2.

No próximo tópico

Iremos falar sobre os demais tipos de VMs no próximo tópico bem como exemplos de aplicação em cenários reais. Nos vemos em breve!