Location>code7788 >text

VMware vCenter] The CLI deployment method of vCenter Server is clear at once.

Popularity:270 ℃/2024-08-09 10:07:50

VMware vCenter Server is a core component of the VMware vSphere solution for managing multiple ESXi hosts and enabling more advanced features (such as HA, DRS, and FT, etc.), which I believe you are already very familiar with. For the installation and deployment of vCenter Server, most of you may choose to deploy vCenter Server using the GUI method and use the \vcsa-ui-installer\win32\ deployment program in the vCenter Server ISO image file, as shown in the following figure. The deployment process is divided into two phases. The first phase configures and deploys the OVA virtual machine file for vCenter Server; the second phase sets up and starts the services for the vCenter Server virtual machine.

In fact, the CLI deployment method is also supported for vCenter Server deployment. For those like me who often need to install and remove vCenter Server environments in the lab, I may prefer the CLI automated deployment method because it saves a lot of time to do other things. If you understand the GUI deployment process of vCenter Server, it should be very easy to use the CLI deployment method. Here's a look at how to deploy the vCenter Server environment we need using the CLI approach, covering all the scenarios in the GUI deployment process, for more content and details check out thevCenter Server Product Documentation

Mount the vCenter Server ISO image file on disk drive F of the local virtual machine, and you can see all the files contained in the vCenter Server installation image file, as shown in the following figure. Note: The CLI deployment for vCenter Server will be performed using PowerShell. The ISO image file is based on vCenter Server 8.0 U2b, internal version number 23319993.

As you can see, if you are using the GUI deployment method select the deployment program under the vcsa-ui-installer folder, if you are using the CLI deployment method use the deployment program under the \vcsa-cli-installer\win32\ folder.

In addition to the deployment program, the CLI deployment method requires the use of JSON configuration files under the \vcsa-cli-installer\templates\install\ folder, which predefine the information that needs to be configured during the deployment of vCenter Server, such as the deployment location, FQDN, and so on.

These JSON configuration files are divided into two categories: *_on_ESXi.json files, which are used to deploy vCenter Server VMs to ESXi hosts, and *_on_VC.json files, which are used to deploy vCenter Server VMs to an existing vCenter Server. The first type is typically used for initial deployment, and the second type is deployed with an existing vSphere environment. The deployment scenarios represented by each of these JSON configuration files are described later.

If you look at the command help for the deployed program, the CLI method also allows you to install, upgrade, and migrate.

F:\vcsa-cli-installer\win32\ --help

Use the following command to view the deployment sizes supported by vCenter Server and the corresponding default configurations. you can choose which deployment option you want based on your environment.

F:\vcsa-cli-installer\win32\ --supported-deployment-sizes

If there is a question about which configuration option is in the JSON profile, you can use the following command to see a description of the configuration option in the JSON profile.

F:\vcsa-cli-installer\win32\ install --template-help | more

The following is a formal entry into the configuration process of CLI deployment, involving a variety of deployment scenarios for vCenter Server, different scenarios will use different JSON configuration files and environments.

I. Deploying a vCenter Server Virtual Machine to an ESXi Host

Deploying a vCenter Server virtual machine to an ESXi host is usually a scenario where the ESXi host already has environment information such as local storage and network port groups. This scenario requires the embedded_vCSA_on_ESXi.json configuration file in the vCenter Server image file, which can be modified according to this configuration file to the actual environment, as shown in the following example:

{
    "__version": "2.13.0",
    "__comments": "commander-in-chief (military) vCenter Server The virtual machine is deployed to the ESXi main unit",
    "new_vcsa": {
        "esxi": {
            "hostname": "192.168.32.51",
            "username": "root",
            "password": "vSphere8@password",
            "deployment_network": "VM Network",
            "datastore": "Datastore-01"
        },
        "appliance": {
            "__comments": [
                "vCenter Server Deployment parameters"
            ],
            "thin_disk_mode": true,
            "deployment_option": "tiny",
            "name": "vcenter01"
        },
        "network": {
            "ip_family": "ipv4",
            "mode": "static",
            "system_name": "",
            "ip": "192.168.32.55",
            "prefix": "24",
            "gateway": "192.168.32.254",
            "dns_servers": [
                "192.168.32.3"
            ]
        },
        "os": {
            "password": "vSphere8@password",
            "ntp_servers": "192.168.32.3",
            "ssh_enable": true
        },
        "sso": {
            "password": "vSphere8@password",
            "domain_name": ""
        }
    },
    "ceip": {
        "description": {
            "__comments": [
                "++++VMware Customer Experience Improvement Program (CEIP)++++",
                "VMware's Customer Experience Improvement Program (CEIP) ",
                "provides VMware with information that enables VMware to ",
                "improve its products and services, to fix problems, ",
                "and to advise you on how best to deploy and use our ",
                "products. As part of CEIP, VMware collects technical ",
                "information about your organization's use of VMware ",
                "products and services on a regular basis in association ",
                "with your organization's VMware license key(s). This ",
                "information does not personally identify any individual. ",
                "",
                "Additional information regarding the data collected ",
                "through CEIP and the purposes for which it is used by ",
                "VMware is set forth in the Trust & Assurance Center at ",
                "/trustvmware/ . If you ",
                "prefer not to participate in VMware's CEIP for this ",
                "product, you should disable CEIP by setting ",
                "'ceip_enabled': false. You may join or leave VMware's ",
                "CEIP for this product at any time. Please confirm your ",
                "acknowledgement by passing in the parameter ",
                "--acknowledge-ceip in the command line.",
                "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
            ]
        },
        "settings": {
            "ceip_enabled": false
        }
    }
}

Save the configuration file as to the files folder and use the following command to perform a pre-deployment check.

F:\vcsa-cli-installer\win32\ install .\files\ --accept-eula --no-ssl-certificate-verification --precheck-only

If the JSON profile checks successfully with the deployment environment, output similar to the following is produced.

[SUCCEEDED] Successfully executed Task 'Precheck ovftool commandline parameters
to deploy a vCenter Server Appliance' in TaskFlow 'deploy-on-esxi' at 09:03:06
=================================== 09:03:07 ===================================
Result and Log File Information...
WorkFlow log directory:
C:\Users\JUNIOR~1\AppData\Local\Temp\vcsaCliInstaller-2024-08-06-09-02-x2dv8gw0\workflow_1722934960074

If the JSON configuration file checks out fine with the deployment environment, use the following command to perform a formal deployment.

F:\vcsa-cli-installer\win32\ install .\files\ --accept-eula --no-ssl-certificate-verification

If the vCenter Server deployment is successful, output similar to the following.

Successfully completed VCSA deployment.  VCSA Deployment Start Time:
2024-08-06T09:11:48.264Z VCSA Deployment End Time: 2024-08-06T09:33:42.921Z
 [SUCCEEDED] Successfully executed Task 'MonitorDeploymentTask: Monitoring
Deployment' in TaskFlow 'deploy-on-esxi' at 09:33:55
Monitoring VCSA Deploy task completed
== [START] Start executing Task: Join active domain if necessary at 09:33:56 ==
Domain join task not applicable, skipping task
 [SUCCEEDED] Successfully executed Task 'Running deployment: Domain Join' in
TaskFlow 'deploy-on-esxi' at 09:33:56
 [START] Start executing Task: Provide the login information about new
appliance. at 09:33:56
    Appliance Name: vcenter01
    System Name: 
    System IP: 192.168.32.55
    Log in as: Administrator@
 [SUCCEEDED] Successfully executed Task 'ApplianceLoginSummaryTask: Provide
appliance login information.' in TaskFlow 'deploy-on-esxi' at 09:33:56
=================================== 09:33:57 ===================================
Result and Log File Information...
WorkFlow log directory:
C:\Users\JUNIOR~1\AppData\Local\Temp\vcsaCliInstaller-2024-08-06-09-03-4auw6_e4\workflow_1722935032748

Log in to vCenter Server to view the deployment.

Deploying a vCenter Server Virtual Machine to an Existing vCenter Server

Deploying a vCenter Server virtual machine to an existing vCenter Server is usually a scenario where the current environment already has a vSphere environment and you want to deploy another environment on top of it. This scenario requires the embedded_vCSA_on_VC.json configuration file in the vCenter Server image file to be modified to the information in the actual environment according to the This configuration file is modified to the information in the actual environment, as shown in the following example:

{
    "__version": "2.13.0",
    "__comments": "commander-in-chief (military) vCenter Server Virtual Machine Deployment to Existing vCenter Server first (of multiple parts)",
    "new_vcsa": {
        "vc": {
            "__comments": [
                "'datacenter' must end with a datacenter name, and only with a datacenter name.",
                "'target' must end with an ESXi hostname, a cluster name, or a resource pool name.",
                "The item 'Resources' must precede the resource pool name. ",
                "All names are case-sensitive. ",
                "For details and examples, refer to template help, . vcsa-deploy {install|upgrade|migrate} --template-help"
            ],
            "hostname": "",
            "username": "administrator@",
            "password": "vSphere8@password",
            "deployment_network": "VM Network",
            "datacenter": [
                "mulab"
            ],
            "datastore": "vsanDatastore",
            "target": [
			    "vsan8-hci-esa"
            ]
        },
        "appliance": {
            "__comments": [
                "vCenter Server Deployment parameters"
            ],
            "thin_disk_mode": true,
            "deployment_option": "tiny",
            "name": "vcenter02"
        },
        "network": {
            "ip_family": "ipv4",
            "mode": "static",
            "system_name": "",
            "ip": "192.168.32.56",
            "prefix": "24",
            "gateway": "192.168.32.254",
            "dns_servers": [
                "192.168.32.3"
            ]
        },
        "os": {
            "password": "vSphere8@password",
            "ntp_servers": "192.168.32.3",
            "ssh_enable": true
        },
        "sso": {
            "password": "vSphere8@password",
            "domain_name": ""
        }
    },
    "ceip": {
        "description": {
            "__comments": [
                "++++VMware Customer Experience Improvement Program (CEIP)++++",
                "VMware's Customer Experience Improvement Program (CEIP) ",
                "provides VMware with information that enables VMware to ",
                "improve its products and services, to fix problems, ",
                "and to advise you on how best to deploy and use our ",
                "products. As part of CEIP, VMware collects technical ",
                "information about your organization's use of VMware ",
                "products and services on a regular basis in association ",
                "with your organization's VMware license key(s). This ",
                "information does not personally identify any individual. ",
                "",
                "Additional information regarding the data collected ",
                "through CEIP and the purposes for which it is used by ",
                "VMware is set forth in the Trust & Assurance Center at ",
                "/trustvmware/ . If you ",
                "prefer not to participate in VMware's CEIP for this ",
                "product, you should disable CEIP by setting ",
                "'ceip_enabled': false. You may join or leave VMware's ",
                "CEIP for this product at any time. Please confirm your ",
                "acknowledgement by passing in the parameter ",
                "--acknowledge-ceip in the command line.",
                "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
            ]
        },
        "settings": {
            "ceip_enabled": false
        }
    }
}

Save the configuration file as to the files folder and use the following command to perform a pre-deployment check.

F:\vcsa-cli-installer\win32\ install .\files\ --accept-eula --no-ssl-certificate-verification --precheck-only

If the JSON profile checks successfully with the deployment environment, output similar to the following is produced.

[SUCCEEDED] Successfully executed Task 'Precheck ovftool commandline parameters
to deploy a vCenter Server Appliance' in TaskFlow 'deploy-on-vcenter' at
09:05:55
=================================== 09:05:56 ===================================
Result and Log File Information...
WorkFlow log directory:
C:\Users\JUNIOR~1\AppData\Local\Temp\vcsaCliInstaller-2024-08-06-09-05-z39vgzmr\workflow_1722935126586

If the JSON configuration file checks out fine with the deployment environment, use the following command to perform a formal deployment.

F:\vcsa-cli-installer\win32\ install .\files\ --accept-eula --no-ssl-certificate-verification

If the vCenter Server deployment is successful, output similar to the following.

Successfully completed VCSA deployment.  VCSA Deployment Start Time:
2024-08-06T09:18:57.371Z VCSA Deployment End Time: 2024-08-06T09:47:03.177Z
 [SUCCEEDED] Successfully executed Task 'MonitorDeploymentTask: Monitoring
Deployment' in TaskFlow 'deploy-on-vcenter' at 09:47:27
Monitoring VCSA Deploy task completed
== [START] Start executing Task: Join active domain if necessary at 09:47:28 ==
Domain join task not applicable, skipping task
 [SUCCEEDED] Successfully executed Task 'Running deployment: Domain Join' in
TaskFlow 'deploy-on-vcenter' at 09:47:28
 [START] Start executing Task: Provide the login information about new
appliance. at 09:47:29
    Appliance Name: vcenter02
    System Name: 
    System IP: 192.168.32.56
    Log in as: Administrator@
 [SUCCEEDED] Successfully executed Task 'ApplianceLoginSummaryTask: Provide
appliance login information.' in TaskFlow 'deploy-on-vcenter' at 09:47:29
=================================== 09:47:30 ===================================
Result and Log File Information...
WorkFlow log directory:
C:\Users\JUNIOR~1\AppData\Local\Temp\vcsaCliInstaller-2024-08-06-09-06-42t35ek9\workflow_1722935200962

Log in to vCenter Server to view the deployment.

Deploying multiple vCenter Servers

The previous two scenarios are deploying vCenter Server to an ESXi host or to an existing vCenter Server. For the previous two scenarios, you may have the need to deploy multiple vCenter Server environments at the same time, so you can copy the embedded_vCSA_on_ESXi.json or the embedded_ vCSA_on_VC.json configuration file as multiple vCenter Server deployment configuration files, and then put these files in the same folder (such as deploy-multiple-vcenter), and specify this folder when deploying to deploy multiple vCenter Server environments at the same time.

If the JSON configuration file has been configured and placed in the same folder (e.g. deploy-multiple-vcenter), use the following command to perform a pre-deployment pre-check.

F:\vcsa-cli-installer\win32\ install .\files\deploy-multiple-vcenter\ --accept-eula --no-ssl-certificate-verification --precheck-only

If the JSON configuration file in the folder checks out fine with the deployment environment, use the following command to perform a formal deployment.

F:\vcsa-cli-installer\win32\ install .\files\deploy-multiple-vcenter\ --accept-eula --no-ssl-certificate-verification

IV. Deploying vCenter Server with Enhanced Link Mode

Enhanced Linked Mode (ELM) is the process of linking multiple vCenter Server instances in your environment together and joining them to the same SSO domain so that when you log in to any vCenter Server through the SSO administrator, you can see the other vCenter Servers that are linked at the same time. Server instances. You can view this (Use the cmsso-util command to link, delete, and modify multiple vCenter Server (VCSA) SSO domains.) article to learn more about Enhanced Link Mode vCenter Server related configurations.

Deploying a vCenter Server VM with Enhanced Linking Mode to an ESXi host requires the embedded_vCSA_replication_on_ESXi.json configuration file in the vCenter Server image file, which is modified to the information in the actual environment based on this configuration file, as shown in the following example:

{
    "__version": "2.13.0",
    "__comments": "Will have an enhanced linking model of the vCenter Server The virtual machine is deployed to the ESXi main unit",
    "new_vcsa": {
        "esxi": {
            "hostname": "192.168.32.51",
            "username": "root",
            "password": "vSphere8@password",
            "deployment_network": "VM Network",
            "datastore": "Datastore-01"
        },
        "appliance": {
            "__comments": [
                "vCenter Server Deployment parameters"
            ],
            "thin_disk_mode": true,
            "deployment_option": "tiny",
            "name": "vcenter03"
        },
        "network": {
            "ip_family": "ipv4",
            "mode": "static",
            "system_name": "",
            "ip": "192.168.32.57",
            "prefix": "24",
            "gateway": "192.168.32.254",
            "dns_servers": [
                "192.168.32.3"
            ]
        },
        "os": {
            "password": "vSphere8@password",
            "ntp_servers": "192.168.32.3",
            "ssh_enable": true
        },
        "sso": {
            "password": "vSphere8@password",
            "domain_name": "",
            "first_instance": false,
            "replication_partner_hostname": "",
            "sso_port": 443
        }
    },
    "ceip": {
        "description": {
            "__comments": [
                "++++VMware Customer Experience Improvement Program (CEIP)++++",
                "VMware's Customer Experience Improvement Program (CEIP) ",
                "provides VMware with information that enables VMware to ",
                "improve its products and services, to fix problems, ",
                "and to advise you on how best to deploy and use our ",
                "products. As part of CEIP, VMware collects technical ",
                "information about your organization's use of VMware ",
                "products and services on a regular basis in association ",
                "with your organization's VMware license key(s). This ",
                "information does not personally identify any individual. ",
                "",
                "Additional information regarding the data collected ",
                "through CEIP and the purposes for which it is used by ",
                "VMware is set forth in the Trust & Assurance Center at ",
                "/trustvmware/ . If you ",
                "prefer not to participate in VMware's CEIP for this ",
                "product, you should disable CEIP by setting ",
                "'ceip_enabled': false. You may join or leave VMware's ",
                "CEIP for this product at any time. Please confirm your ",
                "acknowledgement by passing in the parameter ",
                "--acknowledge-ceip in the command line.",
                "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
            ]
        },
        "settings": {
            "ceip_enabled": false
        }
    }
}

Save the configuration file as to the files folder and use the following command to perform a pre-deployment check.

F:\vcsa-cli-installer\win32\ install .\files\ --accept-eula --no-ssl-certificate-verification --precheck-only

If the JSON profile checks successfully with the deployment environment, output similar to the following is produced.

[SUCCEEDED] Successfully executed Task 'Precheck ovftool commandline parameters
to deploy a vCenter Server Appliance' in TaskFlow 'deploy-elm-on-esxi' at
09:42:46
=================================== 09:42:46 ===================================
Result and Log File Information...
WorkFlow log directory:
C:\Users\JUNIOR~1\AppData\Local\Temp\vcsaCliInstaller-2024-08-06-09-42-qzp_kn0v\workflow_1722937339642

If the JSON configuration file checks out fine with the deployment environment, use the following command to perform a formal deployment.

F:\vcsa-cli-installer\win32\ install .\files\ --accept-eula --no-ssl-certificate-verification

If the vCenter Server deployment is successful, output similar to the following.

Successfully completed VCSA deployment.  VCSA Deployment Start Time:
2024-08-06T09:52:23.624Z VCSA Deployment End Time: 2024-08-06T10:15:36.574Z
 [SUCCEEDED] Successfully executed Task 'MonitorDeploymentTask: Monitoring
Deployment' in TaskFlow 'deploy-elm-on-esxi' at 10:16:03
Monitoring VCSA Deploy task completed
== [START] Start executing Task: Join active domain if necessary at 10:16:04 ==
Domain join task not applicable, skipping task
 [SUCCEEDED] Successfully executed Task 'Running deployment: Domain Join' in
TaskFlow 'deploy-elm-on-esxi' at 10:16:04
 [START] Start executing Task: Provide the login information about new
appliance. at 10:16:05
    Appliance Name: vcenter03
    System Name: 
    System IP: 192.168.32.57
    Log in as: Administrator@
 [SUCCEEDED] Successfully executed Task 'ApplianceLoginSummaryTask: Provide
appliance login information.' in TaskFlow 'deploy-elm-on-esxi' at 10:16:05
=================================== 10:16:05 ===================================
Result and Log File Information...
WorkFlow log directory:
C:\Users\JUNIOR~1\AppData\Local\Temp\vcsaCliInstaller-2024-08-06-09-44-5l_hhkqk\workflow_1722937468472

Log in to vCenter Server to view the deployment.

To deploy a vCenter Server virtual machine with enhanced link mode to an existing vCenter Server, you need to use the embedded_vCSA_replication_on_VC.json configuration file in the vCenter Server image file, and according to this configuration file, modify it to the information in the actual environment. The following is an example:

{
    "__version": "2.13.0",
    "__comments": "Will have an enhanced linking model of the vCenter Server Virtual Machine Deployment to Existing vCenter Server first (of multiple parts)",
    "new_vcsa": {
        "vc": {
            "__comments": [
                "'datacenter' must end with a datacenter name, and only with a datacenter name.",
                "'target' must end with an ESXi hostname, a cluster name, or a resource pool name.",
                "The item 'Resources' must precede the resource pool name. ",
                "All names are case-sensitive. ",
                "For details and examples, refer to template help, . vcsa-deploy {install|upgrade|migrate} --template-help"
            ],
            "hostname": "",
            "username": "administrator@",
            "password": "vSphere8@password",
            "deployment_network": "VM Network",
            "datacenter": [
                "mulab"
            ],
            "datastore": "vsanDatastore",
            "target": [
			    "vsan8-hci-esa"
            ]
        },
        "appliance": {
            "__comments": [
                "vCenter Server Deployment parameters"
            ],
            "thin_disk_mode": true,
            "deployment_option": "tiny",
            "name": "vcenter04"
        },
        "network": {
            "ip_family": "ipv4",
            "mode": "static",
            "system_name": "",
            "ip": "192.168.32.58",
            "prefix": "24",
            "gateway": "192.168.32.254",
            "dns_servers": [
                "192.168.32.3"
            ]
        },
        "os": {
            "password": "vSphere8@password",
            "ntp_servers": "192.168.32.3",
            "ssh_enable": true
        },
        "sso": {
            "password": "vSphere8@password",
            "domain_name": "",
            "first_instance": false,
            "replication_partner_hostname": "",
            "sso_port": 443
        }
    },
    "ceip": {
        "description": {
            "__comments": [
                "++++VMware Customer Experience Improvement Program (CEIP)++++",
                "VMware's Customer Experience Improvement Program (CEIP) ",
                "provides VMware with information that enables VMware to ",
                "improve its products and services, to fix problems, ",
                "and to advise you on how best to deploy and use our ",
                "products. As part of CEIP, VMware collects technical ",
                "information about your organization's use of VMware ",
                "products and services on a regular basis in association ",
                "with your organization's VMware license key(s). This ",
                "information does not personally identify any individual. ",
                "",
                "Additional information regarding the data collected ",
                "through CEIP and the purposes for which it is used by ",
                "VMware is set forth in the Trust & Assurance Center at ",
                "/trustvmware/ . If you ",
                "prefer not to participate in VMware's CEIP for this ",
                "product, you should disable CEIP by setting ",
                "'ceip_enabled': false. You may join or leave VMware's ",
                "CEIP for this product at any time. Please confirm your ",
                "acknowledgement by passing in the parameter ",
                "--acknowledge-ceip in the command line.",
                "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
            ]
        },
        "settings": {
            "ceip_enabled": false
        }
    }
}

Save the configuration file as to the files folder and use the following command to perform a pre-deployment check.

F:\vcsa-cli-installer\win32\ install .\files\ --accept-eula --no-ssl-certificate-verification --precheck-only

If the JSON profile checks successfully with the deployment environment, output similar to the following is produced.

[SUCCEEDED] Successfully executed Task 'Precheck ovftool commandline parameters
to deploy a vCenter Server Appliance' in TaskFlow 'deploy-elm-on-vcenter' at
09:55:12
=================================== 09:55:13 ===================================
Result and Log File Information...
WorkFlow log directory:
C:\Users\JUNIOR~1\AppData\Local\Temp\vcsaCliInstaller-2024-08-06-09-54-lps7j7v1\workflow_1722938084996

If the JSON configuration file checks out fine with the deployment environment, use the following command to perform a formal deployment.

F:\vcsa-cli-installer\win32\ install .\files\ --accept-eula --no-ssl-certificate-verification

If the vCenter Server deployment is successful, output similar to the following.

[SUCCEEDED] Successfully executed Task 'MonitorDeploymentTask: Monitoring
Deployment' in TaskFlow 'deploy-elm-on-vcenter' at 10:35:50
Monitoring VCSA Deploy task completed
== [START] Start executing Task: Join active domain if necessary at 10:35:51 ==
Domain join task not applicable, skipping task
 [SUCCEEDED] Successfully executed Task 'Running deployment: Domain Join' in
TaskFlow 'deploy-elm-on-vcenter' at 10:35:51
 [START] Start executing Task: Provide the login information about new
appliance. at 10:35:52
    Appliance Name: vcenter04
    System Name: 
    System IP: 192.168.32.58
    Log in as: Administrator@
 [SUCCEEDED] Successfully executed Task 'ApplianceLoginSummaryTask: Provide
appliance login information.' in TaskFlow 'deploy-elm-on-vcenter' at 10:35:52
=================================== 10:35:52 ===================================
Result and Log File Information...
WorkFlow log directory:
C:\Users\JUNIOR~1\AppData\Local\Temp\vcsaCliInstaller-2024-08-06-09-56-8s9_eg18\workflow_1722938163017

Log in to vCenter Server to view the deployment.

When deploying a vCenter Server with Enhanced Linked Mode, it is likely that in most cases the first vCenter Server already exists in the environment, and then a second vCenter Server is deployed and linked to the first vCenter Server in the manner described above. In fact, if there is no first vCenter Server in the environment, you can also deploy the vCenter Server with enhanced linking mode at the same time, for example, the configuration file is used for deploying the first vCenter Server, and the configuration file is used for deploying the second vCenter Server with enhanced linking mode. The two JSON configuration files are placed in the same folder, and the folder is specified at the time of deployment, so that after the first vCenter Server is deployed by the CLI, the second vCenter Server is automatically linked to the first vCenter Server when it is deployed.

V. Deploying vCenter Server Virtual Machines to ESXi Hosts and Configuring a Single-Node vSAN ESA Cluster

For users who are initially building a vSphere environment, it is possible that after the ESXi hosts are installed and deployed, they may want to apply the ESXi hosts directly to the vSAN environment, while at the same time wanting to use the vSAN storage for hosting the vCenter Server. if you are using the scenarios described above, the prerequisite for deploying the vCenter Server is that you must have local/shared storage in the environment that is used to house the vCenter Server. However, VMware provides a way to directly convert the initial ESXi host into the first host of a vSAN cluster before deploying vCenter Server, so that after configuring it as a single-node vSAN cluster, the configured vSAN storage is used to host the vCenter Server virtual machines. storage used by the vCenter Server virtual machines. If this is the case, there is no need to separately configure the local/shared storage of the ESXi hosts for vCenter Server deployment first, which is the approach used by many VMware solutions, such as VMware Cloud Foundation.

To deploy a vCenter Server virtual machine to an ESXi host and configure a single-node vSAN ESA cluster, you need to use the vCSA_with_cluster_on_ESXi.json configuration file in the vCenter Server image file, and modify it to the information in the actual environment based on this configuration file, as exemplified below:

{
    "__version": "2.13.0",
    "__comments": "commander-in-chief (military) vCenter Server The virtual machine is deployed to the ESXi on the host and configure a single node vSAN ESA clustering",
    "new_vcsa": {
        "esxi": {
            "hostname": "",
            "username": "root",
            "password": "vSphere8@password",
            "deployment_network": "VM Network",
            "VCSA_cluster": {
                "__comments": [
                    "Optional section. You must provide this option if you want to create the vSAN bootstrap cluster"
                ],
                "datacenter": "datacenter",
                "cluster": "vsan-esa",
                "compression_only": false,
                "deduplication_and_compression": false,
                "enable_vlcm": true,
                "enable_vsan_esa": true,
                "storage_pool": {
                    "single_tier": [
                        "0654f79de904b1744a000c29669162b236",
                        "063ec1878a6b90d657000c296a1c16f648"
                    ]
                },
                "vsan_hcl_database_path": ""
            }
        },
        "appliance": {
            "__comments": [
                "vCenter Server Deployment parameters"
            ],
            "thin_disk_mode": true,
            "deployment_option": "small",
            "name": "vcenter"
        },
        "network": {
            "ip_family": "ipv4",
            "mode": "static",
            "ip": "192.168.32.50",
            "dns_servers": [
                "192.168.32.3"
            ],
            "prefix": "24",
            "gateway": "192.168.32.254",
            "system_name": ""
        },
        "os": {
            "password": "vSphere8@password",
            "ntp_servers": "192.168.32.3",
            "ssh_enable": true
        },
        "sso": {
            "password": "vSphere8@password",
            "domain_name": ""
        }
    },
    "ceip": {
        "description": {
            "__comments": [
                "++++VMware Customer Experience Improvement Program (CEIP)++++",
                "VMware's Customer Experience Improvement Program (CEIP) ",
                "provides VMware with information that enables VMware to ",
                "improve its products and services, to fix problems, ",
                "and to advise you on how best to deploy and use our ",
                "products. As part of CEIP, VMware collects technical ",
                "information about your organization's use of VMware ",
                "products and services on a regular basis in association ",
                "with your organization's VMware license key(s). This ",
                "information does not personally identify any individual. ",
                "",
                "Additional information regarding the data collected ",
                "through CEIP and the purposes for which it is used by ",
                "VMware is set forth in the Trust & Assurance Center at ",
                "/trustvmware/ . If you ",
                "prefer not to participate in VMware's CEIP for this ",
                "product, you should disable CEIP by setting ",
                "'ceip_enabled': false. You may join or leave VMware's ",
                "CEIP for this product at any time. Please confirm your ",
                "acknowledgement by passing in the parameter ",
                "--acknowledge-ceip in the command line.",
                "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
            ]
        },
        "settings": {
            "ceip_enabled": false
        }
    }
}

JSON profile information about the hard disks used by the ESXi host for the vSAN storage pool is available in the following figure. Note that since you are deploying a vSAN ESA environment, you need toDownload the vSAN HCL fileThe current deployment environment places the vSAN HCL file in the current directory (C:\Users\JUNIOR_MU\) where the CLI commands are run.

Save the configuration file as to the files folder and use the following command to perform a pre-deployment check.

F:\vcsa-cli-installer\win32\ install .\files\ --accept-eula --no-ssl-certificate-verification --precheck-only

If the JSON profile checks successfully with the deployment environment, output similar to the following is produced.

[SUCCEEDED] Successfully executed Task 'Running Pre-check: vSAN Cluster Health
Checks.' in TaskFlow 'install' at 10:53:30
Running Pre-check: vSphere vLCM Cluster Enablement.
 [START] Start executing Task: Running Pre-check for vSphere vLCM Cluster
Enablement. at 10:53:30
 [SUCCEEDED] Successfully executed Task 'Running Pre-check: vSphere vLCM Cluster
Enablement.' in TaskFlow 'install' at 10:53:30
 [SUCCEEDED] Successfully executed Task 'PrecheckTask: Running prechecks.' in
TaskFlow 'deploy-on-esxi-with-vsan-esa' at 10:53:30
vcsa-deploy execution successfully completed, workflow log dir:
C:\Users\JUNIOR~1\AppData\Local\Temp\vcsaCliInstaller-2024-08-06-10-52-j1nef3kt\workflow_1722941536363
=================================== 10:53:31 ===================================
Result and Log File Information...
WorkFlow log directory:
C:\Users\JUNIOR~1\AppData\Local\Temp\vcsaCliInstaller-2024-08-06-10-52-j1nef3kt\workflow_1722941536363

If the JSON configuration file checks out fine with the deployment environment, use the following command to perform a formal deployment.

F:\vcsa-cli-installer\win32\ install .\files\ --accept-eula --no-ssl-certificate-verification

If the vCenter Server deployment is successful, output similar to the following.

Successfully completed VCSA deployment.  VCSA Deployment Start Time:
2024-08-06T11:12:39.139Z VCSA Deployment End Time: 2024-08-06T11:31:05.857Z
 [SUCCEEDED] Successfully executed Task 'MonitorDeploymentTask: Monitoring
Deployment' in TaskFlow 'deploy-on-esxi-with-vsan-esa' at 11:31:19
Monitoring VCSA Deploy task completed
== [START] Start executing Task: Join active domain if necessary at 11:31:20 ==
Domain join task not applicable, skipping task
 [SUCCEEDED] Successfully executed Task 'Running deployment: Domain Join' in
TaskFlow 'deploy-on-esxi-with-vsan-esa' at 11:31:20
==== [START] Start executing Task: Creating the new datacenter. at 11:31:21 ====
The certificate of server '' will not be verified because you
have provided either the '--no-ssl-certificate-verification' or
'--no-esx-ssl-verify' command parameter, which disables verification for all
certificates. Remove this parameter from the command line if you want server
certificates to be verified.
 [SUCCEEDED] Successfully executed Task 'Running Datacenter Creation: Creating
the new datacenter for vSphere vLCM managed cluster.' in TaskFlow
'deploy-on-esxi-with-vsan-esa' at 11:31:23
 [START] Start executing Task: Creating vSphere vLCM managed cluster. at
11:31:24
Enabling vLCM Cluster creation task on 
Running ExecuteClusterHostSeedingWorkflow...
 [SUCCEEDED] Successfully executed Task 'Running vSphere vLCM: Creating vSphere
vLCM managed cluster.' in TaskFlow 'deploy-on-esxi-with-vsan-esa' at 11:35:44
 [START] Start executing Task: Provide the login information about new
appliance. at 11:35:45
    Appliance Name: vcenter
    System Name: 
    System IP: 192.168.32.50
    Log in as: Administrator@
Your vCenter Server Appliance is deployed on a vSAN cluster. However this
one-host cluster must be further configured in order to provide the full
benefits of a vSAN cluster.
vSAN Configuration Instructions
1.       Add additional hosts to the vSAN cluster (a minimum of two).
2.       Complete the required configuration of the vSAN cluster.
3.       Apply the correct VM Storage Policy to the vCenter Server Appliance.
 [SUCCEEDED] Successfully executed Task 'ApplianceLoginSummaryTask: Provide
appliance login information.' in TaskFlow 'deploy-on-esxi-with-vsan-esa' at
11:35:45
=================================== 11:35:46 ===================================
Result and Log File Information...
WorkFlow log directory:
C:\Users\JUNIOR~1\AppData\Local\Temp\vcsaCliInstaller-2024-08-06-11-00-u9zayc8j\workflow_1722942009531

Log in to vCenter Server to view the deployment.

Currently a single node vSAN cluster, additional ESXi hosts are required to meet the vSAN cluster minimum host requirement (3).

vSAN storage capacity and the current default storage policy configuration.

vSAN ESA cluster ESXi host disk configuration.

vSAN ESA cluster ESXi host network configuration, you need to add the vmkernel network card configured for vSAN traffic.

After you have configured a complete vSAN cluster, adjust the policy for vCenter Server to the vSAN storage policy.