Thiago Zavaschi R2 www.zavaschi.com

8Aug/116

SQL Server virtualizado e ambientes híbridos: Virtualizado + não-virtualizado (licenciamento por processador)

Olá pessoal!

Continuando nossa série sobre licenciamento de SQL Server, lembrando que o que estamos falando aqui se aplica para a versão do SQL Server 2008 R2 (e não necessariamente serão as mesmas para o SQL Denali) e que as regras efetivamente devem ser vistas no PUR – Product Use Rights.

Hoje falaremos de SQL Server em ambientes virtualizados.

Já sabemos que caso eu deseja instalar o SQL Server numa máquina física eu preciso licenciar todos os processadores, ou usar Server/CAL.

Mas e em ambientes virtualizados? A resposta é o famoso: depende!

Primeiramente temos que nos ater a uma tabelinha que diz em quandos OSEs (operational system environments) vamos poder rodar o SQL Server caso compremos licenças por processador para TODOS os processadores.

O que isso quer dizer? Quer dizer que caso licenciemos TODOS os processadores é possível, dependendo da edição, instalar em mais de um ambiente que rode naquela mesma máquina (ambientes virtualizados).

Edição Número de OSEs
SQL Server 2008 R2 Datacenter Ilimitado
SQL Server 2008 R2 Enterprise Até 4 por licença
SQL Server 2008 R2 Standard 1 por licença
SQL Server 2008 R2 Workgroup 1 por licença
SQL Server 2008 R2 Web 1 por licença

Como podem ver é de acordo com a edição do seu SQL Server (saiba quais são as edições aqui).

Isso signica que se eu tenho um servidor com 4 processadores físicos (não importa o número de cores) e licenciei todos os processadores com licença enterprise (4 licenças) eu vou poder subir até 16 máquinas virtuais e com o SQL Server instalado em cada uma delas.

Se eu comprar 4 licenças Datacenter, posso subir ilimitadas (desde que seu hardware suporte) máquinas virtuais!

É importante frisar que há uma limitação técnica do SQL Server Enterprise de suporte a até 8 processadores! Se o servidor possuir mais que 8 processadores físicos, a edição a licenciar deve ser a Datacenter.

Bom Zavaschi… mas quando virtualizo eu posso apresentar um número menor de cores para a minha máquina virtual (hyper-v por exemplo é possível apresentar até 4, isso vai aumentar na próxima versão) e nesse caso eu não vou usar todos os recursos da máquina, preciso licenciar todos os processadores? Mesmo que eu queira saomente uma máquina virtual (1 OSE)?

A resposta é não! Neste caso há uma pequena conta a se fazer para saber o número de licenças por processador que você irá necessitar por OSE.

Vamos lá. A imagem abaixo mostra o SQL Server 2008 R2 rodando em uma máquina com um processador físico (dual core). Neste cenário o número de núcleos importa.

image

A conta a se fazer é:

# de processadores virtuais dando suporte os OSE virtual
/
# de núcleos (hyperthreading desativado) ou threads (se o hyperthreading estiver ativado) por processador físico
=
# de licenças de Processador necessárias (se de rnúmero fracionado, arredonde para cima)

Se estamos apresentando 2 processadores virtuais para a VM e ela possui dois cores, então a conta fica 2/2 que resulta em uma licença por processador.

Em um cenário maior:

Temos 4 processadores físicos octacore. Apresentamos 4 processadores virtuais para a máquina virtual. São necessárias quantas licenças de processador?

Fazendo a conta: 4 / 8 = 0,5. Logo, 1 licença (mesmo tendo 4 processadores)!

Novamente: isso é por OSE! Se tiver duas máquinas virtuais, cada uma com 4 processadores virtuais, seriam 2 licenças. A tabela abaixo resume o cálculo:

image

É isso pessoal. Apesar dos cenários e arquiteturas em alguns casos serem complexos, o processo de licenciamento só precisa ser acompanhado com a ótica correta. Aguardo o feedback de vocês!

Abraços,
Thiago Zavaschi

Comments (6) Trackbacks (1)
  1. Zavaschi, muito bom assunto.
    Obrigado pelas ajudas.
    Abraço,

  2. Otimo post.. Estou usando bastante ele..

  3. Olá, bom dia.

    achei muito interessante seu blog, de grande ajuda, mas ainda sim gostaria lhe pedir uma ajuda mais específica. Vou adquirir um servidor com 1 processador de 8 núcleos e a versão standard me atenderia, mas em relação a licença 1 apenas é suficiente? E para um servidor com 2 processadores de 8 núcleos? Não vou virtualizar nada.
    Um grande abraço,

    Marcelo

  4. Muito obrigada! Me ajudou muito!

  5. Só lembrando que esta forma de licenciamento não é mais a atualmente utilizada.
    Atualmente o licenciamento por core (ou por server/CAL) que é o utilizados.
    []s


Leave a comment