1、Hint to configure libvirt without bothering qemu errors in xen This is not a bug, but annoying Since I have xen and no kvm the qemu dirvers report errors all the time - This may help everyone with the same setup. libvir: QEMU error : connect: /usr/local/var/run/libvirt/qemud-sock: No such file or directory libvir: warning : Failed to find the network: Is the daemon running ? libvir: error : library call virConnectNumOfNetworks failed, possibly not supported libvir: error : library call virConnectNumOfDefinedNetworks failed, possibly not supported [..] The last two lines are printed every second! To "unconfigure" qemu and therefore prevent these message flooding use ./configure --without-qemu simple but useful ;-) 2、系统日志中大量如下警告: Dec 2 16:11:08 gamebbs2 snmpd[1056]: Received SNMP packet(s) from UDP: [192.168.239.93]:-13093 Dec 2 16:11:08 gamebbs2 kernel: audit(1228205468.528:120): avc: denied { read append } for pid=1056 comm="snmpd" name="snmpd.log" dev=dm-0 ino=3717987 scontext=system_u:system_r:snmpd_t:s0 tcontext=user_u:object_r:var_log_t:s0 tclass=file Dec 2 16:11:08 gamebbs2 snmpd[1056]: Received SNMP packet(s) from UDP: [192.168.239.93]:-13092 Dec 2 16:11:08 gamebbs2 kernel: audit(1228205468.940:121): avc: denied { read append } for pid=1056 comm="snmpd" name="snmpd.log" dev=dm-0 ino=3717987 scontext=system_u:system_r:snmpd_t:s0 tcontext=user_u:object_r:var_log_t:s0 tclass=file Dec 2 16:16:15 gamebbs2 snmpd[1056]: Received SNMP packet(s) from UDP: [192.168.239.93]:-12384 原因是开启了selinux,snmp的日志文件因受selinux保护,snmp不能正常写入,解决方法有几种: (1)停止snmpd,删除snmpd日志文件,再启动snmpd即可恢复,不过此方法处理后可能在下次重启系统后仍然会出现这个情况。 (2)直接关闭selinux(setenforce 0) (3)修改selinux的策略(selinux不熟,哪位高手提供一下方法) 3、网卡lo流量很高 初步估计与IPv6有关,关闭IPv6支持,重启系统后恢复 vi /etc/modprobe.conf 加入下面两行 alias net-pf-10 off alias ipv6 off 4、ssh远程连接到服务器后进行操作会停顿,在控制台相接操作没有此情况 初步估计与IPv6有关,关闭IPv6支持,重启系统后恢复 vi /etc/modprobe.conf 加入下面两行 alias net-pf-10 off alias ipv6 off 另可能与网卡流量限制有关,查看网卡流量限制 tc qdisc show dev eth0 5、在rh5u2前的系统上安装Fedora10作为DomU不成功 可能是python-virtinst包版本过低,可以尝试更新此包再安装。 6、在XEN主机上,写在/etc/init.d/network上的路由不生效,但是改为非虚拟系统的时候正常 因XEN系统中启动网络的方法与非虚拟主机系统有些不同,具体可以参考XEN相关文档,将路由写到/etc/init.d/xend中即可正常生效 7、ssh连接domU可以正常连接,使用xm console domname连接domU的控制台的时候报如下错误: xenconsole: Could not read tty from store: No such file or directory 某些客户机还可能出现无法启动的现象。 可能是xend进程有问题,可以考虑重启xend进程: /etc/init.d/xend restart 8、安装domU过程中,在输入客户机IP后不能获取到安装源的数据,使用DHCP获取不到地址 查看dom0中网络配置情况,检查是否domU连接到了错误的网桥上 brctl show 如果是,修正vif连接到的网桥,用brctl命令进行删除和添加 例如: #brctl show #查看网络连接情况 #xm list #查看该DomU所的ID来确定vif号码(ID号与vif号相同) #brctl delif virbr0 vifx.0 #从错误的网桥中删除vifx.0(x.0中x为ID编号,0表示第一块网卡,下同) #brctl addif xenbr0 vifx.0 #在正确的网桥中加入vifx.0 #brctl show #检查最终结果 9、安装客户机过程中跨网段安装失败 首先检查安装客户机的时候配置的网络,客户机网络与主机网络应该相同,同时主机与安装服务器够连通,并且客户机设置的网关应该为该客户机所配置网段连通安装服务器的路由网关,可能不是默认网关,对于系统安装服务器与xen主机之间跨网段的情况网关设置非常重要。如果使用DHCP来安装客户机,通常可能会遇到此情况。 10、64位的RHEL5U2机器,安装客户机,重启客户机等都会卡住,在check image附近 初步估计为在有客户机运行期间,主机的时间跟实际时间有较大的差距的情况下运行了ntpdate的原因,如果已经运行了该命令,暂时未发现较好的解决方法,只能重启物理服务器。 如果还未运行客户机,可考虑先关闭客户机,再运行ntpdate校准,然后再启动客户机。 11、在单台物理XEN主机上同时进行两个虚拟客户机的安装可能会出现冲突,导致系统无响应 12、用virt-install安装客户机的时候报如下错误: virDomainCreateLinux() failed XML description for domain is not well formed or invalid Domain installation may not have been successful. If it was, you can restart your domain by running 'virsh start new216'; otherwise, please restart your installation. Mon, 09 Mar 2009 14:57:22 ERROR virDomainCreateLinux() failed XML description for domain is not well formed or invalid Traceback (most recent call last): File "/usr/sbin/virt-install", line 502, in ? main() File "/usr/sbin/virt-install", line 462, in main dom = guest.start_install(conscb,progresscb) File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 813, in start_install return self._do_install(consolecb, meter) File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 834, in _do_install self.domain = self.conn.createLinux(install_xml, 0) File "/usr/lib64/python2.4/site-packages/libvirt.py", line 573, in createLinux if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self) libvirtError: virDomainCreateLinux() failed XML description for domain is not well formed or invalid 出现此报错应该是主机系统在启动的时候有起libvirtd服务,但是后来关闭了,而virt-install工具在进行客户机系统安装的时候错误地将客户机的网卡连接到libvirtd服务起的网桥virbr0上,此时libvirtd是关闭的,所以virbr0也不存在了,就出现了上面的错误信息。 解决方法有两个: (1)、启动libvirtd服务后重新用原来的virt-install命令安装客户机操作系统; #/etc/init.d/libvirtd start (2)、在原来的virt-install命令后面加-b参数指定需要连接的网桥,如果未调整网络,一般默认的网桥应该为xenbr0 要查看网桥的名称可以使用brctl命令查看 #brctl show [root@XenHost ~]# brctl show bridge name bridge id STP enabled interfaces xenbr0 8000.feffffffffff no vif5.0 vif4.0 vif3.0 vif2.0 peth0 vif0.0 此处我们已经关闭了libvirtd服务,剩下的网桥的名称为xenbr0(如果创建了多个网桥,选择自己需要的网桥名称) #virt-install -n kiro-test -r 256 --vcpus=1 -f /data/rh5 --nographics -p -d -l "http://192.168.0.1" -b xenbr0 13、虚拟客户机关闭后内存不能自动回收 只要在主机上执行下面的命令即可: xm mem-set 0 mem-value #其中mem-value为大于或等于实际空余内存的值,此时,系统将回收全部可用的内存 14、虚拟主机跟虚拟客户机的时间对不上,主机的可以校正,客户机无论用ntpdate怎么调时间都调不准确 临时解决方法,首先手工调整虚拟主机时间,不管此时主机时间是否准确,只管用date命令将主机时间调整一下,随便调整为什么时间,但是最好就不要跟主机时间相差太远,然后用ntpdate重新同步校正主机时间,即可让主机时间与客户机时间保持一致并且准确了。主机时间同步完成后,如果此时客户机时间比主机时间偏慢,客户机时间将自动同步为正确时间,如果客户机时间比主机时间偏快,则客户机时间将暂停,直到主机时间与其相同后再继续。其实我们只需要用date命令修改一下主机时间即可让主机和客户机的时间达到同步,后面进行ntpdate是为了校准主机和客户机的时间而已。 长效解决方法,在客户机上执行下面的命令让XEN客户机不同步主机时间 echo 1 > /proc/sys/xen/independent_wallclock 然后就可以自由设置时间了,客户机重启后还是会同步主机时间 要让这个配置开机有效可以将上面的命令加入/etc/rc.local 或添加下面的配置到/etc/sysctl.conf中 xen.independent_wallclock = 1 然后ntpdate校正客户机时间,执行此操作后客户机时间将独立于主机时间 |