The Edge Compute Stack host can also be deployed directly from a pre-created virtual machine packaged in an OVA. This section provides steps for automated deployment of the host using an OVA file and a shell script.
The key differences between an ISO manual deployment and an OVA automated deployment using a shell script are as follows:
This method uses an OVA package instead of the Edge Compute Stack installer media. The entire Edge Compute Stack host install phase is skipped using the sizing of the virtual machine baked in the OVA package.
The Edge Compute Stack configuration input is provided directly through YAML files instead of ks.cfg kickstart document.
Prerequisites
Download the Edge Compute Stack host OVA with the deployment script and sample YAML input files on the machine from which the vCenter or ESXi API endpoint is accessible.
A vSphere/ESXi user must have OVA/VM deployment privileges.
The GOVC command line utility is required by the script.
Procedure
- Launch a command line and change the folder to where you downloaded the install script and OVA file.
- Optionaly, modify ec_firstboot.yaml sample to specify GitOps configuration and Kubernetes workloads to be run, in addition to or in absence of GitOps provided workload. This mode is useful for quick deployment verification and demo purpose.
- Invoke the deployment script with the following command line options:
USAGE:
deploy_ecova.sh [-v esx|fusion|ws ] -o ec.ova -m vm_name [-f ec_firstboot.yaml]
Deploys Edge Compute Host .ova as a VM to a hypervisor, e.g. ESXi (directly or
through vCenter Server).
WARNING: This is a developer productivity helper tool. It is unsuitable for
production purpose (due to trade-offs that weaken security).
Common args:
-v : Hypervisor type, 'esx' or 'fusion' or 'ws'.
-o : Edge Compute Host .ova file path.
-m : Edge Compute Host VM name to import ova as.
-r : Edge Compute Host VM root password (optional).
-f : Edge Compute firstboot yaml file path (optional).
-s : Edge Compute Stack Saas Service URL (optional).
-h : Print usage of this tool.
Hypervisor specific args:
-v esx
-l : vSphere (ESXi/VC) API endpoint URL (e.g. https://hostname_or_ip/sdk ).
-k : Ignore certificate error for connecting to ESXi API endpoint (optional).
-u : ESXi/VC account username.
-p : ESXi/VC account password.
-n : ESXi/VC network name (e.g 'VM Network' ).
-d : ESXi/VC datastore name (e.g. 'datastore1' ).
-y : ESXi host to deploy onto (e.g. 'myesxhost.myorg.com' ).
-z : VC datacenter name
-v fusion|ws
-t Virtual Machine library directory (under which to store imported .ova VM)
Example: Deploy to a Datacenter in Virtual Center
./deploy_ecova.sh -v esx -o ./ecs-3.5.0-20240617-24036327-boot2live.ova -m ecshost01 -r 'pa$$w0rd01' -l 'https://192.168.4.200/sdk' -k -u '[email protected]' -p 'MyVCPa$$01' -d 'datastore1' -n 'VM Network' -z 'Home'
[02-05-24 19:50:26] Uploading ecs-3.5.0-20240617-24036327-boot2live-disk1.vmdk... OK
[02-05-24 20:23:37] Uploading ecs-3.5.0-20240617-24036327-boot2live.iso... OK
Powering on VirtualMachine:vm-2003... OK
SUCCESS: Imported and powered on 'ecshost01' VM on https://192.168.4.200/sdk