

























多队列是指网络接口卡具有在多个发送和接收队列上并行处理网络数据包的能力。在使用网卡多队列时,通常需要配置网络中断亲和性(IRQ Affinity),将不同的队列中断分配给特定的CPU处理,而不是由任意的CPU处理,这有助于减少CPU之间的争用并提高网络性能。本文介绍如何配置Linux系统的网卡多队列的网络中断亲和性和修改网卡多队列数。
下述操作以Red Hat 9.2镜像系统为例,介绍如何通过ecs_mq脚本自动配置网卡多队列的网络中断亲和性。如果您的系统镜像并非Red Hat Enterprise Linux,已默认开启,则无需再配置。
ecs_mq脚本会和irqbalance产生冲突,建议关闭irqbalance服务。systemctl stop irqbalance.service
ecs_mq。wget https://ecs-image-tools.oss-cn-hangzhou.aliyuncs.com/ecs_mq/ecs_mq_2.0.tgz
最新版ecs_mq修复的问题
4. 执行以下命令,解压ecs_mq脚本。
ecs_mq脚本。说明 请您根据实际环境替换命令中的 redhat 和 9为您自己的
<操作系统名称>和<操作系统主版本号>。
ecs_mq脚本。启动脚本后,系统自动启动网络中断亲和性。
根据返回结果查看是否支持网卡多队列:
sudo ethtool -L eth0 combined N,其中N是您希望设置的队列数,且N应该小于或等于 “Pre-set maximums” 下的 “Combined” 值。Current hardware settings 下的 Combined 值表示当前生效的队列数。
本例中返回表示最多支持2个队列,且当前生效的是1个队列:Channel parameters for eth0:
Pre-set maximums:
RX: 0
TX: 0
Other: 0
Combined: 2 # 表示最多支持设置2个队列
Current hardware settings:
RX: 0
TX: 0
Other: 0
Combined: 1 # 表示当前生效的是1个队列
sudo ethtool -L eth0 combined 2
通过返回信息可以看到,辅助弹性网卡已开启支持多队列。您可以按需继续执行下述操作自定义配置辅助弹性网卡的多队列数。
Channel parameters for eth1:
Pre-set maximums:
RX: 0
TX: 0
Other: 0
Combined: 4 # 表示网卡硬件最多可以支持4个队列
Current hardware settings:
RX: 0
TX: 0
Other: 0
Combined: 1 # 表示当前网卡只使用了1个队列
sudo ethtool -L eth1 combined 4
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。