ENA 队列数 - Amazon Elastic Compute Cloud

ENA 队列数

ENA 队列分配给网络接口,其默认静态限制取决于实例类型和大小。在受支持的实例类型上,您可以跨弹性网络接口(ENI)动态分配这些队列。虽然每个实例的队列总数取决于其类型和大小,但可以使用 ENA 队列配置多个 ENI,直到满足 ENI 和实例的最大队列数为止。

灵活分配 ENA 队列有助于优化资源分配,从而尽可能提高 vCPU 利用率。需要高网络性能的工作负载通常需要使用多个 ENA 队列。您可以根据特定的工作负载调整微调队列数,从而微调网络性能和每秒数据包数(PPS)。例如,网络密集型应用程序需要使用的队列数可能会多于 CPU 密集型应用程序。

支持的实例

以下实例支持动态分配多个 ENA 队列。

通用型

实例类型 每个接口的默认 ENA 队列 每个接口的最大 ENA 队列数 每个实例的最大 ENA 队列数
M6i
m6i.large 2 2 6
m6i.xlarge 4 4 16
m6i.2xlarge 8 8 32
m6i.4xlarge 8 16 64
m6i.8xlarge 8 32 64
m6i.12xlarge 8 32 64
m6i.16xlarge 8 32 120
m6i.24xlarge 8 32 120
m6i.32xlarge 8 32 120
M6id
m6id.large 2 2 6
m6id.xlarge 4 4 16
m6id.2xlarge 8 8 32
m6id.4xlarge 8 16 64
m6id.8xlarge 8 32 64
m6id.12xlarge 8 32 64
m6id.16xlarge 8 32 120
m6id.24xlarge 8 32 120
m6id.32xlarge 8 32 120
M6idn
m6idn.large 2 2 6
m6idn.xlarge 4 4 16
m6idn.2xlarge 8 8 32
m6idn.4xlarge 8 16 64
m6idn.8xlarge 16 32 128
m6idn.12xlarge 16 32 128
m6idn.16xlarge 16 32 240
m6idn.24xlarge 32 32 480
m6idn.32xlarge 32 32 256
M6in
m6in.large 2 2 6
m6in.xlarge 4 4 16
m6in.2xlarge 8 8 32
m6in.4xlarge 8 16 64
m6in.8xlarge 16 32 128
m6in.12xlarge 16 32 128
m6in.16xlarge 16 32 240
m6in.24xlarge 32 32 480
m6in.32xlarge 32 32 256
M8i
m8i.large 2 2 6
m8i.xlarge 4 4 16
m8i.2xlarge 8 8 32
m8i.4xlarge 8 16 64
m8i.8xlarge 8 32 128
m8i.12xlarge 16 64 192
m8i.16xlarge 16 64 256
m8i.24xlarge 16 128 384
m8i.32xlarge 16 128 512
m8i.48xlarge 32 128 768
m8i.96xlarge 32 128 1536
M8i-flex
m8i-flex.large 1 1 3
m8i-flex.xlarge 2 2 8
m8i-flex.2xlarge 4 4 16
m8i-flex.4xlarge 4 8 32
m8i-flex.8xlarge 4 16 64
m8i-flex.12xlarge 8 32 96
m8i-flex.16xlarge 8 32 128

计算优化型

实例类型 每个接口的默认 ENA 队列 每个接口的最大 ENA 队列数 每个实例的最大 ENA 队列数
C6i
c6i.large 2 2 6
c6i.xlarge 4 4 16
c6i.2xlarge 8 8 32
c6i.4xlarge 8 16 64
c6i.8xlarge 8 32 64
c6i.12xlarge 8 32 64
c6i.16xlarge 8 32 120
c6i.24xlarge 8 32 120
c6i.32xlarge 8 32 120
C6id
c6id.large 2 2 6
c6id.xlarge 4 4 16
c6id.2xlarge 8 8 32
c6id.4xlarge 8 16 64
c6id.8xlarge 8 32 64
c6id.12xlarge 8 32 64
c6id.16xlarge 8 32 120
c6id.24xlarge 8 32 120
c6id.32xlarge 8 32 120
C6in
c6in.large 2 2 6
c6in.xlarge 4 4 16
c6in.2xlarge 8 8 32
c6in.4xlarge 8 16 64
c6in.8xlarge 16 32 128
c6in.12xlarge 16 32 128
c6in.16xlarge 16 32 240
c6in.24xlarge 32 32 480
c6in.32xlarge 32 32 256
C8gn
c8gn.medium 1 1 2
c8gn.large 2 2 6
c8gn.xlarge 4 4 16
c8gn.2xlarge 8 8 32
c8gn.4xlarge 8 16 64
c8gn.8xlarge 8 32 128
c8gn.12xlarge 16 64 192
c8gn.16xlarge 16 64 256
c8gn.24xlarge 16 128 384
c8gn.48xlarge 32 128 384

内存优化型

实例类型 每个接口的默认 ENA 队列 每个接口的最大 ENA 队列数 每个实例的最大 ENA 队列数
R6i
r6i.large 2 2 6
r6i.xlarge 4 4 16
r6i.2xlarge 8 8 32
r6i.4xlarge 8 16 64
r6i.8xlarge 8 32 64
r6i.12xlarge 8 32 64
r6i.16xlarge 8 32 120
r6i.24xlarge 8 32 120
r6i.32xlarge 8 32 120
R6idn
r6idn.large 2 2 6
r6idn.xlarge 4 4 16
r6idn.2xlarge 8 8 32
r6idn.4xlarge 8 16 64
r6idn.8xlarge 16 32 128
r6idn.12xlarge 16 32 128
r6idn.16xlarge 16 32 240
r6idn.24xlarge 32 32 480
r6idn.32xlarge 32 32 256
R6in
r6in.large 2 2 6
r6in.xlarge 4 4 16
r6in.2xlarge 8 8 32
r6in.4xlarge 8 16 64
r6in.8xlarge 16 32 128
r6in.12xlarge 16 32 128
r6in.16xlarge 16 32 240
r6in.24xlarge 32 32 480
r6in.32xlarge 32 32 256
R6id
r6id.large 2 2 6
r6id.xlarge 4 4 16
r6id.2xlarge 8 8 32
r6id.4xlarge 8 16 64
r6id.8xlarge 8 32 64
r6id.12xlarge 8 32 64
r6id.16xlarge 8 32 120
r6id.24xlarge 8 32 120
r6id.32xlarge 8 32 120
R8i
r8i.large 2 2 6
r8i.xlarge 4 4 16
r8i.2xlarge 8 8 32
r8i.4xlarge 8 16 64
r8i.8xlarge 8 32 128
r8i.12xlarge 16 64 192
r8i.16xlarge 16 64 256
r8i.24xlarge 16 128 384
r8i.32xlarge 16 128 512
r8i.48xlarge 32 128 768
r8i.96xlarge 32 128 1536
r8i-flex
r8i-flex.large 1 1 3
r8i-flex.xlarge 2 2 8
r8i-flex.2xlarge 4 4 16
r8i-flex.4xlarge 4 8 32
r8i-flex.8xlarge 4 16 64
r8i-flex.12xlarge 8 32 96
r8i-flex.16xlarge 8 32 128

修改队列数

您可以使用 AWS Management Console或 AWS CLI 修改 ENA 队列数。在 AWS Management Console中,ENA 队列配置位于每个网络接口的设置下。

要使用 AWS CLI 修改 ENA 队列数,请使用以下任一命令。在修改队列数之前,请使用以下命令检查您当前的队列数。

aws ec2 describe-instances --instance-id i-1234567890abcdef0
注意
  • 必须停止实例后才能修改 ENA 队列数。

  • ENA 队列的值必须是 2 的乘方,例如 1、2、4、8、16、32 等。

  • 分配给任何单个 ENI 的队列数不能超过实例上可用的 vCPU 数。

attach-network-interface

以下示例在一个 ENI 上配置了 32 个 ENA 队列。

aws ec2 attach-network-interface \ --network-interface-id eni-001aa1bb223cdd4e4 \ --instance-id i-1234567890abcdef0 \ --device-index 1 \ --ena-queue-count 32

run-instances

以下示例有 3 个 ENI,每个均配置了 2 个 ENA 队列。

aws ec2 run-instances \ --image-id ami-12ab3c30 \ --instance-type c6i.large \ --min-count 1 \ --max-count 1 \ --network-interfaces \ "[{\"DeviceIndex\":0,\"SubnetId\":\"subnet-123456789012a345a\",\"EnaQueueCount\":2}, {\"DeviceIndex\":1,\"SubnetId\":\"subnet-123456789012a345a\",\"EnaQueueCount\":2}, {\"DeviceIndex\":2,\"SubnetId\":\"subnet-123456789012a345a\",\"EnaQueueCount\":2}]"

modify-network-interface-attribute

以下示例在一个 ENI 上配置了 32 个 ENA 队列。

aws ec2 modify-network-interface-attribute \ --network-interface-id eni-1234567890abcdef0 \ --attachment AttachmentId=eni-attach-12345678,EnaQueueCount=32

以下示例将 ENA 数重置为默认值。

aws ec2 modify-network-interface-attribute \ --network-interface-id eni-1234567890abcdef0 \ --attachment AttachmentId=eni-attach-12345678,DefaultEnaQueueCount=true