Realiza una actualización in situ de Windows Server 2008 R2

Si tienes instancias de máquina virtual (VM) en ejecución en Windows Server 2008 R2, puedes actualizarlas a Windows Server 2012 R2.

Para las instancias de VM en ejecución en Windows Server 2008 R2, la única ruta de actualización disponible es actualizar a Windows Server 2012 R2. Para obtener más información, consulta esta página sobre cómo actualizar desde Windows Server 2008 R2 o Windows Server 2008.

Si planeas actualizar Windows Server 2008 R2 a una versión posterior a Windows Server 2012 R2, deberás hacer lo siguiente:

  1. Realiza una actualización inicial a Windows Server 2012 R2.
  2. Realiza una segunda actualización a Windows Server 2016 o Windows Server 2019.

Objetivos

En esta guía, se describe cómo realizar una actualización in situ de la edición Datacenter de Windows Server 2008 o la edición Datacenter de Windows Server 2008 R2 a la edición Datacenter de Windows Server 2012 R2 mediante lo siguiente:

  1. La planificación de la actualización in situ
  2. La realización de la actualización in situ
  3. La solución de problemas de la actualización in situ
  4. La limpieza después de la actualización in situ

Costos

No se aplican cargos por realizar una actualización in situ de Windows Server. Solo se te cobrará por los recursos consumidos durante la actualización, que incluyen los siguientes:

Usa la calculadora de precios para generar una estimación de los costos según el uso previsto.

Antes de comenzar

En esta guía, se da por sentado que tienes un conocimiento básico sobre lo siguiente:

Planifica la actualización in situ

Realizar una actualización in situ de una instancia de máquina virtual (VM) en ejecución en Windows Server 2008 R2 puede ser una forma pragmática de modernizar tu infraestructura y mitigar los riesgos de la finalización del ciclo de vida de la compatibilidad de Windows Server 2008.

Alternativas que debes tener en cuenta

Antes de decidir usar una actualización in situ para migrar a una versión más reciente de Windows Server, ten en cuenta las siguientes limitaciones:

  • Tiempo de inactividad: según la configuración y el software instalado, la actualización puede tardar una hora o más. Durante la actualización, el acceso a la instancia de VM es limitado debido a los siguientes motivos:

    • Las cargas de trabajo en ejecución en la instancia de VM no se encuentran disponibles para los usuarios.
    • El protocolo de escritorio remoto (RDP) no se encuentra disponible.
    • Hay formas limitadas de verificar el progreso y el tiempo restante de la actualización.
  • Riesgo: según la configuración de las instancias existentes y el software instalado, puede ocurrir lo siguiente:

    • La actualización puede fallar.
    • Algunas opciones de configuración se pueden anular.
    • Las incompatibilidades pueden hacer que la carga de trabajo no funcione de forma adecuada en la instancia actualizada.

Según la carga de trabajo que se ejecute en tu instancia de Windows Server 2008 R2, puedes reducir el tiempo de inactividad y el riesgo mediante diferentes enfoques.

Carga de trabajo Enfoque
Tu instancia de VM ejecuta una carga de trabajo que admite la replicación, como las siguientes:
  • Servicios de dominio de Active Directory
  • DNS
  • SQL Server
Se recomienda configurar una nueva instancia de VM que ejecute una versión más reciente de Windows Server y, luego, usar la replicación para trasladar la carga de trabajo de la instancia de VM existente a la nueva.
Tienes una instancia de VM que ejecuta varias cargas de trabajo. Se recomienda migrar estas cargas de trabajo a instancias de VM distintas, de modo que cada instancia de VM ejecute una sola carga de trabajo. Incluso si no puedes migrar todas las cargas de trabajo, reducir la cantidad de cargas de trabajo que se ejecutan en una sola instancia de VM puede ayudar a disminuir los riesgos durante una actualización in situ.

Ediciones de servidores y conversión de licencias

Google proporciona la edición Datacenter de Windows Server 2008 R2 como una imagen pública de sistema operativo. Puedes actualizar las instancias de VM basadas en esta imagen a la edición Datacenter de Windows Server 2012 R2 sin que se generen cargos adicionales.

Si tu instancia de VM usa una licencia existente (BYOL), verifica la documentación de Microsoft a fin de determinar a qué edición puedes actualizar y si cumples con los requisitos para la conversión de licencias.

Claves de productos

Una clave de producto de Windows Server solo es válida para una versión específica. Cuando realices una actualización a una versión posterior de Windows Server, debes proporcionar una clave de producto nueva. Existen las siguientes situaciones principales:

  • Actualizas una instancia de VM basada en la imagen de Windows Server 2008 R2 proporcionada por Google: en este caso, debes usar las claves de configuración predefinidas del cliente de KMS para Windows Server 2012 R2 Datacenter porque las licencias por volumen de Google administran la activación de las imágenes basadas en estas instancias de VM.

  • Actualizas una instancia de VM para la que proporcionaste una licencia existente: en BYOL, debes adquirir una clave de producto personalizada de tu proveedor de licencias para realizar la actualización.

Medios de instalación

Para actualizar una instancia de VM que se creó con la imagen de Windows Server 2008 R2 proporcionada por Google, debes usar los medios de licencia por volumen de Windows Server 2012. Puedes acceder a los medios de licencia por volumen de Windows Server 2012 mediante la creación de un disco persistente en función de una imagen pública en la familia de imágenes windows-install-media. Luego, antes de iniciar la actualización, adjunta este disco a una o más instancias de VM y realiza la actualización. Para obtener más información, consulta la sección sobre cómo adjuntar los medios de instalación.

Si proporcionas una licencia existente y la instancia de VM usa un disco o imagen importados, usa los medios de instalación que coincidan con el tipo de medios que usaste para instalar Windows Server 2008 R2 en el disco o la imagen importados.

Otros requisitos previos

Antes de iniciar la actualización, revisa la documentación de Microsoft sobre los requisitos previos y las posibles limitaciones:

Realiza la actualización in situ

En las siguientes secciones, se explica el proceso de actualización de la instancia de VM a Windows Server 2012 R2.

Crea una instantánea

Antes de iniciar la actualización, recomendamos que crees una instantánea de la instancia de VM, para que puedas volver a un estado seguro en caso de que se produzca algún error:

Bloquea el tráfico de ingreso durante la actualización

Desde el lanzamiento de Google Analytics de Windows Server 2012 R2, Microsoft lanzó una serie de actualizaciones de seguridad. Cuando actualizas a Windows Server 2012 R2, es posible que estas actualizaciones de seguridad no se instalen de forma automática. Cuando se complete la actualización, debes instalar las actualizaciones de seguridad faltantes mediante Windows Update.

La descarga y la instalación de actualizaciones de seguridad puede tardar una cantidad considerable de tiempo y, durante este período, la instancia de Windows Server puede quedar expuesta a las vulnerabilidades de seguridad. Para reducir el riesgo, considera bloquear todo el tráfico de entrada a la instancia de VM que no sea esencial. Para ello, sigue estos pasos:

  1. Inhabilita de forma temporal cualquier regla de firewall que otorgue acceso a servicios externos como Internet Information Services (IIS) o el protocolo de escritorio remoto (RDP).

  2. Usa la conectividad híbrida o los túneles TCP de Cloud IAP para acceder al RDP, de modo que no necesites exponer de forma externa el puerto 3389.

  3. Crea reglas de firewall para bloquear de forma temporal el acceso a los puertos que no sean esenciales desde tu nube privada virtual (VPC).

Prepara la configuración de Windows Server

Verifica la configuración de la instancia de VM de Windows Server 2008 R2:

  1. Conéctate a la instancia de VM con un cliente de RDP.

  2. Verifica que Windows Server esté actualizado mediante Windows Update.

  3. Inhabilita o desinstala el antivirus, el software antiespía y otros agentes que puedan interferir en la actualización o que no sean compatibles con Windows Server 2012 R2.

Adjunta los medios de instalación

Antes de poder realizar la actualización, adjunta los medios de instalación de Windows Server 2012 R2 a la instancia de VM. Google Cloud Platform (GCP) no admite la activación directa de un archivo ISO o de un CD, por lo que puedes usar una imagen que Google proporcione:

  1. En Google Cloud Platform Console, abre Cloud Shell con un clic en el botón Activar Cloud Shell Activa Cloud Shell..

    Ir a Google Cloud Platform Console

  2. Configura el ID del proyecto predeterminado. Reemplaza [PROJECT_ID] por el nombre de tu proyecto de Compute Engine:

    gcloud config set project [PROJECT_ID]
    
  3. Crea un disco en función de los medios de instalación. Reemplaza [ZONE] por el nombre de la zona en la que se encuentra la instancia de VM:

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

    Este comando agrega un disco llamado win-installers a tu proyecto. Este disco no se adjuntó a ninguna instancia de VM.

  4. Adjunta el disco a la instancia de VM mediante el modo de solo lectura (ro) para que puedas adjuntar el disco a varias instancias de VM, si es necesario. Reemplaza [INSTANCE_NAME] por el nombre de la instancia de VM que se actualizará y [ZONE] por el nombre de la zona en la que se encuentra la instancia de VM:

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

Prepara un archivo de respuesta

De forma predeterminada, Windows Setup te solicita entradas en varios puntos durante una actualización. Debido a que no puedes conectarte a la instancia de VM con el RDP durante la actualización, no puedes proporcionar la entrada solicitada, lo que puede detener la actualización. A fin de suprimir estas solicitudes, proporciona un archivo de respuesta para realizar la actualización en modo sin supervisión.

El archivo de respuesta indica a Windows Setup que realice lo siguiente:

  • Suprimir todas las solicitudes de entrada del usuario
  • Seleccionar la edición correcta de Windows Server 2012 R2
  • Proporcionar una clave de producto adecuada para Windows Server 2012 R2

Para preparar el archivo de respuesta, sigue estos pasos:

  1. Conéctate a la instancia de VM con un cliente de RDP. Para obtener más información, consulta Conéctate a instancias de Windows.

  2. Abre Windows Explorer.

  3. En el directorio raíz de la unidad C:, crea una carpeta Windows.setup.

  4. Configura Windows Explorer para que muestre las extensiones de archivos.

  5. En la carpeta C:\Windows.setup, usa Notepad o algún otro editor de texto para crear un archivo llamado unattend.xml con los siguientes contenidos:

    <?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. En la carpeta C:\Windows.setup, usa Notepad o algún otro editor de texto para crear un archivo llamado setup-prep.ps1 con los siguientes contenidos:

    $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
    

Inicia la actualización

Para iniciar la actualización, sigue estos pasos:

  1. Abre un símbolo del sistema elevado:

    • En el menú Inicio, haz clic derecho en Símbolo del sistema y selecciona Ejecutar como administrador.
  2. Ejecuta la secuencia de comandos setup-prep.ps1 que creaste antes. La secuencia de comandos instala los últimos paquetes de controladores de Google, que son esenciales para realizar con éxito la actualización de Windows Server. Además, la secuencia de comandos aplica configuración específica de Compute Engine y permite el acceso a la consola de servicios de administración de emergencia (EMS).

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

    El proceso de actualización puede emitir la siguiente advertencia. Si es así, puedes ignorarla:

    [package name] or a newer version is already installed on the system
    
  3. Cambia el directorio de trabajo a los medios de instalación:

    cd /d d:\*2012*\sources
    
  4. Inicia Windows Setup y pásale el archivo unattend.xml que creaste antes:

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

    Debido a que la actualización se está ejecuta en modo sin supervisión, el asistente de configuración comienza a copiar archivos de inmediato.

    Después de 5 minutos, la máquina se reinicia y el RDP se desconecta.

Observa el proceso de actualización

Según el tipo de máquina de la instancia de VM y la configuración de Windows Server, la actualización puede tardar entre 10 y 60 minutos en completarse. Durante ese tiempo, puedes observar el estado a través de la salida de puerto en serie:

  1. En Cloud Shell, observa el proceso de inicio mediante la ejecución del siguiente comando:

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

    Reemplaza [INSTANCE] por el ID de la instancia de VM y [ZONE] por el nombre de la zona en la que se encuentra la instancia de VM.

  2. Espera hasta que la máquina se haya reiniciado cuatro veces. Según la configuración de la instancia de VM, pueden transcurrir 30 minutos o más hasta que se produzca el reinicio. Puedes reconocer un reinicio por salida que se parece al siguiente:

    SeaBIOS (version 1.8.2-20190620_103534-google)
    Total RAM Size = 0x00000001e0000000 = 7680 MiB
    CPUs found: 2     Max CPUs supported: 2
    
  3. Después del cuarto reinicio, espera hasta que aparezca la siguiente línea:

    GCEMetadataScripts: Finished running startup scripts.
    

Realiza los pasos posteriores a la actualización

Ahora puedes conectarte a la instancia de VM para verificar que la actualización se haya completado con éxito.

  1. Conéctate a la instancia de VM mediante un cliente de RDP. Para obtener más información, consulta Conéctate a instancias de Windows.

  2. Accede con una cuenta de usuario con privilegios de administrador local.

  3. Verifica que la máquina ahora ejecute Windows Server 2012 R2:

    1. Haz clic derecho en el botón Comenzar.
    2. Selecciona Ejecutar.
    3. Ingresa winver y haz clic en Aceptar.
  4. Verifica que el cuadro de diálogo Acerca de Windows indique que la instancia de VM ejecuta Windows Server 2012 R2.

  5. Abre un símbolo del sistema elevado:

    1. Haz clic derecho en el botón Comenzar.

    2. Selecciona Símbolo del sistema (administrador).

  6. Ejecuta la secuencia de comandos setup-prep.ps1 para volver a aplicar la configuración específica de Compute Engine que tal vez se perdió durante la actualización:

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

    La actualización puede emitir la siguiente advertencia, que puedes ignorar:

    [package name] or a newer version is already installed on the system
    
  7. Ya no necesitas el archivo unattend.xml ni la secuencia de comandos setup-prep.ps1, por lo que puedes borrar la carpeta C:\Windows.setup.

  8. Reinicia la instancia de VM para permitir que se apliquen todos los cambios. Es posible que el reinicio tarde entre 1 y 2 minutos en completarse antes de que puedas volver a conectarte a la instancia de VM.

Desvincula el disco de instalación

Ahora puedes desvincular el disco de instalación de la instancia de VM:

  • En Cloud Shell, desvincula el disco de instalación de la instancia de VM:

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

    Reemplaza [INSTANCE_NAME] por el nombre de la instancia de VM.

Instala actualizaciones y restablece el acceso

Cuando se complete la actualización, ejecuta Windows Update para instalar las actualizaciones de seguridad. Para instalar estas actualizaciones, sigue estos pasos:

  1. Conéctate a la máquina mediante un cliente de RDP. Para obtener más información, consulta Conéctate a instancias de Windows.

  2. Usa Windows Update para instalar las últimas actualizaciones de Windows. Es posible que debas reiniciar la instancia de VM varias veces durante este proceso.

  3. Vuelve a habilitar cualquier agente, antivirus o software antimalware que hayas inhabilitado antes de la actualización.

  4. Si antes bloqueaste el tráfico de entrada a la instancia de VM, ahora puedes restablecer las reglas de firewall originales.

Soluciona problemas de la actualización in situ

Mientras ejecutas Windows Setup, no puedes conectarte a la instancia de VM con RDP. Si sospechas que la actualización falló o no progresa, usa los siguientes enfoques para diagnosticar la situación:

Verifica la salida del puerto en serie.

Windows Setup no emite ningún registro al puerto en serie, pero puedes usar la salida del puerto en serie para observar los reinicios y el estado de inicio de la instancia de VM.

Durante la actualización, deberías notar cuatro reinicios. Si no observas ningún progreso durante más de 30 minutos después del primer reinicio, es probable que la actualización haya fallado.

Verifica la CPU y las métricas de E/S

La ejecución de una actualización de Windows Server es una operación intensiva de E/S de disco y CPU. Cuando verificas la CPU y las métricas de E/S, puedes obtener una indicación para comprobar si la configuración progresa.

Observa las métricas de CPU y E/S en Google Cloud Platform Console:

  1. En GCP Console, haz clic en la instancia que deseas actualizar.

    Ir a GCP Console

  2. Haz clic en la pestaña Supervisión.

Conéctate a la consola de servicios de administración de emergencia

Ya sea durante la ejecución de Windows Setup y después de ella, puedes conectarte a la consola de servicios de administración de emergencia (EMS). Con la consola de EMS, revisa los archivos de registro de Windows Setup y el registro de acontecimientos con el fin de verificar si la actualización aún progresa o para obtener información sobre cualquier error que pueda haber ocurrido.

Conéctate de forma remota mediante WinRM

Si la conexión mediante RDP o EMS falla, puedes intentar usar WinRM para establecer una sesión remota de PowerShell:

  1. Conéctate a una instancia distinta de Windows Server en la misma VPC.

  2. Abre PowerShell.

  3. Establece una sesión remota de PowerShell:

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

    Reemplaza [INSTANCE-NAME] por el nombre de la instancia que intentas actualizar.

  4. Cuando se te soliciten credenciales, ingresa el nombre de usuario y la contraseña de una cuenta de usuario administrativa.

  5. Usa la sesión remota de PowerShell para comprobar los archivos de registro de Windows Setup y el registro de acontecimientos.

Analiza los archivos de registro sin conexión

Si no puedes conectarte a la instancia mediante la administración remota de Windows (WinRM), puedes cancelar la actualización y analizar los archivos de registro desde otra instancia de VM. Para ello, sigue estos pasos:

  1. Detén la instancia de VM.

    Esto puede tardar varios minutos si Windows Server no responde.

  2. Desvincula el disco de arranque de la instancia.

  3. Crea una nueva instancia temporal de Windows Server y adjunta el disco de arranque de la instancia original como un disco adicional.

  4. Usa la instancia temporal de Windows Server para analizar el registro de configuración y los archivos de registro de acontecimientos de la instancia que intentabas actualizar.

  5. Después de completar el análisis, desvincula el disco de la instancia temporal y vuelve a adjuntarlo como un disco de arranque a la instancia de VM original.

Soluciona problemas de RDP

Para obtener información sobre la solución de problemas de RDP, consulta Soluciona problemas de RDP.

Soluciona problemas de instancias de Windows Server

Para obtener información sobre cómo solucionar problemas de instancias de Windows Server, consulta Sugerencias y solución de problemas para instancias de Windows.

Realiza una limpieza

Para evitar que se generen costos adicionales después de haber completado este proceso, borra el disco de instalación.

Borra el disco de instalación

Puedes crear un disco de instalación basado en la imagen proporcionada por Google en cualquier momento. Si no planeas actualizar más instancias de VM en la misma zona, borra el disco de instalación:

  • En Cloud Shell, borra el disco win-installers que creaste antes:

    gcloud compute disks delete win-installers
    

Pasos siguientes

¿Te sirvió esta página? Envíanos tu opinión:

Enviar comentarios sobre…

Compute Engine: Virtual Machines (VMs)