When using the CLI installer to migrate your vCenter Server installation to an appliance, you must provide the parameters with values for your migration specification.

The table lists the configuration parameters that you use to provide input data for the source vCenter Server.

Important: The path to the vCenter Server Appliance installer, the path to your JSON configuration file, and the string values in your JSON configuration file, including the passwords, must contain only ASCII characters. Extended ASCII and non-ASCII characters are unsupported.

To set a value that contains the backslash (\) or quotation mark (") character, you must precede the character with the backslash (\) character. For example, "password":"my\"password" sets the password my"password, "image":"C:\\vmware\\vcsa" sets the path C:\vmware\vcsa.

The boolean values must contain only lowercase characters. Can be either true or false. For example, "ssh_enable":false.

Sections and Subsections of Configuration Parameters in the JSON Migration Templates

The configuration parameters in the JSON migration templates are organized in sections and subsections.

Table 1. Sections and Subsections of Configuration Parameters in the JSON Migration Templates
Section Subsection Description
new_vcsa - describes the target appliance that you want to migrate to esxi Use only if you want to deploy the appliance directly on an ESXi host.
Contains the configuration parameters that describe the target ESXi host.
Note: You must fill in either the esxi or the vc subsection.
vc Use only if you want to deploy the appliance on the inventory of a vCenter Server instance.

Contains the configuration parameters that describe the target ESXi host or DRS cluster from the vCenter Server inventory.

Note: You must fill in either the vc or the esxi subsection.
appliance Contains the configuration parameters that describe the appliance.
os Contains the configuration parameters that describe the operating system settings for the appliance.
ovftool_arguments Optional subsection for adding arbitrary arguments and their values to the OVF Tool command that the installer generates.
Important: The vCenter Server Appliance installer does not validate the configuration parameters in the ovftool_arguments subsection. If you set arguments that the OVF Tool does not recognize, the deployment might fail.
temporary_network Contains the configuration parameters that describe the temporary network for migrating the data from the source to the new target appliance.
user-options Use only when the source is a vCenter Server instance. Contains the configuration parameters that let you control aspects of the migration process for particular components.
source_vc - describes the source Platform Services Controller vc_win Contains the configuration parameters that describe the source Windows installation of vCenter Server or Platform Services Controller
run_migration_assistant Use only if the source Windows installation is running as a virtual machine and you want to automate the invocation of Migration Assistant. For a source Windows installation running on a physical machine, or if you are running Migration Assistant manually on the source Windows machine, copy and paste the thumbprint value from the Migration Assistant console output on the source machine to the migration_ssl_thumbprint key in the vc_win subsection, and remove the run_migration_assistant section.
ceip - describes joining the VMware Customer Experience Improvement Program (CEIP) settings Contains only the ceip_enabled configuration parameter to join or not to join the VMware Customer Experience Improvement Program (CEIP).

Required only if you are deploying a vCenter Server Appliance with an embedded Platform Services Controller or a Platform Services Controller appliance.

Note: If set to true, you must run the CLI deployment command with the --acknowledge-ceip argument.

For information about the CEIP, see the Configuring Customer Experience Improvement Program section in vCenter Server and Host Management.

Configuration Parameters in the new_vcsa Section

Table 2. Configuration Parameters in the new_vcsa Section, esxi Subsection
Name Type Description
hostname string The IP address or FQDN of the target ESXi host on which you want to deploy the appliance.
username string A user name with administrative privileges on the target ESXi host, for example, root.
password string The password of the user with administrative privileges on the target ESXi host.
deployment_network string The name of the network to which to connect the appliance.
Note: The network must be accessible from the target ESXi host.

Ignored if the target ESXi host has only one network.

datastore string The name of the datastore that you want to store all virtual machine configuration files and virtual disks of the appliance.
Note: The datastore must be accessible from the ESXi host.

The datastore must have enough free space.

port integer The port number of the ESXi host. The default port is 443.
ssl_certificate_verification string

The CLI verifies that a server's security certificate is signed by a Certificate Authority (CA), and establishes a secure connection. If the certificate is self-signed, the CLI will stop the upgrade unless you specify one of the following SSL certificate configuration options.

Specify the Secure Hash Algorithm 1 (SHA-1) certificate thumbprint. A certificate thumbprint is a hexadecimal string that uniquely identifies a certificate. The thumbprint is calculated from the content of the certificate using a thumbprint algorithm.

"thumbprint": "certificate SHA-1 thumbprint"

Set verification_mode to NONE.

"verification_mode": "NONE"

If you are connecting to a server with a self-signed certificate, and fail to either specify the SHA-1 certificate thumbprint or set the verification mode to NONE, the CLI will display the server's self-signed cert's thumbprint, and prompt you to accept or reject the certificate thumbprint.

You may also specify that the CLI ignore the self-signed using the vcsa-deploy upgrade command parameter --no-ssl-certificate-validation. See Syntax of the CLI Migrate Command .

Table 3. Configuration Parameters in the new_vcsa Section, vc Subsection
Name Type Description
hostname string The IP address or FQDN of the target vCenter Server instance on which you want to deploy the appliance.
username string vCenter Single Sign-On administrator user name on the target vCenter Server instance, for example, [email protected].
password string The password of the vCenter Single Sign-On administrator user on the target vCenter Server instance.
deployment_network string The name of the network to which to connect the appliance.
Note: The network must be accessible from the target ESXi host or DRS cluster on which you want to deploy the appliance.

Ignored if the target ESXi host or DRS cluster has only one network.

datacenter string or array The vCenter Server datacenter that contains the target ESXi host or DRS cluster on which you want to deploy the appliance.
If the datacenter is located in a folder or a structure of folders, the value must be either a comma-separated list of strings or a comma-separated list as a single string. For example,
["parent_folder", "child_folder", "datacenter_name"]
or
"parent_folder, child_folder, datacenter_name"

If there is no folder path on the datacenter, then use only the datacenter name. For example,

["datacenter_name"]
or
"datacenter_name"
Note: The value is case-sensitive.
datastore string The name of the datastore that you want to store all virtual machine configuration files and virtual disks of the appliance.
Note: The datastore must be accessible from the target ESXi host or DRS cluster.

The datastore must have at least 25 GB of free space.

port integer The port number of the vCenter Server. The default port is 443.
target string or array

The target cluster, ESXi host, or resource pool on which you want to deploy the new appliance. This is the target you specified with the datacenter parameter. This path must end with a cluster name, ESXi hostname, or resource pool name.

Important: You must provide the name that is displayed in the vCenter Server inventory. For example, if the name of the target ESXi host is an IP address in the vCenter Server inventory, you cannot provide an FQDN.
Note: All values are case-sensitive.

If you want the deployed appliance to be listed in a different location within the data center's hierarchy, use the vm_folder parameter described below.

If the target cluster, ESXi host, or resource pool is located in a folder or a structure of folders, the value must be a comma-separated list of strings or a comma-separated list as a single string. For example,
["parent_folder", "child_folder", "esxi-host.domain.com"]
or
"parent_folder, child_folder, esxi-host.domain.com"
If the target ESXi host is part of a cluster, use a comma-separated list of strings or a comma-separated list as a single string to provide the path. For example,
["cluster_name", "esxi-host.domain.com"] 
				  
or
"cluster_name, esxi-host.domain.com"

If you are deploying to a resource pool, include the label Resources before the resource pool name. For example:

 ["cluster_name", "Resources", "resource_pool_name"] 
Note: Pre-checks verify only the memory of the resource pool.
vm_folder string Optional. The name of the VM folder to which to add the appliance.
Table 4. Configuration Parameters in the new_vcsa Section, appliance Subsection
Name Type Description
thin_disk_mode Boolean Set to true to deploy the appliance with thin virtual disks.
deployment_option string The size of the appliance.
  • Set to tiny if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 10 hosts and 100 virtual machines with the default storage size.

    Deploys an appliance with 2 CPUs, 10 GB of memory, and 300 GB of storage.

  • Set to tiny-lstorage if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 10 hosts and 100 virtual machines with the large storage size.

    Deploys an appliance with 2 CPUs, 10 GB of memory, and 825 GB of storage.

  • Set to tiny-xlstorage if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 10 hosts and 100 virtual machines with the x-large storage size.

    Deploys an appliance with 2 CPUs, 10 GB of memory, and 1700 GB of storage.

  • Set to small if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 100 hosts and 1,000 virtual machines with the default storage size.

    Deploys an appliance with 4 CPUs, 16 GB of memory, and 340 GB of storage.

  • Set to small-lstorage if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 100 hosts and 1,000 virtual machines with the large storage size.

    Deploys an appliance with 4 CPUs, 16 GB of memory, and 870 GB of storage.

  • Set to small-xlstorage if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 100 hosts and 1,000 virtual machines with the x-large storage size.

    Deploys an appliance with 4 CPUs, 16 GB of memory, and 1750 GB of storage.

  • Set to medium if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 400 hosts and 4,000 virtual machines with the default storage size.

    Deploys an appliance with 8 CPUs, 24 GB of memory, and 525 GB of storage.

  • Set to medium-lstorage if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 400 hosts and 4,000 virtual machines with the large storage size.

    Deploys an appliance with 8 CPUs, 24 GB of memory, and 1025 GB of storage.

  • Set to medium-xlstorage if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 400 hosts and 4,000 virtual machines with the x-large storage size.

    Deploys an appliance with 8 CPUs, 24 GB of memory, and 1905 GB of storage.

  • Set to large if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 1,000 hosts and 10,000 virtual machines with the default storage size.

    Deploys an appliance with 16 CPUs, 32 GB of memory, and 740 GB of storage.

  • Set to large-lstorage if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 1,000 hosts and 10,000 virtual machines with the large storage size.

    Deploys an appliance with 16 CPUs, 32 GB of memory, and 1090 GB of storage.

  • Set to large-xlstorage if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 1,000 hosts and 10,000 virtual machines with the x-large storage size.

    Deploys an appliance with 16 CPUs, 32 GB of memory, and 1970 GB of storage.

  • Set to xlarge if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 2,000 hosts and 35,000 virtual machines with the default storage size.

    Deploys an appliance with 24 CPUs, 48 GB of memory, and 1180 GB of storage.

  • Set to xlarge-lstorage if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 2,000 hosts and 35,000 virtual machines with the large storage size.

    Deploys an appliance with 24 CPUs, 48 GB of memory, and 1230 GB of storage.

  • Set to xlarge-xlstorage if you want to deploy a vCenter Server Appliance with an embedded Platform Services Controller for up to 2,000 hosts and 35,000 virtual machines with the x-large storage size.

    Deploys an appliance with 24 CPUs, 48 GB of memory, and 2110 GB of storage.

  • Set to management-tiny if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 10 hosts and 100 virtual machines with the default storage size.

    Deploys an appliance with 2 CPUs, 10 GB of memory, and 300 GB of storage.

  • Set to management-tiny-lstorage if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 10 hosts and 100 virtual machines with the large storage size.

    Deploys an appliance with 2 CPUs, 10 GB of memory, and 825 GB of storage.

  • Set to management-tiny-xlstorage if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 10 hosts and 100 virtual machines with the x-large storage size.

    Deploys an appliance with 2 CPUs, 10 GB of memory, and 1700 GB of storage.

  • Set to management-small if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 100 hosts and 1,000 virtual machines with the default storage size.

    Deploys an appliance with 4 CPUs, 16 GB of memory, and 340 GB of storage.

  • Set to management-small-lstorage if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 100 hosts and 1,000 virtual machines with the large storage size.

    Deploys an appliance with 4 CPUs, 16 GB of memory, and 870 GB of storage.

  • Set to management-small-xlstorage if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 100 hosts and 1,000 virtual machines with the x-large storage size.

    Deploys an appliance with 4 CPUs, 16 GB of memory, and 1750 GB of storage.

  • Set to management-medium if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 400 hosts and 4,000 virtual machines with the default storage size.

    Deploys an appliance with 8 CPUs, 24 GB of memory, and 525 GB of storage.

  • Set to management-medium-lstorage if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 400 hosts and 4,000 virtual machines with the large storage size.

    Deploys an appliance with 8 CPUs, 24 GB of memory, and 1025 GB of storage.

  • Set to management-medium-xlstorage if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 400 hosts and 4,000 virtual machines with the x-large storage size.

    Deploys an appliance with 8 CPUs, 24 GB of memory, and 1905 GB of storage.

  • Set to management-large if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 1,000 hosts and 10,000 virtual machines with the default storage size.

    Deploys an appliance with 16 CPUs, 32 GB of memory, and 740 GB of storage.

  • Set to management-large-lstorage if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 1,000 hosts and 10,000 virtual machines with the large storage size.

    Deploys an appliance with 16 CPUs, 32 GB of memory, and 1090 GB of storage.

  • Set to management-large-xlstorage if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 1,000 hosts and 10,000 virtual machines with the x-large storage size.

    Deploys an appliance with 16 CPUs, 32 GB of memory, and 1970 GB of storage.

  • Set to management-xlarge if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 2,000 hosts and 35,000 virtual machines with the default storage size.

    Deploys an appliance with 24 CPUs, 48 GB of memory, and 1180 GB of storage.

  • Set to management-xlarge-lstorage if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 2,000 hosts and 35,000 virtual machines with the large storage size.

    Deploys an appliance with 24 CPUs, 48 GB of memory, and 1230 GB of storage.

  • Set to management-xlarge-xlstorage if you want to deploy a vCenter Server Appliance with an external Platform Services Controller for up to 2,000 hosts and 35,000 virtual machines with the x-large storage size.

    Deploys an appliance with 24 CPUs, 48 GB of memory, and 2110 GB of storage.

  • Set to infrastructureif you want to deploy a Platform Services Controller appliance.

    Deploys an appliance with 2 CPUs, 4 GB of memory, and 60 GB of storage.

image string Optional. A local file path or URL to the vCenter Server Appliance installation package.

By default the installer uses the installation package that is included in the ISO file, in the vcsa folder.

name string The VM name for the appliance.

Must contain only ASCII characters except a percent sign (%), backslash (\), or forward slash (/) and must be no more than 80 characters in length.

ovftool_path string Optional. A local file path to the OVF Tool executable file.

By default the installer uses the OVF Tool instance that is included in the ISO file, in the vcsa/ovftool folder.

Table 5. Configuration Parameters in the new_vcsa Section, os Subsection
Name Type Description
password string The password for the root user of the appliance operating system.

The password must contain between 8 and 20 characters, at least one uppercase letter, at least one lowercase letter, at least one number, and at least one special character, for example, a dollar sign ($), hash key (#), at sign (@), period (.), or exclamation mark (!). All characters must be lower ASCII characters without spaces.

ssh_enable Boolean Set to true to enable SSH administrator login to the appliance.
Table 6. Configuration Parameters in the new_vcsa Section, temporary_network Subsection
Name Type Description
ip_family string IP version for the network of the appliance.

Set to ipv4 or ipv6.

mode string IP assignment for the network of the appliance.

Set to static or dhcp.

ip string IP address for the appliance.

Required only if you use static assignment, that is, if you set the mode parameter to static.

You must set an IPv4 or IPv6 address that corresponds to the network IP version, that is, to the value of the ip_family parameter.

An IPv4 address must comply with the RFC 790 guidelines.

An IPv6 address must comply with the RFC 2373 guidelines.

dns_servers string or array IP addresses of one or more DNS servers.
To set more than one DNS server, use a comma-separated list of strings or a comma-separated list as a single string to provide the path. For example,
["x.y.z.a", "x.y.z.b"]
or
"x.y.z.a, x.y.z.b"

Required only if you use static assignment, that is, if you set the mode parameter to static.

prefix string Network prefix length.

Required only if you use assignment, that is, if you set the mode parameter to static.

For IPv4 version, the value must be between 0 and 32.

For IPv6 version, the value must be between 0 and 128.

gateway string IP address of the default gateway.

For IPv6 version, the value can be default.

Table 7. Configuration Parameters in the new_vcsa Section, user_options Subsection
Name Type Description
vcdb_migrateSet string

Select the types of data to migrate from the old appliance to the new appliance. Data will be copied from the source vCenter Server to the target server. The original source of the data will remain unchanged.

  • Set to core if you want to transfer only the configuration data. This option provides the fastest data migration, keeping system downtime to a minimum.
  • Set to core_events_tasks if you want to transfer the configuration and historical data (events and tasks) immediately. vCenter Server will not start until all data has been migrated from the source vCenter Server for Windows.
  • Set to all if you want to transfer the configuration, historical, and performance metrics data immediately. vCenter Server will not start until all data has been migrated from the source vCenter Server for Windows. This option transfers the largest amount of data, and requires more downtime than other data migration options.
  • Set to transfer_events_tasks_after_upgrade if you want to transfer the historical data (events and tasks) in the background after the upgrade completes. During this time, vCenter Server performance may not be optimal.
  • Set to transfer_stats_events_tasks_after_upgrade if you want to transfer historical data and performance metrics data in the background after the upgrade completes. During this time, vCenter Server performance may not be optimal.
Note: To minimize migration time and the amount of storage required for the new vCenter Server appliance, use the core value.

For more information on the types of data you can transfer from your existing vCenter Server to the new, upgraded vCenter Server, see Transferring Data from an Existing vCenter Server Appliance.

Requirements for the Automatic Invocation of Migration Assistant

You use the run_migration_assistant subsection to automate the invocation of Migration Assistant. Automatic invocation works only if the source Windows installation is running as a virtual machine.

The user account that you specify in the os_username or vum_os_username parameters needs privilege elevation to Administrator. For example:
  • The built-in Windows Administrator account
  • A user account with a user name other than Administrator that is a member of the local Windows Administrators group
  • The Domain Administrator account with the user name Administrator that is a member of the local Windows Administrators group
  • The user name ID must be in the format your_domain_name\\user_ID or user_ID@your_domain_name.
Restriction: Automatic invocation of Migration Assistant does not work with a Windows account that requires privilege elevation to Administrator. Instead, run Migration Assistant manually on the source Windows machine, copy and paste the thumbprint value from the Migration Assistant console output on the source machine to the migration_ssl_thumbprint key in the vc_win subsection, and remove the run_migration_assistant section.

Configuration Parameters in the source_vc Section

Table 8. Configuration Parameters in the source_vc Section, vc_win Subsection
Name Type Description
hostname string The host name or IP address of the source Windows installation of vCenter Server or Platform Services Controller that you want to migrate.
username string A vCenter Single Sign-On user name with administrative privileges for the vCenter Server Platform Services Controller instance that you want to migrate.
password string The password of the vCenter Server or Platform Services Controller instance that you want to migrate.
migration_port string Migration Assistant port number shown in the Migration Assistant console. The default port is 9123.
active_directory_domain string The name of the Active Directory domain to which the source vCenter Server instance is joined.
active_directory_username string Administrator user name of the Active Directory domain to which the source vCenter Server instance is joined.
active_directory_password string Administrator password of the Active Directory domain to which the source vCenter Server instance is joined.
Note: The installer verifies the entered credentials, but does not check the required privileges to add the target machine to the Active Directory domain. Verify that the user credentials have all the required permissions to add a machine to the Active Directory domain.
migration_ssl_thumbprint string The SSL thumbprint of Migration Assistant.
Table 9. Configuration Parameters in the source_vc Section, run_migration_assistant Subsection
Name Type Description
esxi_hostname string FQDN or IP address of ESXi on which the source vCenter Server Platform Services Controller instance resides.
esxi_username string User name of a user with administrative privileges on the ESXi host.
esxi_password string The password of the ESXi host user. If left blank, or omitted, you will be prompted to enter the password at the command console during template verification.
esxi_port string The port number of the ESXi host. The default port is 443.
os_username string Administrator user name for the source Windows machine.
os_password string Administrator user password for the source Windows machine. If left blank, or omitted, you will be prompted to enter it at the command console during template verification.
migration_ip string The IP address of the network adapter that will be migrated.
migration_port string Migration Assistant port number shown in the Migration Assistant console. The default port is 9123.
export_dir string Directory to export source configuration and data.
sa_password string The IP address of the network vCenter Server service account user password. This option is only required if the vCenter Server service is running under a non LocalSystem account. If left blank, or omitted, you will be prompted to enter it at the command console during template verification.
Table 10. Configuration Parameters in the source_vum Section, run_migration_assistant Subsection
Name Type Description
esxi_hostname string FQDN or IP address of ESXi on which the source vCenter Server Platform Services Controller instance resides.
esxi_username string User name of a user with administrative privileges on the ESXi host.
esxi_password string The password of the ESXi host user. If left blank, or omitted, you will be prompted to enter the password at the command console during template verification.
esxi_port string The port number of the ESXi host. The default port is 443.
vum_hostname string FQDN or IP address of ESXi on which the source Update Manager instance resides.
vum_os_username string Administrator user name for the source Windows machine.
vum_os_password string Administrator user password for the source Update Manager Windows machine. If left blank, or omitted, you will be prompted to enter it at the command console during template verification.
migration_port string Migration Assistant port number shown in the Migration Assistant console. The default port is 9123.
export_dir string Directory to export source configuration and data.

Configuration Parameters in the ceip Section

Table 11. Configuration Parameters in the ceip Section, settings Subsection
Name Type Description
ceip_enabled Boolean Set to true to join the CEIP for this appliance.