我第一次把我的问题写在堆栈溢出我认为这是一个 Maven 代理软件问题。
但我意识到这更多的是我的虚拟化堆栈的问题(Ubuntu 10.04.3 LTS 上的 libvirt 0.7.5-5ubuntu27.19 / kvm 1:84+dfsg-0ubuntu16+0.12.3+noroms+0ubuntu9.16)。
以下是我的虚拟机的 libvirt 网络配置:
<interface type='bridge'>
<mac address='52:54:00:0f:30:ea'/>
<source bridge='br0'/>
</interface>
以下/etc/network/interfaces
部分为br0
:
auto eth3
iface eth3 inet manual
auto br0
iface br0 inet static
address 192.168.1.200
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.254
bridge_ports eth3
bridge_stp off
bridge_maxwait 0
问题就在这里:有时,当 Maven 客户端尝试构建项目并从运行 Maven 代理的 VM 下载大量 jar 时,它会在下载其中一个时卡住:
Downloading: http://192.168.1.213:8081/artifactory/repo/org/apache/apache/9/apache-9.pom
Downloaded: http://192.168.1.213:8081/artifactory/repo/org/apache/apache/9/apache-9.pom (15 KB at 14.0 KB/sec)
Downloading: http://192.168.1.213:8081/artifactory/repo/org/apache/maven/plugins/maven-release-plugin/2.2.1/maven-release-plugin-2.2.1.jar
5 KB
我已经排除了软件问题,因为我在另一台真实计算机上配置了类似的服务器并且它可以运行。
我尝试ip_forward
过0
阅读使用 KVM/libvirt 和 ip_forward = 1 时网络冻结没有结果。
我尝试添加CAP_NET_ADMIN
阅读功能KVM/网络在 ubuntu wiki 上没有结果。
我尝试配置br0
添加这些属性但/etc/network/interfaces
没有结果:
bridge_fd 9
bridge_fd 0
bridge_hello 2
bridge_maxage 12
(也尝试过bridge_stp on
)
我尝试更改虚拟网络接口的模型那篇博客文章,在标签<model type='e1000'/>
内添加<interface>
,最终我得到了更好的结果(但有时仍然会阻塞 - 即使这种情况不常见)。使用rtl8139
模型也会更好。
我试图捕获我的客户端和虚拟机之间的交换,但当 TCP 连接客户端发送带有 时,它似乎总是[ACK]
卡住Len=0
。以下是 Wireshark 捕获的交换。
看来我有同样的错误这个(在启动板上)。
有人能告诉我一个更好的 libvirt / KVM 配置吗?
答案1
答案2
您可以尝试运行已反向移植到 lucid 的较新的虚拟化堆栈。添加以下 PPA 并尝试一下;