![更换主板后 Linux-KVM “损坏”](https://linux22.com/image/1100732/%E6%9B%B4%E6%8D%A2%E4%B8%BB%E6%9D%BF%E5%90%8E%20Linux-KVM%20%E2%80%9C%E6%8D%9F%E5%9D%8F%E2%80%9D.png)
我刚刚更换了 Dell PowerEdge R410 的主板,它是我们的虚拟服务器之一(运行 Ubuntu 10.04.3 LTS)。我对 Linux 还不太熟悉,更换后网络完全中断,这让我非常惊讶。另一个免责声明是,我一开始并没有构建我们的虚拟服务器,对 Linux-KVM 的工作原理了解甚少。更换主板后,我运行 LifeCycle Controller 应用程序并应用了各种升级(其中最值得注意的是 NIC 的固件升级)。经过大量研究,我终于设法通过编辑 /etc/udev/70-persistent-net.rules 文件“修复”了网络。在该文件中,我删除了之前主板的两个旧 Broadcom (bnx2) 条目,然后将新的 bnx2 eth2 和 eth3 分别重命名为 eth0 和 eth1。然后我将 eth0 和 eth1 移到文档顶部。 (igb) 条目适用于当前未使用的基于 PCI 的 Intel 千兆位 NIC。以下是我的 70-persistent-net.rules 文件的内容:
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.
# PCI device 0x14e4:0x163b (bnx2)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="78:2b:cb:20:9d:71", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# PCI device 0x14e4:0x163b (bnx2)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="78:2b:cb:20:9d:72", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
# PCI device 0x8086:0x10c9 (igb)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="90:e2:ba:0c:7e:f9", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"
# PCI device 0x8086:0x10c9 (igb)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="90:e2:ba:0c:7e:f8", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth3"
这解决了网络完全中断的问题(之前无法 ping 通网关),但一个更严重的问题仍然存在,即服务器硬件随机重启。我无法轻松重现崩溃,但它需要启动机器上运行的 5 个客户操作系统,然后执行 Splunk 查询/ping/运行 X11 转发到 puTTY 等。硬件本身通过了所有自检,戴尔技术人员审查了我收集的 DSET,并提到硬件方面一切看起来都很好。
这是我的 /etc/network/interfaces 文件:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet manual
auto eth1
iface eth1 inet manual
# 10.1.225.x network
auto br0
iface br0 inet static
address 10.1.225.12
netmask 255.255.255.0
network 10.1.225.0
broadcast 10.1.225.255
gateway 10.1.225.1
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
#vlan 231
auto eth1.231
iface eth1.231 inet manual
up ifconfig eth1.231 up
#KVM bridge, vlan 231, via eth1
iface br231 inet static
bridge_ports eth1.231
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
##vlan 229
#auto eth1.229
#iface eth1.229 inet manual
# up ifconfig eth1.229 up
##KVM bridge, vlan 229, via eth1
#auto br229
#iface br229 inet manual
# bridge_ports eth1.229
# bridge_maxwait 5
# bridge_fd 1
# bridge_stp on
#
# !!!!! NOTE (MGRACE): This *is* used !!!!!
#
#No! Unused
auto br1
iface br1 inet manual
bridge_ports eth1
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
#auto br2
#iface br2 inet manual
# bridge_ports eth1
# bridge_fd 9
# bridge_hello 2
# bridge_maxage 12
# bridge_stp off
#auto br3
#iface br3 inet manual
# bridge_ports eth1
# bridge_fd 9
# bridge_hello 2
# bridge_maxage 12
# bridge_stp off
我扫描了所有我能找到的日志,但还没有找到可以跟踪的线索 =(。戴尔技术人员提到这应该像更改虚拟机管理程序的 MAC 地址一样简单,但直到现在我都无法弄清楚如何做到这一点。非常感谢您的帮助,我很乐意提供任何可能有用的其他信息。
谢谢,-Snipe
答案1
好消息:原来是服务器内的一个配电块故障导致了随机重启。如果不是 2 个星期一前问题急剧恶化,我根本无法弄清楚,这才使得戴尔技术人员和我最终找到了问题根源。抱歉大家误诊了!=)
-狙击