For the complete documentation index, see llms.txt. This page is also available as Markdown.

Toggle the NIC Multi-Queue Property

You can use the DCD or IONOS CLOUD API to turn NIC Multi-Queue on or off for a Virtual Machine (VM).

Set the nicMultiQueue property to one of the following values:

  • true to turn on the feature.

  • false to turn off the feature.

Note:

  • Automatic VM Restart: Setting NIC Multi-Queue on triggers an automatic VM restart to apply the configuration changes.

  • Hot-Plug NIC Support: You can add network interfaces to a running VM without system restart or downtime. For optimal performance, new NICs automatically default to number queues that match the number of provisioned CPU threads.

  • Scaling Queue Count: When adding CPU threads to leverage increased parallelism, the queue count must be updated through a VM restart:

    • Restart the VM using the Cloud API or the Data Center Designer (DCD).

    • An Operating System (OS)-level restart is insufficient and will not update the queue configuration. Queue count changes require a platform-initiated restart to reload the NIC driver with the updated configuration.

Endpoint

Use the following endpoint to turn on NIC Multi-Queue for your VM: https://api.ionos.com/cloudapi/v6/datacenters/{datacenterId}/servers/{server-uuid}.

Note: Remember to update the datacenterId and the server-uuid with their relevant values.

Request

curl --location \
--request PATCH 'https://api.ionos.com/cloudapi/v6/datacenters/fd16-e4-44-b9-daaaaah75/servers/15f67991-0f51-4efc-a8ad-ef1fb31a480c' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJraWQiO' \
--header 'Content-Type: application/json' \
--data-raw '{
"nicMultiQueue": true
}'

Remember to update the datacenterId value with your data center's ID:

Path Parameter

Type

Description

Example

datacenterId

string

The ID (UUID) of the data center.

fd16-e4-44-b9-daaaaah75

Below is the list of mandatory body parameters required to update the status of an NIC Multi-Queue ready VM:

Body Parameters

Required

Type

Description

Example

metadata

no

object

Metadata

{}

properties.name

yes

string

The name of the resource.

My resource

properties.hostname

yes

string

The hostname of the resource. Allowed characters are a-z, 0-9, and - (minus). Hostname should not start with minus and should not be longer than 63 characters.

Tunnel connecting site A to site B.

properties.cores

yes

integer

The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.

203.0.113.1

properties.ram

yes

integer

The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.

4096

properties.availabilityZone

yes

string. Enum: AUTO ZONE_1 ZONE_2

The availability zone in which the server should be provisioned.

AUTO

properties.cpuFamily

yes

string

CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected.

INTEL_ICELAKE

properties.type

yes

string. Server type: ENTERPRISE or VCPU.

ENTERPRISE

properties.nicMultiQueue

yes

boolean

Turn the NIC Multi-Queue feature on or off for all NICs of this server. This feature is beneficial when the NICs are experiencing performance issues, such as, low throughput. Toggling this feature will also initiate a restart of the server. If set to true, the feature turns on. If set to false, the feature turns off.

true

To make authenticated requests to the API, the following fields are mandatory in the request header:

Header Parameters

Required

Type

Description

Authorization

yes

string

The Bearer token to allow requests to authenticate using a JSON Web Token (JWT).

Content-Type

yes

string

Set this to application/json.

Response

201 Successful operation

Last updated

Was this helpful?