Plataforma de Dados no Microsoft Azure: SQL Server em IaaS parte 1

Fala galera!

Continuando a série “Plataforma de Dados no Microsoft Azure”, vamos começar a conhecer melhor a nuvem com algo bem familiar: máquinas virtuais. Nosso objetivo é entender como pensar em uma implantação de um servidor de banco de dados SQL Server no modelo de Infraestrutura como Serviço (IaaS), tendo o cuidado em balancear custo e performance. Na parte 1 desse artigo, vamos ter uma introdução aos conceitos básicos de nuvem e as opções disponíveis de tamanhos de máquinas virtuais no Azure.

O que é Infraestrutura como Serviço (IaaS)?

Ao comprar uma pizza congelada, você precisará se preocupar em aquecê-la no forno ou micro-ondas e depois em servi-la. Estabelecendo uma analogia, ao utilizar recursos de IaaS do Azure você deixará com a Microsoft o gerenciamento do hardware (servidores, rede, armazenamento) e virtualização. A VM é similar à que existe no seu ambiente local, tendo as mesmas preocupações (atualização de software, backup, ajuste de performance, alta disponibilidade). Saiba mais sobre IaaS aqui.

A cobrança dependerá de alguns fatores. São eles:

  • Quantidade de tempo em minutos que a VM está alocada;
  • O tamanho e licenciamento utilizado;
  • O tráfego de saída de rede;
  • O tamanho e o tipo de armazenamento.

Obs1: é possível reduzir o custo com uma Instância de Máquina Virtual Reservada, comprando antecipadamente por um ou três anos em uma região específica.

Obs2: os preços podem variar conforme a região que a VM será implantada.

A Arquitetura do Azure Resource Manager (ARM)

As implantações realizadas na nuvem da Microsoft já algum tempo utilizam por padrão um modelo “componentizado” de recursos. Entre as várias vantagens desse modelo destaca-se o gerenciamento de toda uma solução e seu ciclo de vida como grupo e a utilização de template JSON que descreve de maneira declarativa sua infraestrutura, permitindo gerenciá-la e provisioná-la de uma maneira segura, estruturada e repetível. Saiba mais sobre Infraestrutura como Código (IaC) nessa excelente postagem do blog do Programa de Premiação MVP.

Dessa maneira, além de conseguir implantar uma infraestrutura simples suficiente para um servidor você pode utilizar os templates ARM a partir das imagens existentes no Marketplace afim de provisionar arquiteturas mais complexas, como um cluster de AlwaysOn Availability Groups ou um farm de Sharepoint em minutos, bem como customizar seus próprios templates e reimplantá-los quando quiser, seja por Powershell ou Visual Studio. Ou até mesmo provisionar 20, 30, 40 servidores SQL Server para um ambiente de treinamento de uma só vez, desalocando ou removendo estes após atender a demanda.

Escolhendo o tamanho certo de máquina virtual para sua carga de trabalho

A elasticidade em configurar recursos computacionais na nuvem é realmente incrível. No Azure, temos tamanhos de máquinas virtuais com CPUs virtuais (vCPUs) e memória pré-definidas, desde 1 vCPU com 2GB a 128 vCPUs com 3892GB de RAM! Cada uma das famílias de VMs disponíveis se adequam a uma carga de trabalho específica. Além disso, nem todas as famílias estão disponíveis em todos os datacenters existentes. Você também pode possuir restrições quanto a limite de serviços, cotas e restrições disponíveis em sua assinatura, sendo necessário dependendo do projeto solicitar por meio de um chamado com a Microsoft mais recursos.

Há alguns detalhes importantes ao escolher o tamanho da VM para seu SQL Server. A começar pelo superdimensionamento de cores que você realmente vai precisar. Note por exemplo, dentro da família DSv2, a Standard_DS14v2 com 16 vCPUs e a Standard_DS14-4v2 com 4 vCPUs. Ambas possuem 112 GB de memória e suporte até 51200 IOPS, porém os custos com licenciamento com SQL Server ao utilizar Standard_DS14-4v2 são 75% menores, o que representa uma redução de 57% nos custos totais (computação e licenciamento).

Note também que as VMs da série B são ideais para cargas de trabalho que não precisam do desempenho total da CPU continuamente, como servidores Web, bancos de dados pequenos e ambientes de desenvolvimento e teste. Essas cargas de trabalho geralmente possuem picos de consumo. Assim, os clientes podem economizar utilizando um tamanho de VM da série B com um percentual coerente ao seu baseline de ambiente e acumular créditos quando a VM está utilizando menos que seu desempenho básico, permitindo fornecer performance máxima de CPU em momentos de necessidade.

VMs da série Dv3 e Ev3 introduziram a utilização de Hyper-Threading (HT) executando no processador Intel® Broadwell E5-2673 v4 de 2,3 GHz e o Intel® Haswell de 2,4 GHz E5-2673 v3. Ao mudar de núcleos físicos para vCPUs, custos com licenciamento do SQL Server diminuem e você consegue “equipar” a VM com mais recursos (memória, disco local SSD, taxa de transferência), tornando possível atender cenários críticos com ótimo custo benefício. A tecnologia HT também está nas séries Fv2 e M.

Você pode alternar entre os tamanhos disponíveis. Só fique atento pois essa operação causa parada, visto que o servidor precisa ser reiniciado. Além disso, nem todos os tamanhos estão disponíveis caso a máquina virtual esteja alocada.

Obs3: Note que desalocar é diferente de desligar. Ao desalocar uma VM, você não somente para a execução da VM como também libera recursos de rede e computação que foram provisionados para ela. Assim, é possível economizar no Microsoft Azure desligando adequadamente as VMs.

Caso você já queira experimentar, poderá seguir esse tutorial disponível e matar sua curiosidade subindo seu servidor na nuvem. Até o próximo artigo!

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s