Usando Hyper-V Best Practices Analyzer

Introdução

Como administradores de servidores devemos garantir que todos tenham as configurações certas e corretas, de acordo com as boas práticas criadas por outros administradores e pela própria Microsoft. Aplicando essas práticas conseguimos garantir mais performance, segurança e uma melhor administração dos serviços. Em um ambiente virtualizado com o Hyper-V não é diferente, aliás existem várias práticas recomendadas para ambiente virtualizados. O desafio é justamente saber quais são as boas práticas que devemos implementar, a diferença e o impacto de cada uma delas e os benefícios que teremos. Antigamente este era um trabalho manual feito por um especialista. Eu, por exemplo, já fiz algumas consultorias que chamávamos de “Preventiva”. Tínhamos uma lista de boas práticas e comparávamos cada servidor para saber quais estavam ou não de acordo com elas.
No Windows Server 2008 R2 existe uma solução chamada Best Practices Analyzer (BPA) para fazer todo este procedimento de forma automatizada, mostrando as melhores configurações de acordo com o serviço instalado. Nele existe um banco de dados com todas as boas práticas de acordo com o serviço instalado, reconhecendo todas as funcionalidades que não estão de acordo com as recomendações e mostrando as soluções para cada uma delas. Confira abaixo a lista de BPA para Windows:
 
· Best Practices Analyzer for Active Directory Certificate Services
· Best Practices Analyzer for Active Directory Domain Services
· Best Practices Analyzer for Active Directory Rights Management Services
· Best Practices Analyzer for Application Server
· Best Practices Analyzer for Domain Name System
· Best Practices Analyzer for Dynamic Host Configuration Protocol
· Best Practices Analyzer for File Services
· Best Practices Analyzer for Hyper-V
· Best Practices Analyzer for Internet Information Services
· Best Practices Analyzer for Network Policy and Access Services
· Best Practices Analyzer for Remote Desktop Services
· Best Practices Analyzer for Windows Server Update Services
 
Neste artigo eu mostrarei alguns detalhes, instalação e configuração do BPA para Hyper-V
 
Instalação
 
Para utilizar o BPA para Hyper-V é preciso instalar um pacote de atualização para o Windows, que pode ser baixado pelo link a seguir:
 
Para instalá-lo, basta estar logado como administrador local no servidor e executar o arquivo do link acima.
 
HBPA 
Figura 1 – Instalação do BPA para Hyper-V
 
Pré-requisitos
 
Além da credencial de administrador local, os 4 pré-requisitos abaixo devem estar instalados e em execução:
 
· Windows Hypervisor (Hyper-V)
· Hyper-V Virtual Machine Management Service
· Hyper-V Networking Management Service
· Hyper-V Image Management Service
 
Configuração
 
Depois da instalação, para usar o BPA, abra o Server Manager através do menu iniciar, clique em Roles e em Hyper-V. Do lado direito do Server Manager você verá a opção Best Practices Analyzer. Clique em Scan This Role, conforme figura 2.
 
HVBPA1 
Figura 2 – Execução do BPA para Hyper-V
Todas as configurações existentes no servidor com o Hyper-V instalado serão analisadas e algumas dicas serão apresentadas após este procedimento. Alguns exemplos que são verificados são: Serviços, processadores virtuais e lógicos, adaptadores de rede, máquinas virtuais, memória, drivers, storage, sistema operacional guest, e várias outros. No total são 30 análises feitas somente para Hyper-V. Para ter mais detalhes sobre cada uma delas, acesse http://technet.microsoft.com/en-us/library/ee941122(WS.10).aspx
 
Existem 4 classificações após a análise: Compliant, Noncompliant, Excluded e All. Na primeira guia é possivel observar cada uma delas e as respectivas severidades caracterizadas como erros e avisos.
 
Pra cada uma delas você pode encontrar informações como o problema, o impacto e o mais importante, como resolvê-lo. No exemplo da figura 3 é exibido um aviso sobre o uso de snapshots nas máquinas virtuais.
 
HVBPA2 
Figura 3 – Aviso sobre Snapshot
 
Entretanto, na figura 4 uma boa prática com a severidade “erro” foi encontrada relacionada a configuração da placa de rede do servidor. A solução neste caso é adicionar mais placas de rede ao computador físico.
 
HVBPA3 
Figura 4 – Erro relacionado a placa de rede
 
Clicando na guia Compliant são exibidas todas as boas práticas de já estão sendo utilizadas.
 
HVBPA4 
Figura 5 – Guia Compliant
 
Integração com Powershell
O BPA também pode ser usado através do Powershell, possibilitando a criação de scripts e sua utilização em Server Core, versão do Windows somente em linha de comando.
 
Para utilizar os commandlets do BPA através do Powershell é preciso importar os módulos do Server Manager e do BPA através das seguintes linhas de comando:
 
Import-Module ServerManager 

Import-Module BestPractices 
 

Para escanear o Hyper-V é preciso usar o commandlet Invoke-BPAModel seguido do ID do Hyper-V.
Invoke-BPAModel –BestPracticesModelID Microsoft/Windows/Hyper-V
Para visualizar o resultado, o commando Get-BpaResult é usado com o seguinte parâmetro:
Get-BpaResult -BestPracticesModelId Microsoft/Windows/Hyper-V
Na figura 6 os commandos acima foram executados e é possível verificar os resultados com o Get-BpaResult.
 
HVBPA5 
Figura 6 – Comandos do Powershell para usar o BPA
É possível também fazer um filtro usando o parâmetro Where-Object no powershell. No exemplo abaixo é exibido somente os avisos e erros do BPA:
 
Get-BpaResult -BestPracticesModelId Microsoft/Windows/Hyper-V | Where-Object {$_.Severity –eq “Warning” –or $_.Severity –eq “Error”}
 
HVBPA6 
Figura 7– Filtro para obter erros e avisos
Caso o servidor estiver usando a versão Server Core, é preciso instalar o Powershell e as funcionalidades com os 3 seguintes comandos:
 
dism /online /enable-feature /featurename:MicrosoftWindowsPowerShell
dism /online /enable-feature /featurename:ServerManager-PSH-Cmdlets 
dism /online /enable-feature /featurename:BestPractices-PSH-Cmdlets
É possível exportar todo o resultado para um arquivo CSV ou até mesmo criar um relatório no formato HTML.