Я только что установил карту Mellanox ConnectX-2 10gbe PCIe x8 на свой сервер под управлением CentOS 6.7. При загрузке dmesg показывает mlx4_core
драйвер загружается автоматически, но я не вижу eth1 устройство, соответствующее карте. ifconfig -a
только показывает eth0, который является моим бортовым / материнским гигабитным сетевым интерфейсом.
Итак, я удалил /etc/udev/rules.d/70-persistent-net.rules
и перезагрузился. Он воссоздан 70-persistent-net.rules
но только с моей встроенной / материнской гигабитной сетевой картой, для карты Mellanox 10gbe записи нет.
Выход /etc/udev/rules.d/70-persistent-net.rules
# PCI device 0x10ec:0x8168 (r8169)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:30:67:aa:bb:cc", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
Хорошие новости, lspci
показывает карту Mellanox. Выход lspci | grep -i ether
02:00.0 Ethernet controller: Mellanox Technologies MT26448 [ConnectX EN 10GigE, PCIe 2.0 5GT/s] (rev b0)
05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 03)
Соответствующий вывод от dmesg
:
mlx4_core: Mellanox ConnectX core driver v2.2-1 (Feb, 2014)
mlx4_core: Initializing 0000:02:00.0
mlx4_core 0000:02:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
mlx4_core 0000:02:00.0: setting latency timer to 64
alloc irq_desc for 26 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 26 for MSI/MSI-X
alloc irq_desc for 27 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 27 for MSI/MSI-X
alloc irq_desc for 28 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 28 for MSI/MSI-X
alloc irq_desc for 29 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 29 for MSI/MSI-X
alloc irq_desc for 30 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 30 for MSI/MSI-X
alloc irq_desc for 31 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 31 for MSI/MSI-X
alloc irq_desc for 32 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 32 for MSI/MSI-X
alloc irq_desc for 33 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 33 for MSI/MSI-X
alloc irq_desc for 34 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 34 for MSI/MSI-X
alloc irq_desc for 35 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 35 for MSI/MSI-X
alloc irq_desc for 36 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 36 for MSI/MSI-X
alloc irq_desc for 37 on node -1
alloc kstat_irqs on node -1
mlx4_core 0000:02:00.0: irq 37 for MSI/MSI-X
Есть идеи, почему мой Mellanox ConnectX-2 не отображается как eth1 устройство?
Эта карта должен работать изначально без каких-либо изменений. Просто удали свой 70-persistent-net.rules
/ перезагрузить и / или проверить dmesg
вывод.
У вас может быть проблема с UUID или MAC в файлах / etc / sysconfig / network-scripts / ifcfg-ethX.
Если это не так, загрузите драйвер с сайта Mellanox или HP.
# modinfo mlx4_en
filename: /lib/modules/2.6.32-573.22.1.el6.x86_64/weak-updates/mlnx-en/drivers/net/ethernet/mellanox/mlx4/mlx4_en.ko
version: 2.3-2.0.1 (Dec 7 2014)
license: Dual BSD/GPL
description: Mellanox ConnectX HCA Ethernet driver
author: Liran Liss, Yevgeny Petrilin
srcversion: 86DD1A5FE5CF17268AFBB0D
depends: mlx4_core,compat,ptp
vermagic: 2.6.32-504.el6.x86_64 SMP mod_unload modversions
parm: inline_thold:threshold for using inline data (uint)
parm: udp_rss:Enable RSS for incoming UDP traffic (uint)
parm: num_lro:Dummy module parameter to prevent loading issues (uint)
parm: pfctx:Priority based Flow Control policy on TX[7:0]. Per priority bit mask (uint)
parm: pfcrx:Priority based Flow Control policy on RX[7:0]. Per priority bit mask (uint)
Я нашел решение. Все, что мне нужно было сделать, это ввести две команды для активации сетевой карты в CentOS 6:
sudo modprobe mlx4_core
sudo modprobe mlx4_en
Теперь у меня есть eth1
в ifconfig -a
и можете настроить его (IP-адрес, сетевая маска и т. д.)
Чтобы сделать его постоянным после перезагрузки, я добавил новый файл /etc/sysconfig/modules/mellanox.modules
и установите его разрешения (chmod) на 755, владелец / группа как root:
#!/bin/sh
/sbin/modprobe mlx4_core
/sbin/modprobe mlx4_en
Это автоматически загружает модуль ядра Mellanox, встроенный в CentOS, при загрузке, непосредственно перед активацией конфигураций eth0 / eth1, указанных в / etc / sysconfig / network-scripts
Теперь он работает как любой другой сетевой интерфейс.