Synchronize ESXi Clocks with a Network Time Server

Before you install vCenter Server, make sure all machines on your vSphere network have their clocks synchronized.

This task explains how to set up NTP from the VMware Host Client.

Procedure

  1. Start the VMware Host Client, and connect to the ESXi host.
  2. Click Manage.
  3. Under System, click Time & date, and click Edit settings.
  4. Select Use Network Time Protocol (enable NTP client).
  5. In the NTP servers text box, enter the IP address or fully qualified domain name of one or more NTP servers to synchronize with.
  6. From the NTP Service Start-up Policy drop-down menu, select Start and stop with host.
  7. Click Save.
    The host synchronizes with the NTP server.

Preparing vCenter Server Databases for Migration

The vCenter Server appliance instance requires a database to store and organize server data. Ensure your source vCenter Server database is prepared for migration to the target vCenter Server appliance.

Each vCenter Server appliance instance must have its own database. The bundled PostgreSQL database that is included in the vCenter Server appliance supports up to 2,500 hosts and 30,000 virtual machines.

To ensure your database is prepared for migration:

  • Verify that passwords are current and not set to expire soon.
  • (Optional) Reduce the database size. For more information, see Knowledge Base article KB 2110031.
  • Verify that you have backed up your database. See your database documentation.
  • Verify that vCenter Server can communicate with the local database.

During the migration of vCenter Server to vCenter Server appliance, the installer:

  1. Exports the vCenter Server database.
  2. Deploys the target vCenter Server appliance in an unconfigured state.
  3. Copies exported data to the target vCenter Server appliance.
  4. Starts the PostgreSQL service to import the source database data.
  5. Upgrades the database schema to be compatible with the target vCenter Server appliance.
  6. Starts the target vCenter Server appliance services.

When you configure the target vCenter Server appliance, you initialize and configure using the imported database with the old schema. You have a choice of migration options:

  1. Inventory tables
  2. Inventory tables with events and tasks
  3. All database data

Prepare an Oracle Database for Migration

Ensure that you have the necessary credentials, and that you complete any necessary cleanup or other preparation before migrating your Oracle database from Windows to an embedded PostgreSQL database in the appliance.

Prerequisites

Verify that you have confirmed basic interoperability before preparing your Oracle database for migration.

Verify that you have backed up your database. For information about backing up the vCenter Server database, see the Oracle documentation.

Procedure

  1. Verify that passwords are current and not set to expire soon.
  2. Ensure that you have login credentials, the database name, and the database server name that the vCenter Server database is to use.
    Look in the ODBC system for the connection name of the database source name for the vCenter Server database.
  3. Use the Oracle SERVICE_NAME instead of SID to verify that your Oracle database instance is available.
    • Log in to the database server to read from the alert log: $ORACLE_BASE/diag/rdbms/$instance_name/$INSTANCE_NAME/trace/alert_$ INSTANCE_NAME.log.
    • Log in to the database server to read from the Oracle Listener status output.
    • If you have the SQL*Plus client installed, you can use tnsping for the vCenter Database instance. If the tnsping command does not work the first time, retry it after waiting a few minutes. If retrying does not work, restart the vCenter Database instance on the Oracle server and then retry tnsping to ensure it is available.
  4. Verify that the JDBC driver file is included in the CLASSPATH variable.
  5. Verify that permissions are set correctly.
  6. Either assign the DBA role or grant the required permissions to the user.
  7. Make a full backup of the vCenter Server database.

Results

Your database is prepared for the vCenter Server migration to vCenter Server Appliance.

Prepare a Microsoft SQL Server Database for Migration

Ensure that you have the necessary credentials, and that you complete any necessary cleanup or other preparation before migrating your Microsoft SQL Server database on Windows to an embedded PostgreSQL database appliance.

Important: You cannot use Integrate Windows for your authentication method if the vCenter Server service is running under the Microsoft Windows built-in system account.

Prerequisites

Verify that you have backed up your database. For information about backing up the vCenter Server database, see the Microsoft SQL Server documentation.

Procedure

  1. Verify that passwords are current and not set to expire soon.
  2. Verify that JDK 1.6 or later is installed on the vCenter Server machine.
  3. Verify that the sqljdbc4.jar file is added to the CLASSPATH variable on the machine where vCenter Server Appliance is to be migrated.
    If the sqljdbc4.jar file is not installed on your system, the vCenter Server Appliance installer installs it.
  4. Verify that your system database source name is using the Microsoft SQL Server Native Client 10 or 11 driver.
  5. Make a full backup of the vCenter Server database.

Results

Your database is prepared for the vCenter Server migration to vCenter Server Appliance.

Prepare PostgreSQL Database Before Migrating vCenter Server to an Appliance

Ensure that you have the necessary credentials, and that you complete any necessary cleanup or other preparation before migrating your PostgreSQL database installation on Windows to an appliance.

For information about backing up the vCenter Server database, see the PostgreSQL documentation.

Prerequisites

Verify that you have confirmed basic migration interoperability before preparing your PostgreSQL database for migrating vCenter Server.

Procedure

  1. Verify that passwords are current and not set to expire soon.
  2. For vCenter Server, locate the cleanup_orphaned_data_PostgresSQL.sql script in the ISO image and copy it to your PostgreSQL server.
  3. Log in to vCenter Server Appliance as root user.
  4. Run the cleanup script.
    /opt/vmware/vpostgres/9.4/bin/psql -U postgres -d VCDB -f path cleanup_orphaned_data_Postgres.sql

    The cleanup script cleans and purges any unnecessary or orphaned data in your vCenter Server database that is not used by any vCenter Server component.

  5. Make a full backup of the vCenter Server database.

Results

Your database is prepared for the vCenter Server migration to vCenter Server Appliance.

Prepare Managed ESXi Hosts for Migration

You must prepare the ESXi hosts managed by your vCenter Server installation before migrating it from Windows to vCenter Server 8.0.

Prerequisites

To migrate vCenter Server or an external Platform Services Controller from Windows to vCenter Server 8.0, your source and target ESXi hosts must meet the migration requirements.

  • ESXi hosts must be at version 6.7 or greater. For information on ESXi compatibility, see the VMware Compatibility Guide.
  • ESXi hosts must not be in lockdown or maintenance mode.

Procedure

  1. To keep your current SSL certificates, back up the SSL certificates that are on the vCenter Server system before you upgrade to vCenter Server 8.0.
    The default location of the SSL certificates is %allusersprofile%\VMware\VMware VirtualCenter.
  2. If you have Custom or Thumbprint certificates, see ESXi Host Upgrades and Certificates to determine your preparatory steps.
  3. If you have vSphere HA clusters, SSL certificate checking must be enabled.
    If you have vSphere HA clusters, SSL certificate checking must be enabled.
    1. Select the vCenter Server instance in the vSphere Client inventory tree.
    2. Select the Manage tab and the General subtab.
    3. Verify that vCenter Server requires verified host SSL certificates is selected.

Results

Your ESXi hosts are ready for migration to the vCenter Server appliance.

Preparing vCenter Server Certificates for Migration

You must verify that your source vCenter Server certificates are prepared before you start the migration process.

In vSphere 6.0 and later certificates are stored in the VMware Endpoint Certificate Store. The migration process proceeds normally and preserves your certificates. For information about vCenter Server certificate locations, see Knowledge Base article KB 2111411.

Certificate Files Location

The vCenter Server certificate files are located at %ProgramData%\VMware\VMware VirtualCenter\SSL

Supported Certificate Types

If your environment uses any of the supported certificate types, you can continue with the migration. The migration process proceeds normally and preserves your certificates.

  • Your rui.crt file contains the entire chain including the leaf certificate. You can create this type of certificate by deploying and using the VMware SSL Certificate Automation Tool, see see Knowledge Base article KB 2057340 .
  • Your rui.crt file contains the leaf certificate and the corresponding cacert.pem is available in %ProgramData%\VMware\VMware VirtualCenter\SSL to validate the rui.crt.

Unsupported Certificate Types

If your environment uses any of the unsupported certificate types, you must prepare your certificates before you can proceed with the migration process proceeds.

  • Your rui.crt contains only the leaf certificate, the cacert.pem is missing or invalid, and cacert.pem is not added to the Windows trust store.

    Get the Certificate Authority certificate, including all intermediate certificates, and create a cacert.pem file, or replace the vCenter Server certificates with any of the supported formats.

  • Your rui.crt contains only the leaf certificate and the cacert.pem is missing or invalid, but the cacert.pem is added to the Windows trust store.

    Get the Certificate Authority certificate, including all intermediate certificates from the Windows trust store and create cacert.pem. Use OpenSSL to verify the certificate by running verify -CAfile cacert.pem rui.crt command.

For more information about vSphere security certificates, see the vSphere Security documentation.

System Requirements for the vCenter Server Installer

You can run the vCenter Server GUI or CLI installer from a network client machine that is running on a Windows, Linux, or Mac operating system of a supported version.

To ensure optimal performance of the GUI and CLI installers, use a client machine that meets the minimum hardware requirements.

Table 1. System Requirements for the GUI and CLI Installers
Operating System Supported Versions Minimum Hardware Configuration for Optimal Performance
Windows
  • Windows 10, 11
  • Windows 2016 x64 bit
  • Windows 2019 x64 bit
  • Windows 2022 x64 bit
4 GB RAM, 2 CPU having 4 cores with 2.3 GHz, 32 GB hard disk, 1 NIC
Linux
  • SUSE 15
  • Ubuntu 18.04, 20.04, 21.10
4 GB RAM, 1 CPU having 2 cores with 2.3 GHz, 16 GB hard disk, 1 NIC
Note: The CLI installer requires 64-bit OS.
Mac
  • macOS 10.15, 11, 12
  • macOS Catalina, Big Sur, Monterey
8 GB RAM, 1 CPU having 4 cores with 2.4 GHz, 150 GB hard disk, 1 NIC
Note: For client machines that run on Mac 10.15 or later, concurrent GUI deployments of multiple appliances are unsupported. You must deploy the appliances in a sequence.
Note: Visual C++ redistributable libraries need to be installed to run the CLI installer on versions of Windows older than Windows 10. The Microsoft installers for these libraries are located in the vcsa-cli-installer/win32/vcredist directory.
Note: Deploying the vCenter Server appliance with the GUI requires a minimum resolution of 1024x768 to properly display. Lower resolutions can truncate the UI elements.

Determine the Oracle Database Size and the Storage Size for the New Appliance

Before upgrading a vCenter Server appliance or migrating a vCenter Server on Windows that uses an external Oracle database, you must determine the size of the existing database. Based on the size of the existing database, you can calculate the minimum storage size for the new vCenter Server appliance database using an embedded PostgreSQL database.

You run scripts to determine the Oracle core table size, the events and tasks table size, and the statistics table size. The Oracle core table corresponds to the database (/storage/db) partition of the PostgreSQL database. The Oracle events and tasks and statistics tables correspond to the statistics, events, alarms, and tasks (/storage/seat) partition of the PostgreSQL database.

During the upgrade of the appliance, you must select a storage size for the new appliance that is at least twice the size of the Oracle tables size.

During the upgrade of the appliance, you can select the types of data to transfer to the new appliance. To minimize upgrade time and storage requirements for the new appliance, you can choose to transfer only the configuration data.

Prerequisites

You must have the vCenter Server database login credentials.

Procedure

  1. Log in to a SQL*Plus session with the vCenter Server database user.
  2. Determine the core table size by running the following script.
    SELECT ROUND(SUM(s.bytes)/(1024*1024)) SIZE_MB
      FROM   user_segments s
      WHERE  (s.segment_name,s.segment_type)
                    IN (SELECT seg_name, seg_type FROM
                             (SELECT t.table_name seg_name, t.table_name tname,
                               'TABLE' seg_type
                               FROM   user_tables t
                              UNION
                              SELECT i.index_name, i.table_name,
                              'INDEX'
                               FROM   user_indexes i
                             ) ti
                        WHERE  (ti.tname LIKE 'VPX_%'
                                OR ti.tname LIKE 'CL_%'
                                OR ti.tname LIKE 'VDC_%')
                            AND ti.tname NOT LIKE 'VPX_SAMPLE_TIME%'
                            AND ti.tname NOT LIKE 'VPX_HIST_STAT%'
                            AND ti.tname NOT LIKE 'VPX_TOPN%'
                            AND ti.tname NOT LIKE 'VPX_SDRS_STATS_VM%'
                            AND ti.tname NOT LIKE 'VPX_SDRS_STATS_DATASTORE%'
                            AND ti.tname NOT LIKE 'VPX_TASK%'
                            AND ti.tname NOT LIKE 'VPX_EVENT%'
                            AND ti.tname NOT LIKE 'VPX_PROPERTY_BULLETIN%');
    The script returns the database storage size in MB.
  3. Determine the events and tasks table size by running the following script.
    SELECT ROUND(SUM(s.bytes)/(1024*1024)) SIZE_MB
    FROM   user_segments s
    WHERE  (s.segment_name,s.segment_type)
                 IN (SELECT seg_name, seg_type FROM
                          (SELECT t.table_name seg_name, t.table_name tname,
                            'TABLE' seg_type
                            FROM   user_tables t
                           UNION
                           SELECT i.index_name, i.table_name,
                           'INDEX'
                            FROM   user_indexes i
                          ) ti
                     WHERE
                        ti.tname LIKE 'VPX_TASK%'
                     OR ti.tname LIKE 'VPX_EVENT%');
    The script returns the events and tasks storage size in MB.
  4. Determine the statistics table size by running the following script.
    SELECT ROUND(SUM(s.bytes)/(1024*1024)) SIZE_MB
    FROM   user_segments s
    WHERE  (s.segment_name,s.segment_type)
                 IN (SELECT seg_name, seg_type FROM
                          (SELECT t.table_name seg_name, t.table_name tname,
                            'TABLE' seg_type
                            FROM   user_tables t
                           UNION
                           SELECT i.index_name, i.table_name,
                           'INDEX'
                            FROM   user_indexes i
                          ) ti
                     WHERE
                        ti.tname LIKE 'VPX_SAMPLE_TIME%'
                     OR ti.tname LIKE 'VPX_TOPN%'
                     OR ti.tname LIKE 'VPX_TASK%'
                     OR ti.tname LIKE 'VPX_EVENT%'
                     OR ti.tname LIKE 'VPX_HIST_STAT%');
    The script returns the statistics storage size in MB.
  5. Calculate the minimum storage size for the new appliance that you are going to deploy during the upgrade.
    1. The size of the database (/storage/db) partition of the embedded PostgreSQL database must be at least twice the size of the Oracle core table returned in Step 2.
    2. The size of the statistics, events, alarms, and tasks (/storage/seat) partition of the embedded PostgreSQL database must be at least twice the sum of the sizes of the Oracle events and tasks and statistics tables returned in Step 3 and Step 4.
    For example, if the Oracle core table is 100 MB, the events and tasks table is 1,000 MB, and the statistics table is 2,000 MB, then the Postgres /storage/db partition must be at least 200 MB and the /storage/seat partition must be at least 6,000 MB.

Determine the Microsoft SQL Server Database Size and the Storage Size for the New vCenter Server Appliance

Before upgrading a vCenter Server appliance, or migrating a vCenter Server on Windows that uses an external Microsoft SQL Server database, you must determine the size of the existing database. Based on the size of the existing database, you can calculate the minimum storage size for the new vCenter Server appliance. This storage size allows the embedded PostgreSQL database to assume the data from the old database with enough free disk space after the upgrade.

You run scripts to determine the Microsoft SQL Server core table size, the events and tasks table size, and the statistics table size. The Microsoft SQL Server core table corresponds to the database (/storage/db) partition of the PostgreSQL database. The Microsoft SQL Server events and tasks and statistics tables correspond to the statistics, events, alarms, and tasks (/storage/seat) partition of the PostgreSQL database.

During the upgrade of the appliance, you must select a storage size for the new appliance that is at least twice the size of the Microsoft SQL Server tables size.

Prerequisites

You must have the vCenter Server database login credentials.

Procedure

  1. Log in to a SQL Management Studio session with the vCenter Server database user.
  2. Determine the core table size by running the following script.
    SELECT SUM(p.used_page_count * 8)/1024 AS disk_size
      FROM sys.dm_db_partition_stats p
      JOIN sys.objects o
        ON o.object_id = p.object_id
     WHERE o.type_desc = 'USER_TABLE'
       AND o.is_ms_shipped = 0 AND UPPER(o.name) NOT LIKE 'VPX_HIST_STAT%'
       AND UPPER(o.name) NOT LIKE 'VPX_SAMPLE_TIME%'
       AND UPPER(o.name) NOT LIKE 'VPX_TOPN%'
       AND UPPER(o.name) NOT LIKE 'VPX_TASK%'
       AND UPPER(o.name) NOT LIKE 'VPX_EVENT%'
       AND UPPER(o.name) NOT LIKE 'VPX_SDRS_STATS_VM%'
       AND UPPER(o.name) NOT LIKE 'VPX_SDRS_STATS_DATASTORE%'
       AND UPPER(o.name) NOT LIKE 'VPX_PROPERTY_BULLETIN%';
    The script returns the database storage size in MB.
  3. Determine the events and tasks table size by running the following script.
    SELECT SUM(p.used_page_count * 8)/1024 AS disk_size
      FROM sys.dm_db_partition_stats p
      JOIN sys.objects o
        ON o.object_id = p.object_id
     WHERE o.type_desc = 'USER_TABLE'
       AND o.is_ms_shipped = 0 AND ( UPPER(o.name) LIKE 'VPX_TASK%'
        OR UPPER(o.name) LIKE 'VPX_EVENT%');
    The script returns the events and tasks storage size in MB.
  4. Determine the statistics table size by running the following script.
    SELECT SUM(p.used_page_count * 8)/1024 AS disk_size
      FROM sys.dm_db_partition_stats p
      JOIN sys.objects o
        ON o.object_id = p.object_id
     WHERE o.type_desc = 'USER_TABLE'
       AND o.is_ms_shipped = 0
       AND (     UPPER(o.name) LIKE 'VPX_HIST_STAT%'
             OR UPPER(o.name) LIKE 'VPX_SAMPLE_TIME%'
             OR UPPER(o.name) LIKE 'VPX_TOPN%');
    The script returns the statistics storage size in MB.
  5. Calculate the minimum storage size for the new appliance that you are going to deploy during the upgrade.
    1. The size of the database (/storage/db) partition of the embedded PostgreSQL database must be at least twice the size of the Microsoft SQL Server core table returned in Step 2.
    2. The size of the statistics, events, alarms, and tasks (/storage/seat) partition of the embedded PostgreSQL database must be at least twice the sum of the sizes of the Microsoft SQL Server events and tasks and statistics tables returned in Step 3 and Step 4.
    For example, if the Microsoft SQL Server core table is 100 MB, the events and tasks table is 1,000 MB, and the statistics table is 2,000 MB, then the Postgres /storage/db partition must be at least 200 MB and the /storage/seat partition must be at least 6,000 MB.

Download and Run VMware Migration Assistant on the Source Windows Machine

You must download and run the VMware Migration Assistant on your source vCenter Server or Platform Services Controller to prepare it for migration from Windows to a vCenter Server appliance. If your deployment of vCenter Server has an external Update Manager that runs on Windows, download and run the VMware Migration Assistant on the source Windows machine. Update Manager prepares the Update Managerserver and database for migration from Windows to the vCenter Server appliance.

The VMware Migration Assistant performs the following tasks on the source Windows machine where you run it:

  1. Discovers the source deployment type.
  2. Runs pre-checks on the source.
  3. Reports errors that must be addressed before starting the migration.
  4. Provides information for the next steps in the migration process.
Ensure that the VMware Migration Assistant window remains open during the migration process. Closing the VMware Migration Assistant causes the migration process to stop.

Prerequisites

Procedure

  1. In the vCenter Server appliance installer package, locate the directory that contains VMware Migration Assistant.
  2. Copy the VMware Migration Assistant folder to the source Windows machine where either one of the following components runs:
    • Update Manager
    • Platform Services Controller
    • vCenter Server
    Caution: If Update Manager runs on a different Windows machine than any other of the vCenter Server components that you are migrating, run VMware Migration Assistant on the Update Manager source machine first. If you do not run VMware Migration Assistant on the Update Manager source machine first, the VMware Migration Assistant on vCenter Server may fail.
  3. Run the VMware Migration Assistant on the Windows machine.
    • For the GUI, double-click VMware-Migration-Assistant.exe
    • For the CLI, enter: VMware-Migration-Assistant.exe -p <password of [email protected]>

      To list all the available input parameters, enter: VMware-Migration-Assistant.exe --help.

    Important: Leave the Migration Assistant window open until you finish the upgrade or the migration process of your vCenter Server deployment.
    The VMware Migration Assistant runs pre-upgrade checks and prompts you to resolve any errors it finds before proceeding with the migration.

Results

When the pre-checks are finished and any errors are addressed, your source system is ready for migration.

What to do next

To begin the migration process, follow the VMware Migration Assistant instructions.

For detailed migration steps, see one of the following.