Como realizar um upgrade no local do Windows Server 2008 R2

Se você tiver instâncias de máquina virtual (VM, na sigla em inglês) em execução no Windows Server 2008 R2, faça upgrade delas para o Windows Server 2012 R2.

Em instâncias de VM que executam o Windows Server 2008 R2, a única opção disponível é fazer upgrade para o Windows Server 2012 R2. Para mais informações, consulte Como fazer upgrade do Windows Server 2008 R2 ou do Windows Server 2008.

Se você planeja fazer upgrade do Windows Server 2008 R2 para uma versão posterior ao Windows Server 2012 R2, é preciso seguir estas etapas:

  1. Fazer um upgrade inicial para o Windows Server 2012 R2.
  2. Fazer um segundo upgrade para o Windows Server 2016 ou o Windows Server 2019.

Objetivos

Neste guia, você verá como realizar um upgrade no local do Windows Server 2008 Datacenter Edition ou do Windows Server 2008 R2 Datacenter Edition para o Windows Server 2012 R2 Datacenter Edition ao:

  1. planejar o upgrade no local;
  2. realizar o upgrade no local;
  3. solucionar problemas do upgrade no local;
  4. fazer a limpeza após o upgrade no local.

Custos

Não há nenhum custo para realizar um upgrade no local do Windows Server. São cobrados apenas os recursos consumidos durante o upgrade, como o seguinte:

Use a calculadora de preços para gerar uma estimativa de custo com base na projeção de uso.

Antes de começar

Para usar este guia, é necessário ter conhecimento básico sobre:

Como planejar o upgrade no local

Realizar um upgrade no local de uma instância de máquina virtual (VM) executada no Windows Server 2008 R2 pode ser uma maneira pragmática de modernizar sua infraestrutura e reduzir os riscos de se aproximar do fim do ciclo de vida de suporte do Windows Server 2008.

Alternativas a considerar

Antes de decidir usar um upgrade no local para migrar para uma versão mais recente do Windows Server, esteja ciente das seguintes limitações:

  • Inatividade: dependendo da configuração e do software instalado, o upgrade pode levar uma hora ou mais. Durante o upgrade, o acesso à instância da VM é limitado porque:

    • as cargas de trabalho em execução na instância da VM ficam indisponíveis para os usuários;
    • o Remote Desktop Protocol (RDP) não está disponível;
    • há maneiras limitadas de verificar o progresso e o tempo restante do upgrade.
  • Risco: dependendo das configurações das instâncias atuais e do software instalado:

    • Pode ocorrer falha no upgrade.
    • Algumas opções de configuração podem ser modificadas.
    • Incompatibilidades podem fazer com que a carga de trabalho não funcione corretamente na instância com upgrade.

Dependendo da carga de trabalho em execução na instância do Windows Server 2008 R2, é possível reduzir a inatividade e o risco seguindo diferentes abordagens.

Carga de trabalho Abordagem
Sua instância de VM está executando uma carga de trabalho que aceita replicação, como as seguintes:
  • Active Directory Domain Services
  • DNS
  • SQL Server
Pense na possibilidade de configurar uma nova instância de VM que execute uma versão mais recente do Windows Server e depois usar a replicação para transferir a carga de trabalho da instância de VM atual para a nova instância de VM.
Você tem uma instância de VM que está executando uma infinidade de cargas de trabalho. Considere a possibilidade de migrar essas cargas de trabalho para separar instâncias de VM, de modo que cada instância de VM execute apenas uma única carga de trabalho. Mesmo que não seja possível migrar todas as cargas de trabalho, a redução do número de cargas de trabalho em execução em uma única instância de VM ajuda a diminuir os riscos durante um upgrade no local.

Edições para servidor e conversão de licenças

O Google fornece o Windows Server 2008 R2 Datacenter Edition como uma imagem pública do sistema operacional. É possível fazer upgrade de instâncias de VM com base nessa imagem para o Windows Server 2012 R2 Datacenter Edition sem incorrer em cobranças extras.

Caso sua instância de VM utilize uma licença atual (BYOL), verifique a documentação da Microsoft para determinar para qual edição é possível fazer upgrade e se você está qualificado para conversão de licenças.

Chaves de produto

Uma chave de produto do Windows Server é válida somente para uma versão específica. Ao fazer upgrade para uma versão mais recente do Windows Server, é preciso fornecer uma nova chave de produto. Há dois cenários principais:

  • Você está atualizando uma instância de VM com base na imagem do Windows Server 2008 R2 fornecida pelo Google: neste cenário, você precisa usar as chaves de configuração do cliente KMS predefinidas para o Windows Server 2012 R2 Datacenter porque o licenciamento por volume do Google processa a ativação de imagens com base nessas instâncias de VM.

  • Você está atualizando uma instância de VM que usa uma licença atual trazida por você: no BYOL, você precisa adquirir uma chave de produto personalizada com o fornecedor de licenças para realizar o upgrade.

Mídia de instalação

Para atualizar uma instância de VM que foi criada com a imagem do Windows Server 2008 R2 fornecida pelo Google, use a mídia de licença de volume do Windows Server 2012. É possível acessar essa mídia criando um disco permanente baseado em uma imagem pública na família de imagens windows-install-media. Em seguida, antes de iniciar o upgrade, anexe esse disco a uma ou mais instâncias de VM e realize o upgrade. Para mais informações, consulte Como anexar a mídia de instalação.

Se você estiver trazendo uma licença atual e sua instância de VM usar imagem ou disco importado, utilize a mídia de instalação correspondente ao tipo de mídia usado para instalar o Windows Server 2008 R2 na imagem ou no disco importado.

Outros pré-requisitos

Antes de iniciar o upgrade, consulte a documentação da Microsoft sobre pré-requisitos e possíveis limitações:

Como realizar o upgrade no local

Veja nas seções a seguir o processo de upgrade da instância de VM para o Windows Server 2012 R2.

Como criar um snapshot

Antes de iniciar o upgrade, recomendamos que você crie um snapshot da instância de VM para que possa reverter para um estado seguro caso algo dê errado:

Como bloquear o tráfego de entrada durante o upgrade

Desde o lançamento com disponibilidade geral do Windows Server 2012 R2, a Microsoft lançou diversas atualizações de segurança. Quando você faz upgrade para o Windows Server 2012 R2, essas atualizações de segurança podem não ser instaladas automaticamente. Depois que o upgrade for concluído, use o Windows Update para fazer o download e a instalação das atualizações de segurança que faltam.

O processo de download e instalação de atualizações de segurança pode ser demorado e, durante esse período, a instância do Windows Server pode ficar vulnerável a falhas de segurança. Para reduzir o risco, pense na possibilidade de bloquear todo o tráfego de entrada não essencial para a instância de VM. Para fazer isso:

  1. Desative temporariamente qualquer regra de firewall que conceda acesso a serviços externos, como o Internet Information Services (IIS) ou o Remote Desktop Protocol (RDP).

  2. Use conectividade híbrida ou encapsulamento de TCP do Cloud IAP para acessar o RDP, para que não seja necessário expor externamente a porta 3389.

  3. Crie regras de firewall para bloquear temporariamente o acesso a portas não essenciais da sua nuvem privada virtual (VPC, na sigla em inglês).

Como preparar a configuração do Windows Server

Verifique a configuração da instância de VM do Windows Server 2008 R2:

  1. Conecte-se à instância de VM com um cliente RDP.

  2. Use o Windows Update (em inglês) para verificar se o Windows Server está atualizado.

  3. Desative ou desinstale antivírus, antispyware e outros agentes que possam interferir no upgrade ou sejam incompatíveis com o Windows Server 2012 R2.

Como anexar a mídia de instalação

Antes de realizar o upgrade, anexe a mídia de instalação do Windows Server 2012 R2 à instância de VM. Como o Google Cloud Platform (GCP) não é compatível com a ativação direta de um arquivo ISO ou CD, é possível usar uma imagem fornecida pelo Google:

  1. No Console do Google Cloud Platform, abra o Cloud Shell clicando no botão Ativar o Cloud ShellAtive o Cloud Shell..

    Acessar o Console do Google Cloud Platform

  2. Defina o ID do projeto padrão: Substitua [PROJECT_ID] pelo nome do seu projeto do Compute Engine:

    gcloud config set project [PROJECT_ID]
    
  3. Crie um disco baseado na mídia de instalação. Substitua [ZONE] pelo nome da zona em que a instância de VM está localizada:

    gcloud compute disks create win-installers --image-family=windows-install-media --image-project=compute-image-tools --zone=[ZONE]
    

    Esse comando adiciona um disco chamado win-installers ao projeto. Esse disco não está anexado a nenhuma instância de VM.

  4. Anexe o disco à instância de VM usando o modo somente leitura (ro) para que seja possível anexar o disco a várias instâncias de VM, se necessário. Substitua [INSTANCE_NAME] pelo nome da instância de VM que será atualizada e substitua [ZONE] pelo nome da zona em que a instância de VM está localizada:

    gcloud compute instances attach-disk [INSTANCE_NAME] --disk=win-installers --mode=ro --zone=[ZONE]
    

Como preparar um arquivo de resposta

Por padrão, a Instalação do Windows solicita entrada em vários pontos durante um upgrade. Como você não consegue se conectar à instância de VM usando RDP durante o upgrade, você não fornece a entrada solicitada, o que pode impedir o upgrade. Para suprimir esses prompts, forneça um arquivo de resposta para realizar o upgrade em modo autônomo.

O arquivo de resposta instrui a Instalação do Windows a seguir estas etapas:

  • Suprimir todos os prompts de entrada do usuário.
  • Selecionar a edição correta do Windows Server 2012 R2.
  • Fornecer uma chave de produto que seja adequada para o Windows Server 2012 R2.

Prepare o arquivo de resposta da seguinte maneira:

  1. Conecte-se à instância de VM com um cliente RDP. Para mais informações, consulte Como se conectar a instâncias.

  2. Abra o Windows Explorer.

  3. No diretório raiz da unidade C:, crie uma pasta Windows.setup.

  4. Configure o Windows Explorer para mostrar extensões de arquivo (em inglês).

  5. Na pasta C:\Windows.setup, use o Bloco de Notas ou outro editor de texto para criar um arquivo chamado unattend.xml com o seguinte conteúdo:

    <?xml version="1.0" encoding="utf-8"?>
      <unattend xmlns="urn:schemas-microsoft-com:unattend">
        <settings pass="windowsPE">
          <component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State">
            <UpgradeData>
              <Upgrade>true</Upgrade>
                <WillShowUI>Never</WillShowUI>
            </UpgradeData>
            <ImageInstall>
              <OSImage>
                <WillShowUI>OnError</WillShowUI>
                <InstallTo>
                  <DiskID>0</DiskID>
                  <PartitionID>1</PartitionID>
                </InstallTo>
                <InstallFrom>
                  <Path>install.wim</Path>
                  <MetaData>
                    <Key>/IMAGE/NAME</Key>
                    <Value>Windows Server 2012 R2 SERVERDATACENTER</Value>
                  </MetaData>
                </InstallFrom>
              </OSImage>
          </ImageInstall>
          <ComplianceCheck>
            <DisplayReport>OnError</DisplayReport>
          </ComplianceCheck>
          <UserData>
            <AcceptEula>true</AcceptEula>
            <ProductKey>
              <!-- See https://docs.microsoft.com/en-us/windows-server/get-started/kmsclientkeys -->
              <Key>W3GGN-FT8W3-Y4M27-J84CP-Q3VJ9</Key>
            </ProductKey>
          </UserData>
        </component>
      </settings>
    </unattend>
    
  6. Na pasta C:\Windows.setup, use o Bloco de Notas ou outro editor de texto para criar um arquivo chamado setup-prep.ps1 com o seguinte conteúdo:

    $ErrorActionPreference = "Stop"
    Write-Host "== Enabling EMS access ===================================" `
         -ForegroundColor Black -BackgroundColor Yellow
    
    $SvchostPath = 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost'
    $SvchostServices = (Get-ItemProperty -Path $SvchostPath).netsvcs
    $SvchostServices += 'sacsvr'
    Set-ItemProperty -Path $SvchostPath -name netsvcs `
        -value $SvchostServices -type MultiString
    
    & bcdedit /emssettings EMSPORT:2 EMSBAUDRATE:115200 | Out-Default
    & bcdedit /ems on  | Out-Default
    
    Write-Host "== Updating Google drivers and packages ==================" `
         -ForegroundColor Black -BackgroundColor Yellow
    
    & googet -noconfirm install google-compute-engine-auto-updater  | Out-Default
    & googet -noconfirm install google-compute-engine-driver-gga    | Out-Default
    & googet -noconfirm install google-compute-engine-driver-gvnic  | Out-Default
    & googet -noconfirm install google-compute-engine-driver-netkvm | Out-Default
    & googet -noconfirm install google-compute-engine-driver-pvpanic| Out-Default
    & googet -noconfirm install google-compute-engine-driver-vioscsi| Out-Default
    & googet -noconfirm install google-compute-engine-sysprep       | Out-Default
    & googet -noconfirm install google-compute-engine-vss           | Out-Default
    
    Write-Host "== Synchronizing time ====================================" `
         -ForegroundColor Black -BackgroundColor Yellow
    
    Start-Service W32time
    & w32tm /resync | Out-Default
    
    Write-Host "== Restoring TCP timeout and route to metadata server ====" `
         -ForegroundColor Black -BackgroundColor Yellow
    
    $TcpParams = 'HKLM:\System\CurrentControlSet\Services\Tcpip\Parameters'
    New-ItemProperty -Force -Path $TcpParams -Name 'KeepAliveTime' `
       -Value 300000 -PropertyType DWord
    
    & route add 169.254.169.254 mask 255.255.255.255 0.0.0.0 -p | Out-Default
    
    Write-Host "== Refreshing Windows license ============================" `
         -ForegroundColor Black -BackgroundColor Yellow
    & 'C:\Program Files\Google\Compute Engine\sysprep\activate_instance.ps1' | Out-Default
    
    Write-Host "== Completed =============================================" `
         -ForegroundColor Black -BackgroundColor Yellow
    

Como iniciar o upgrade

Para iniciar o upgrade, siga estas etapas:

  1. Abra um prompt de comando elevado:

    • No menu Iniciar, clique com o botão direito do mouse em Prompt de comando e selecione Executar como administrador.
  2. Execute o script setup-prep.ps1 criado anteriormente. O script instala os pacotes de driver do Google mais recentes, que são essenciais para o upgrade do Windows Server. Além disso, o script aplica determinadas configurações do Compute Engine e concede acesso ao console dos Serviços de Gerenciamento de Emergência (EMS, na sigla em inglês).

    powershell -ExecutionPolicy Bypass -file c:\Windows.setup\setup-prep.ps1
    

    O processo de upgrade poderá emitir o aviso a seguir. Nesse caso, ignore-o:

    [package name] or a newer version is already installed on the system
    
  3. Altere o diretório de trabalho para a mídia de instalação:

    cd /d d:\*2012*\sources
    
  4. Inicie a Instalação do Windows, transmitindo o arquivo unattend.xml criado anteriormente:

    setup.exe /unattend:c:\Windows.setup\unattend.xml /EMSPort:COM2 /emsbaudrate:115200
    

    Como você está executando o upgrade no modo autônomo, o assistente de instalação começará imediatamente a copiar arquivos.

    Após cerca de 5 minutos, a máquina será reinicializada e o RDP será desconectado.

Como observar o processo de upgrade

Dependendo do tipo de máquina da sua instância de VM e da configuração do Windows Server, a atualização pode levar de 10 a 60 minutos para ser concluída. Durante esse tempo, é possível observar o status por meio da saída da porta serial:

  1. No Cloud Shell, observe o processo de inicialização executando o seguinte comando:

    gcloud compute instances tail-serial-port-output [INSTANCE] --zone=[ZONE]
    

    Substitua [INSTANCE] pelo ID da sua instância de VM e [ZONE] pelo nome da zona em que a instância de VM está localizada.

  2. Aguarde até que a máquina seja reinicializada quatro vezes. Dependendo da configuração da instância de VM, pode levar 30 minutos ou mais para que essas reinicializações ocorram. É possível reconhecer uma reinicialização pela saída, que é semelhante a esta:

    SeaBIOS (version 1.8.2-20190620_103534-google)
    Total RAM Size = 0x00000001e0000000 = 7680 MiB
    CPUs found: 2     Max CPUs supported: 2
    
  3. Após a quarta reinicialização, aguarde até que esta linha seja exibida:

    GCEMetadataScripts: Finished running startup scripts.
    

Como realizar etapas pós-upgrade

Agora é possível estabelecer conexão com a instância de VM para verificar se o upgrade foi concluído com sucesso.

  1. Conecte-se à instância de VM usando um cliente RDP. Para mais informações, consulte Como se conectar a instâncias.

  2. Faça login usando uma conta de usuário com privilégios de administrador local.

  3. Verifique se a máquina está executando o Windows Server 2012 R2:

    1. Clique com o botão direito do mouse no botão Iniciar.
    2. Selecione Executar.
    3. Insira winver e clique em OK.
  4. Verifique se a caixa de diálogo Sobre o Windows indica que a instância de VM está executando o Windows Server 2012 R2.

  5. Abra um prompt de comando elevado:

    1. Clique com o botão direito do mouse no botão Iniciar.

    2. Selecione Prompt de Comando (Admin).

  6. Execute o script setup-prep.ps1 para tornar a aplicar configurações específicas do Compute Engine que podem ter sido perdidas durante o upgrade:

    powershell -ExecutionPolicy Bypass -file c:\Windows.setup\setup-prep.ps1
    

    Caso o aviso a seguir seja emitido pelo upgrade, ignore-o:

    [package name] or a newer version is already installed on the system
    
  7. Como o arquivo unattend.xml ou o script setup-prep.ps1 não são mais necessários, é possível excluir a pasta C:\Windows.setup.

  8. Reinicie a instância de VM para que todas as alterações entrem em vigor. Pode levar de 1 a 2 minutos para que a reinicialização seja concluída e você possa se conectar à instância de VM novamente.

Como desanexar o disco de instalação

Agora é possível desanexar o disco de instalação da instância de VM:

  • No Cloud Shell, desanexe o disco de instalação da instância de VM:

    gcloud compute instances detach-disk [INSTANCE_NAME] --disk=win-installers
    

    Substitua [INSTANCE_NAME] pelo nome da sua instância de VM.

Como instalar atualizações e restaurar o acesso

Após a conclusão do upgrade, execute o Windows Update para fazer o download e a instalação das atualizações de segurança. Para instalar essas atualizações:

  1. Conecte-se à máquina usando um cliente RDP. Para mais informações, consulte Como se conectar a instâncias.

  2. Use o Windows Update para instalar as atualizações mais recentes do Windows. Talvez seja necessário reiniciar a instância de VM várias vezes durante esse processo.

  3. Reative qualquer agente, programa antivírus ou software antimalware que tenha sido desativado antes do upgrade.

  4. Se você bloqueou tráfego de entrada anteriormente na instância de VM, já pode restaurar as regras de firewall originais.

Como solucionar problemas do upgrade no local

Durante a execução da Instalação do Windows, não é possível se conectar à instância de VM com RDP. Caso suspeite que o upgrade falhou ou não está progredindo, diagnostique a situação usando as seguintes abordagens, nesta ordem:

Verificar a saída da porta serial

Embora a Instalação do Windows não emita nenhum registro para a porta serial, é possível usar a saída da porta serial para observar as reinicializações e o status de inicialização da instância de VM.

Durante o upgrade, quatro reinicializações podem ocorrer. Se você não observar nenhum progresso por mais de 30 minutos após a primeira reinicialização, é provável que a atualização tenha falhado.

Verificar as métricas de CPU e de E/S

A execução de um upgrade do Windows Server é uma operação com uso intensivo da CPU e da E/S de disco. A verificação das métricas de CPU e E/S serve como indicação para saber se a configuração está progredindo.

Veja as métricas de CPU e E/S no Console do Google Cloud Platform:

  1. No Console do GCP, clique na instância que você está fazendo upgrade.

    Acessar o Console do GCP

  2. Clique na guia Monitoramento.

Conectar-se ao console dos Serviços de Gerenciamento de Emergência

É possível estabelecer conexão com o console dos Serviços de Gerenciamento de Emergência (EMS) durante e depois de executar a Instalação do Windows. Usando o console do EMS, verifique o log de eventos e os arquivos de registros da Instalação do Windows (links em inglês) para saber se o upgrade ainda está ocorrendo ou se há erros.

Conectar-se remotamente usando o WinRM

Se ocorrer falha na conexão por meio do RDP ou do EMS, tente usar o WinRM para estabelecer uma sessão remota do PowerShell:

  1. Conecte-se a uma instância diferente do Windows Server na mesma VPC.

  2. Abra o PowerShell.

  3. Estabeleça uma sessão remota do PowerShell:

    Enter-PSSession -ComputerName [INSTANCE-NAME] -UseSSL -SessionOption (New-PsSessionOption -SkipCACheck) -Credential (Get-Credential)
    

    Substitua [INSTANCE-NAME] pelo nome da instância que você está tentando fazer upgrade.

  4. Quando as credenciais forem solicitadas, digite o nome de usuário e a senha de uma conta de usuário administrativo.

  5. Use a sessão remota do PowerShell para verificar o log de eventos e os arquivos de registros da Instalação do Windows(links em inglês).

Analisar arquivos de registros off-line

Se você não conseguir se conectar à instância usando o Gerenciamento Remoto do Windows (WinRM, na sigla em inglês), cancele o upgrade e analise os arquivos de registros de uma instância de VM diferente. Para fazer isso:

  1. Interrompa a instância de VM.

    Isso poderá levar vários minutos se o Windows Server não estiver respondendo.

  2. Desanexe o disco de inicialização da instância.

  3. Crie uma nova instância temporária do Windows Server e anexe o disco de inicialização da instância original como um disco extra.

  4. Use a instância temporária do Windows Server para analisar os arquivos de log de eventos e os registros de instalação (em inglês) referentes à instância que você estava tentando atualizar.

  5. Quando a análise estiver concluída, desconecte o disco da instância temporária e reconecte-o como um disco de inicialização à instância de VM original.

Solucionar problemas do RDP

Para mais informações sobre como solucionar problemas do RDP, consulte Como solucionar problemas do RDP.

Solucionar problemas de instâncias do Windows Server

Para mais informações sobre como solucionar problemas de instâncias do Windows Server, consulte Dicas e solução de problemas para instâncias do Windows.

Como fazer a limpeza

Exclua o disco de instalação para evitar incorrer em custos extras após a conclusão deste processo.

Como excluir o disco de instalação

É possível criar um disco de instalação baseado na imagem fornecida pelo Google a qualquer momento. Se você não planeja fazer upgrade de mais instâncias de VMs na mesma zona, exclua o disco de instalação:

  • No Cloud Shell, exclua o disco win-installers criado anteriormente:

    gcloud compute disks delete win-installers
    

A seguir

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…