A YAML configuration file can be used as part of your desired state repository to configure the resources made available to the default worker node used for Kubernetes workloads.

  • Currently, only memory and CPU resources can be adjusted for the worker node VM.

  • If there is no worker VM desired state available in the repository, default sizes are used.

  • If there is no worker VM desired state expressed in GitOps, it is merged or it overrides the default sizes.

  • After the worker VM is created and it boots up, changes to desired state are not applied to it until the next ESXi reboot.

Example Default Worker Node Manifest File

In the following example, we change the number of CPUs to 4 and the Memory to 8 Gi:

apiVersion: vmoperator.vmware.com/v1alpha1
kind: VirtualMachineClass
metadata:
  name: best-effort-keswick-small
  # No resource requests/reservations.
  # Memory overcommit possible.
spec:
  # VM operator controller name for VirtualMachine class
  # is different so addition of controllerName attr with invalid
  # value makes vm operator ignore this VM CRD instance.
  # This is majorly done because vm operator doesn't have all the
  # needed capabilities to deploy VMware Edge Cloud Orchestrator worker vm.
  controllerName: vmoperator.vmware.com/keswickworker
  hardware:
    cpus: 4
    memory: 8Gi
---
apiVersion: v1
kind: Namespace
metadata:
  name: keswick-system
---
apiVersion: vmoperator.vmware.com/v1alpha1
kind: VirtualMachine
metadata:
  name: keswick-worker
  namespace: keswick-system
spec:
  className: best-effort-keswick-small
  imageName: keswick-wrkr.ova
  powerState: poweredOff
  vmMetadata:
    transport: CloudInit

Replacing the Default Photon Worker Node

A default Photon image is provided, which includes multiple device drivers to enable use cases that require USB pass-through of devices attached to the edge hosts. Custom worker node images can be created and used to replace the existing keswick-wrkr.ova file provided.

To customize your worker node image, follow the steps outlined in the preceding example and replace the keswick-wrkr.ova file on the root of the USB/Customized ISO with exactly the same file name.