A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://cloud.google.com/compute/docs/tutorials/performing-in-place-upgrade-windows-server below:

Performing an in-place upgrade of Windows Server | Compute Engine Documentation

Plan the in-place upgrade

Performing an in-place upgrade of a virtual machine (VM) instance that is running an earlier version of Windows Server can be a pragmatic way to modernize your infrastructure and to mitigate the risks of approaching the end of the support lifecycle of Windows Server versions.

Alternatives to consider

Before you decide to use an in-place upgrade to migrate to a newer version of Windows Server, be aware of the following limitations:

Depending on the workload running on your Windows Server instance, you can reduce downtime and risk by pursuing different approaches.

Workload Approach Your VM instance is running a workload that supports replication, such as: Consider setting up a new VM instance that is running a more recent version of Windows Server, and then use replication to shift the workload from your existing VM instance to the new VM instance. You have a VM instance that is running a multitude of workloads Consider migrating these workloads to separate VM instances so that each VM instance runs only a single workload. Even if you can't migrate all workloads, reducing the number of workloads running on a single VM instance can help reduce risks during an in-place upgrade. Product keys

A Windows Server product key is valid for only a specific version; when you perform an upgrade to a later version of Windows Server, you must supply a new product key. There are two primary scenarios:

Installation media

To perform the upgrade, you need an installation media. There are two primary scenarios:

Other prerequisites

Before you begin your upgrade, review the Microsoft documentation about prerequisites and potential limitations for the version of Windows Server you are planning to upgrade to:

Perform the in-place upgrade

The following sections guide you through the process of upgrading your VM instance.

Create a snapshot

Before you start the upgrade, we recommend that you create a snapshot of your VM instance, so that you can revert to a safe state in case anything goes wrong:

Prepare your Windows Server configuration

Verify the configuration of your Windows Server VM instance:

  1. Connect to your VM instance with an RDP client.

  2. Verify that Windows Server is up to date by using Windows Update.

  3. Disable or uninstall antivirus, antispyware, and other agents that can interfere with the upgrade or are incompatible with the Windows Server version that you're upgrading to.

Attach the install media

Before you can perform the upgrade, attach the necessary installation media to the VM instance. The right media to use depends on your scenario:

To attach the volume license installation media provided by Google, follow these steps:

  1. In the Google Cloud console, open Cloud Shell by clicking the Activate Cloud Shell button.

    Go to the Google Cloud console

  2. Set the default project ID. Replace PROJECT_ID with the name of your Compute Engine project:

    gcloud config set project PROJECT_ID
    
  3. Create a disk based on the installation media. Replace ZONE with the name of the zone where the VM is located:

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

    This command adds a disk named win-installers to your project. This disk is not attached to any VM instance.

  4. Attach the disk to your VM by using read-only (ro) mode, so that you can attach the disk to multiple VMs if necessary:

    gcloud compute instances attach-disk VM_NAME --disk=win-installers --mode=ro --zone=ZONE
    

    Replace the following:

    You can use the same disk for multiple and parallel VM upgrades within the same zone, but if you want to upgrade a VM in a different zone, you must create another disk in that zone.

If you are upgrading a VM that is based on an imported disk or image, attach the custom installation media as an additional disk:

  1. Follow the steps in Creating an image from an ISO file to create a disk from the ISO image that you want to use as custom installation media.

  2. Attach the disk to your VM, by using read-only (ro) mode so that you can attach the disk to multiple VMs if necessary:

    gcloud compute instances attach-disk VM_NAME --disk=CUSTOM_MEDIA_DISK --mode=ro --zone=ZONE
    

    Replace the following:

Start the upgrade

By default, Windows Setup prompts you for input at various points during an upgrade. Because you can't connect to the VM by using RDP during the upgrade and therefore can't provide any input, run the upgrade in unattended mode.

  1. Connect to your VM with an RDP client. For more information, see Connecting to instances.

  2. Open an elevated command prompt:

  3. Change the working directory to the installation media. The correct working directory depends on the Windows Server version that you are upgrading to:

    2012 R2
    cd /d d:\*2012*
    
    Year 2016
    cd /d d:\*2016*
    
    Year 2019
    cd /d d:\*2019*
    
    Year 2022
    cd /d d:\*2022*
    
    Year 2025
    cd /d d:\*2025*
    
    Important: Adjust the drive letter if Windows assigned a different letter than D: to the disk containing the volume license installation media provided by Google.
  4. Start the Windows upgrade. The required steps to start the upgrade depend on the Windows Server version that you are upgrading to and whether your VM is based on a public operating system image or on an imported disk or image:

    2012 R2

    Run upgrade.ps1 to start the Windows upgrade. The script completes the following steps:

    powershell -ExecutionPolicy Bypass -File upgrade.ps1
    
    2012 R2 (BYOL)

    Run upgrade.ps1 to start the Windows upgrade. The script completes the following steps:

    powershell -ExecutionPolicy Bypass -File upgrade.ps1 -SetupExePath SETUP_PATH -ProductKey PRODUCT_KEY
    

    Replace the following:

    The -ProductKey parameter is only required if you are upgrading a VM instance for which you brought an existing license (BYOL)

    2016 or later

    Run upgrade.ps1 to start the Windows upgrade. The script completes the following steps:

    powershell -ExecutionPolicy Bypass -File upgrade.ps1
    

    In some cases, Windows Setup might show a Select Image screen. If you see this screen, select the configuration that matches your current configuration:

    It might take several minutes for the setup to initialize.

    2016 or later (imported)

    Run upgrade.ps1 to start the Windows upgrade. The script completes the following steps:

    powershell -ExecutionPolicy Bypass -File upgrade.ps1 -SetupExePath SETUP-PATH -ProductKey PRODUCT-KEY
    

    Replace the following:

    The -ProductKey parameter is only required if you are upgrading a VM instance for which you brought an existing license (BYOL).

    In some cases, Windows Setup might show a Select Image screen. If you see this screen, select the configuration that matches your current configuration:

    It might take several minutes for the setup to initialize.

    The upgrade process might issue the following warning. If so, you can ignore it:

    [package name] or a newer version is already installed on the system
    

    The system can become temporarily unresponsive while installing the netkvm driver. If this happens, don't close the RDP connection or stop the VM instance unless the system is unresponsive for more than 5 minutes. If you do lose RDP connectivity, wait approximately 5 minutes before you reconnect to the VM instance.

    The Setup Wizard might require you to restart the system first. In this case, restart the VM instance and run Windows Setup again, using the same command.

    After about 5 minutes, the machine reboots, and RDP disconnects.

Observe the upgrade process

Depending on the machine type of your VM instance and your Windows Server configuration, the upgrade might take between 10 and 60 minutes to complete. During that time, you can observe the status through the serial port output:

  1. In Cloud Shell, observe the boot process by running the following command:

    gcloud compute instances tail-serial-port-output VM_NAME --zone=ZONE
    

    Replace the following:

  2. Wait until the machine has rebooted four times. Depending on the configuration of your VM instance, it might take 30 minutes or more for these reboots to occur. You can recognize a reboot by output that looks similar to this:

    SeaBIOS (version 1.8.2-20190620_103534-google)
    Total RAM Size = 0x00000001e0000000 = 7680 MiB
    CPUs found: 2     Max CPUs supported: 2
    
  3. After the fourth reboot, wait until the output GCEMetadataScripts: Finished running startup scripts or No startup scripts to run appears.

Perform post-upgrade steps

You can now connect to the VM instance to verify that the upgrade has been successfully completed.

  1. Connect to the VM instance by using an RDP client. For more information, see Connecting to instances.

  2. Sign in using a user account with local administrator privileges.

  3. Open an elevated command prompt:

  4. Run the following command to query the version of Windows Server:

    Windows Server Core
    ver
    
    Windows Server with Desktop Experience
    winver
    

    Verify that the version matches the expected version of Windows Server.

  5. Change the working directory to the installation media. The correct working directory depends on the Windows Server version that you are upgrading to:

    2012 R2
    cd /d d:\*2012*
    
    Year 2016
    cd /d d:\*2016*
    
    Year 2019
    cd /d d:\*2019*
    
    Year 2022
    cd /d d:\*2022*
    
    Year 2025
    cd /d d:\*2025*
    
    Important: Adjust the drive letter if Windows assigned a different letter than D: to the disk containing the volume license installation media provided by Google.
  6. Run upgrade.ps1 again to re-apply specific Compute Engine settings that might have been lost during the upgrade:

    powershell -ExecutionPolicy Bypass -File upgrade.ps1
    
  7. Restart the VM instance to ensure all changes take effect. It might take 1 to 2 minutes for the reboot to complete before you can connect to the VM instance again.

Detach the installation disk

You can now detach the installation disk from the VM instance:

Install updates and restore access After the upgrade is complete, run Windows Update to download and install any security updates. To install the security updates, follow these steps:
  1. Connect to the machine by using an RDP client. For more information, see Connecting to instances.

  2. Use Windows Update to install the latest Windows updates. You might have to restart the VM instance multiple times during this process.

  3. Re-enable any agents, antivirus, or antimalware software that you disabled before the upgrade.

Troubleshoot the in-place upgrade

While running Windows Setup, you can't connect to the VM instance with RDP. If you suspect that the upgrade failed or is not progressing, use the following approaches, in order, to diagnose the situation:

Check the serial port output

To check the progress of the upgrade process, view the serial port output of the VM instance:

During the upgrade, you should observe four reboots. If you don't observe any progress for more than 30 minutes after the first reboot, it is likely that the upgrade failed.

Check CPU and I/O metrics

Running a Windows Server upgrade is a CPU and disk I/O intensive operation. By checking the CPU and I/O metrics, you can get an indication for whether the setup is progressing.

View the CPU and I/O metrics in the Google Cloud console:

  1. In the Google Cloud console, go to the VM instances page.

    Go to VM instances

  2. Click the instance that you're upgrading.

  3. Click the Monitoring tab.

Connect to the Emergency Management Services console

Both during and after running Windows Setup, you can connect to the Emergency Management Services (EMS) console. Using the EMS console, check the Windows Setup log files and the event log for indications that the upgrade is still progressing or for information about any errors that might have occurred.

Connect remotely by using WinRM

If connecting by using RDP or EMS fails, you can try using WinRM to establish a remote PowerShell session:

  1. Connect to a different Windows Server instance in the same VPC.

  2. Open PowerShell.

  3. Establish a remote PowerShell session, replacing VM_NAME with the name of the instance to upgrade:

    Enter-PSSession -ComputerName VM_NAME -UseSSL -SessionOption (New-PsSessionOption -SkipCACheck) -Credential (Get-Credential)
    
  4. When prompted for credentials, enter the username and password of an administrative user account.

  5. Use the remote PowerShell session to check the Windows Setup log files and the event log.

Analyze log files offline

If you can't connect to the instance by using Windows Remote Management (WinRM), you can cancel the upgrade and analyze the log files from a different VM instance. To do this, follow these steps:

  1. Stop the VM instance.

    This can take several minutes if Windows Server is unresponsive.

  2. Detach the boot disk from the instance.

  3. Create a new, temporary Windows Server instance, and attach the boot disk of the original instance as an additional disk.

  4. Use the temporary Windows Server instance to analyze the setup log and event log files of the instance that you were trying to upgrade.

  5. After you have completed the analysis, detach the disk from the temporary instance and reattach it as a boot disk to the original VM instance.

Troubleshoot RDP

For information about troubleshooting RDP, see Troubleshooting RDP.

Troubleshoot your Windows Server instances

For information about troubleshooting your Windows Server instances, see Tips and troubleshooting for Windows instances.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4