NSX Data Center for vSphere uses vSphere resource allocation to reserve resources for NSX Edge appliances. Reserving CPU and memory resources for NSX Edge ensures that the appliance has enough resources to function correctly.
There are three methods of resource reservation: System Managed, Custom, or No Reservation
System Managed Resource Reservation
If you select System Managed, the system reserves CPU and memory resources for the new NSX Edge appliance. The reserved resources are equal to the system requirements for the appliance size, modified by any percentages that are specified using the tuning configuration API.
When you install, upgrade, or redeploy an NSX Edge instance, the associated NSX Edge appliances are deployed. If an appliance has System Managed resource reservation, the reservation is applied on the resource pool after the appliance is powered on. If there are insufficient resources, the reservation fails and generates a system event, but the appliance deployment succeeds. The reservation is attempted the next time the appliance is deployed (during upgrade or redeploy).
With System Managed resource reservations, if you change the appliance size, the system updates the resource reservation to match the system requirements of the new appliance size.
Custom Resource Reservation
If you select Custom, you determine the resource reservations for the NSX Edge appliance.
When you install, upgrade, or redeploy an NSX Edge, the associated NSX Edge appliances are deployed. If an appliance has Custom resource reservation, the reservation is applied on the resource pool before the appliance is powered on. If there are insufficient resources, the appliance fails to power on and the appliance deployment fails.
You can apply Custom reservations to an existing NSX Edge appliance. If the resource pool does not have sufficient resources, the configuration change fails.
With Custom resource reservations, the system does not manage resource reservations for the appliance. If you change the appliance size, the appliance system requirements change, but the system does not update the resource reservation. You should change the resource reservation to reflect the system requirements of the new appliance size.
No Resource Reservation
If you select No reservation, no resources are reserved for the NSX Edge appliance. You can deploy NSX Edge appliances on hosts that do not have sufficient resources, but if there is a resource contention the appliances might not operate correctly.
Configuring NSX Edge Appliance Resource Reservations
You set the resource reservation during the creation of an NSX Edge appliance. You can also update the reservation on an existing NSX Edge appliance. You can use the vSphere Web Client or the API for these tasks. See the NSX API Guide for more information about using the API.
Operation | vSphere Web Client | API |
---|---|---|
Create a new NSX Edge | Navigate to Add. The wizard guides you through the steps of creating an NSX Edge. You can add an NSX Edge appliance in the Configure Deployment step. You select the reservation method from the Resource Reservation drop-down menu. | and clickUse POST /api/4.0/edges |
Update an existing NSX Edge | Navigate to Resource Reservation. | and edit the appliance VM to select a different value forUse PUT /api/4.0/edges/{edgeId}/appliances |
cpuReservation > reservation
and
memoryReservation > reservation
parameters to configure the
NSX Edge Appliance Resource Reservation using the API.
Resource Reservation Method | Values for Reservation Parameters |
---|---|
System Managed | Do not specifiy values for cpuReservation > reservation and memoryReservation > reservation . |
Custom | Specify the values you want in cpuReservation > reservation and memoryReservation > reservation . |
No Reservation | Set cpuReservation > reservation and memoryReservation > reservation to 0 . |
The system requirements for NSX Edge appliances depend on the appliance size: Compact, Large, Quad Large, or X-Large. These values are used for the default System Managed resource reservation.
Appliance Size | CPU Reservation | Memory Reservation |
---|---|---|
Compact | 1000 MHz | 512 MB |
Large | 2000 MHz | 1 GB |
Quad Large | 4000 MHz | 2 GB |
X-Large | 6000 MHz | 8 GB |
Modifying the System Managed Resource Reservation Using Tuning Configuration
When facing lack of resources, you can temporarily disable the System Managed resource reservations or decrease the default value. You can change the reservation percentage by configuring values for the edgeVCpuReservationPercentage
and edgeMemoryReservationPercentage
parameters in the tuning configuration API, PUT /api/4.0/edgePublish/tuningConfiguration
. The default value for both parameters is 100
. This change affects new NSX Edge appliance deployments, but not existing appliances. The percentages modify the default CPU and memory reserved for the relevant NSX Edge appliance size. To disable the resource reservation, set the values to 0. See the NSX API Guide for details.
Changing Resource Reservation Method from Custom or No Reservation to System Managed
If you are using NSX 6.4.3 or earlier, and you select Custom or No Reservation reservations for an NSX Edge appliance, you cannot switch back to System Managed reservations.
Starting in NSX 6.4.4 you can use the API to switch back to System Managed reservations using POST /api/4.0/edges/{edgeId}/appliances?action=applySystemResourceReservation
. See the NSX API Guide for details.
Starting in NSX 6.4.6, you can use the vSphere Web Client to edit the NSX Edge appliance VM and switch back to System Managed reservations.