Deploy a Virtual Container Host to an ESXi Host with No vCenter Server
This topic provides instruction for using vic-machine
to deploy a virtual container host (VCH) to an ESXi host that is not managed by vCenter Server. This is the most straightforward way to deploy a VCH, and is ideal for testing.
The ESXi host to which you deploy the VCH must match the specifications listed in the prerequisites. This example vic-machine create
command deploys a VCH by using the minimum vic-machine create
options possible, for demonstration purposes.
Prerequisites
- Deploy the vSphere Integrated Containers appliance. For information about deploying the appliance, see Deploy the vSphere Integrated Containers Appliance.
- Download the vSphere Integrated Containers Engine bundle from the appliance and unpack it on your usual working machine. For information about how to download the bundle, see Download the vSphere Integrated Containers Engine Bundle.
- Create or obtain an ESXi host with the following configuration:
- One datastore
- The VM Network is present
- You can use a nested ESXi host for this example
Verify that the ESXi host meets the requirements in Environment Prerequisites for VCH Deployment.
IMPORTANT: Pay particular attention to the Networking Requirements for VCH Deployment.
- Make sure that the correct firewall port is open on the ESXi host. For information about how to open ports on ESXi hosts, see Open the Required Ports on ESXi Hosts.
- Obtain the ESXi host certificate thumbprint. For information about how to obtain the certificate thumbprint, see Obtain vSphere Certificate Thumbprints.
- Familiarize yourself with the vSphere Integrated Containers Engine binaries, as described in Download the vSphere Integrated Containers Engine Bundle.
- Familiarize yourself with the basic options of the
vic-machine create
command described in Using thevic-machine
CLI Utility.
Procedure
- Open a terminal on the system on which you downloaded and unpacked the vSphere Integrated Containers Engine binary bundle.
- Navigate to the directory that contains the
vic-machine
utility: Run the
vic-machine create
command.In these examples, the password is wrapped in quotes because it contains
@
.- Linux OS:
$ vic-machine-linux create --target esxi_host_address --user root --password 'esxi_host_p@ssword' --no-tlsverify --thumbprint esxi_certificate_thumbprint
- Windows:
$ vic-machine-windows create --target esxi_host_address --user root --password "esxi_host_p@ssword" --no-tlsverify --thumbprint esxi_certificate_thumbprint
- Mac OS:
$ vic-machine-darwin create --target esxi_host_address --user root --password 'esxi_host_p@ssword' --no-tlsverify --thumbprint esxi_certificate_thumbprint
- Linux OS:
The vic-machine create
command in this example specifies the minimum information required to deploy a VCH to an ESXi host:
- The address of the ESXi host on which to deploy the VCH, in the
--target
option. - The ESXi host
root
user and password in the--user
and--password
options. - For simplicity, disables the verification of client certificates by specifying the
--no-tlsverify
option. - Specifies the thumbprint of the ESXi host certificate by specifying the
--thumbprint
option.
Because the ESXi host only has only one datastore and uses the VM Network network, vic-machine create
automatically detects and uses those resources.
When deploying to an ESXi host, vic-machine create
creates a standard virtual switch and a port group for use as the container bridge network, so you do not need to specify any network options if you do not have specific network requirements.
This example vic-machine create
command deploys a VCH with the default name virtual-container-host
.
Result
At the end of a successful deployment, vic-machine
displays information about the new VCH:
Initialization of appliance successful VCH Admin Portal: https://vch_address:2378 Published ports can be reached at: vch_address Docker environment variables: DOCKER_HOST=vch_address:2376 Environment saved in virtual-container-host/virtual-container-host.env Connect to docker: docker -H vch_address:2376 --tls info Installer completed successfully
What to Do Next
To test your VCH, see Verify the Deployment of a VCH.