1、libvirt的运行日志
在运行libvirt的时候,我们需要获得lbivirt的运行信息,所以我们需要找到他的日志文件。一般情况下,它是在/var/log/libvirt/libvirtd.log路径下。

如果在这个目录下没有发现这个的日志文件,那么就要配置一些libvit的参数了:

(1)编辑文件/etc/libvirt/libvirtd.conf

将日志级别设置为1(调试)

log_level = 1

指定日志输出文件名称

log_outputs=“1:file:/var/log/libvirt/libvirtd.log”

以上的日志的输出级别为debug级别。这个级别的日志是最多的,一般只在开发以及测试的时候使用。

具体输出的格式可以是以下4种形式之一:

x:stderr 输出转到stderr

x:syslog:name 使用syslog作为输出并使用给定name的ident作为标识

x:file:file_path 使用给定的文件路径输出到文件

x:journald 输出转到systemd日志

在所有情况下,x前缀都是最小级别,充当过滤器,在生产运行环境中,日志的级别为info、warn、error、fatal。 以下前面的数字为他们的level:

1 debug

2 info

3 warn

4 error

5 fatal

注意:libvirt日志文件可能会飞速增长。 用户应配置logrotate ,否则您的 /var 文件系统最后会装满内容。

(2)重启libvirt 。

虚拟机Guest操作系统正在运行时可重启 libvirt:

/etc/init.d/libvirtd restart

如果在目录下还是没发现日志文件,那么你可能需要使用一下命令来运行libvirt:

libvirtd --daemon --listen --config /etc/libvirt/libvirtd.conf

2、查看virsh管理qemu虚拟机的信息

在使用virsh管理qemu的虚拟机时候,也是有日志的输出的。

PS: 具体的log在目录/var/log/libvirt/qemu/ 下面,具体的log文件名与虚拟机名字关联。

$ sudo tail -f /var/log/libvirt/qemu/test.log

输出如下:

2016-11-0817:14:46.909+0000: starting up libvirt version: 1.3.1, package: 1ubuntu10.5(Stefan Bader stefan.bader@canonical.com Thu, 06 Oct 2016 13:07:20+0200), qemu version: 2.5.0 (Debian 1:2.5+dfsg-5ubuntu10.5), hostname:server1.cyberciti.biz

=29,id=hostnet1,vhost=on,vhostfd=30-device virtio-net-pci,netdev=hostnet1,id=net1,mac=52:54:00:8f:31:5f,bus=pci.0,addr=0x4-chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0-vnc 127.0.0.1:1 -device cirrus-vga,id=video0,bus=pci.0,addr=0x2 -devicevirtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x7 -msg timestamp=on

char device redirectedto /dev/pts/8 (label charserial0)

3、libvirt的常见错误
问题1:error: Cannot access storage file ‘/root/x.qcow2’ (as uid:107, gid:107): Permission

解决2:

查看qemu用户

1)cat /etc/passwd

qemu❌107:107:qemu user:/:/sbin/nologin

2)ll /root/x.qcow2

-rwxrwxrwx 1 qemu qemu 1957691392 Dec 1 14:16 /root/x.qcow2

3)在各种权限都对的情况下,依然不能create,这样就需要重新调整libvirt的默认权限

sed -i ‘s/#group = “root”/group =“root”/g’ /etc/libvirt/qemu.conf

sed -i ‘s/#user = “root”/user =“root”/g’ /etc/libvirt/qemu.conf

4)最后重启libvirt

service libvirtd restart

问题2:error: Cannot read CA certificate ‘/etc/pki/CA/cacert.pem’: No such file or directory

解决2:

这个是由于libvirt使用了TLS机制,但是没有配置好相关的公钥和私钥。

关于libvirt的TLS机制,见这里:http://wiki.libvirt.org/page/TLSDaemonConfiguration。

1)一个简单的解决办法是将TLS机制关掉,更改/etc/libvirt/libvirtd.conf为:

listen_tls = 0

listen_tcp = 1

2)最后重启libvirt

service libvirtd restart

问题3:virsh start vm1error: Failed to start domain vm1error: Unable to read from monitor: Connection reset by peer

解决3:

在虚拟机运行过程中关闭宿主服务器就有可能导致这种情况出现,由于宿主服务器中的kvm虚拟机控制器与安装在kvm中的虚拟机会话被异常重置,所以我们可以如下解决:

virsh managedsave-remove vm1

virsh start vm1

问题4:查看/var/log/libvirt/qemu/vm1.log下log还报如下错误,Cannot set up guest memory ‘pc.ram’: Cannot allocate memory

解决4:

这个问题可能是分配给vm1分配的内存过大(甚至超过的物理主机的内存大小),或者可能是宿主机没有足够的内存分配给此虚拟机,导致无法启动。

问题5:Define虚拟机时无/usr/bin/kvm

error: Failed to define domain from hostname.xmlerror: Cannot find QEMU binary /usr/bin/kvm: No such file or directory

解决5:

ln -s /usr/libexec/qemu-kvm /usr/bin/kvm

问题6: Unable to load library ‘virt’: libvirt.so

Unable to load library ‘virt’: libvirt.so: cannot open shared object file: No such file or directory

解决6:

在linux下:

ln -s /usr/lib/libvirt.so.0 /usr/lib/libvirt.so

在windows下:

  将libvirt-0.dll改名为virt.dll

问题7: error: Refusing to undefine while domain managed save p_w_picpath exists

virsh undefine vm1error: Refusing to undefine while domain managed save p_w_picpath

解决7:

virsh undefine $domain --managed-save

问题8: 启动虚拟机报错

virsh start vm1 error:

Failed to start domain vm1error: internal error process exited while connecting to monitor: Could not access KVM kernel module: No such file or directoryfailed to initialize KVM: No such file or directoryNo accelerator found!

解决8:

上面的提示信息就是因为QEMU在初始化阶段因为无法找到kvm内核模块。

1)# modprobe kvm #载入指定的模块

2)重启电脑,进入bios界面,设置advance选项里面的virtualization标签为Enabled

3)通过命令 lsmod | grep kvm #显示已载入的模块

问题9: 虚拟机迁移问题一

virsh migrate --live 1 qemu+tcp://192.168.0.121 --p2p --tunnelled --unsafe

error: operation failed: Failed to connect to remote libvirt URI qemu+tcp://192.168.0.121

解决9:

在URI后面加上/system,‘system’相当于root用户的访问权限

问题10: 虚拟机迁移问题二

#virsh migrate --live 2 qemu+tcp://192.168.0.121/system --p2p --tunnelled

error: Unsafe migration: Migration may lead to data corruption if disks use cache != none

解决10:

加上–unsafe参数

问题11: 虚拟机迁移问题三

#virsh migrate --live 2 qemu+tcp://192.168.0.121/system --p2p --tunnelled --unsafe

error: Timed out during operation: cannot acquire state change lock

解决11:

启动虚拟机有时也会遇此错误,需要重启libvirt进程

问题12: virsh连接问题

error: Failed to connect socket to ‘/var/run/libvirt/libvirt-sock’: Connection refused(libvirt 进程没有启动,libvirt是一个监听客户端请求的进程)# virsh -c qemu:///system listerror: Failed to connect socket to ‘/var/run/libvirt/libvirt-sock’: Permission denied

error: failed to connect to the hypervisor

解决12:

1)当前用户没有权限,修改/etc/libvirt/libvirtd.conf

unix_sock_rw_perms = 0777

使所有用户都有权限读写

2)最后重启libvirt

service libvirtd restart

问题13:鼠标不同步问题

在安装windows 8,windows 10和windows server 2012 R2的时候发现VNC的鼠标不同步。这给我带来了巨大的麻烦。

解决13:

在经过一番Google后找到了解决办法。对于已经安装好的虚拟机,可以在devices区块添加以下内容并重启虚拟机即可:

在安装虚拟机的时候添加以下内容即可解决鼠标不同步的问题:

–input tablet,bus=usb

问题12:vnc无法传输声音?

解决12:

1)修改 /etc/libvirt/qemu.conf

vnc_allow_host_audio = 1

2)重启libvirt

service libvirtd restart

玩转KVM:怎么追查KVM故障相关推荐

  1. cento7安装kvm并通过kvm命令行安装centos7

    这里写自定义目录标题 一.KVM简介 二.KVM虚拟化平台构建 三.创建虚拟机并安装CentOS7 一.KVM简介 KVM(名称来自英语:Kernel-basedVirtual Machine的缩写, ...

  2. linux kvm切换器,KVM切换器是什么,看懂这一篇就够

    原标题:KVM切换器是什么,看懂这一篇就够 在服务器机房的机架不便于存放多个显示器和键盘的空间里,KVM切换器起着重要的作用.KVM切换器能从本地或远程监视与控制多个计算机与服务器,由键盘.鼠标和显示 ...

  3. kvm介绍、kvm存储池、kvm快照和克隆、kvm虚拟机基本管理和网络管理

    目录 什么是kvm 云计算的定义 云计算的服务类型 虚拟化技术定义 虚拟化的两种方式 kvm虚拟化的原理 kvm虚拟化网络解析 kvm存储池 1.图形的方式去创建使用存储池​编辑 ​编辑 2.命令的方 ...

  4. 虚拟化技术之KVM,搭建KVM(详细)

    首先说一下,KVM是基于硬件辅助的开源全虚拟化解决方案 一.KVM(基于内核的虚拟机)[刚开始是一家以色列的公司开发的,后来红帽觉得KVM很有前景,就把KVM收购了]. 二.KVM包含了一个内核加载模 ...

  5. linux kvm 桥接模式,kvm的网络桥接模式与快照管理介绍

    先确认系统是否支持虚拟化技术 egrep '(vmx|svm)' --color=always /proc/cpuinfo 安装基本需要的组件 yum install -y qemu-kvm brid ...

  6. kvm技术:kvm虚拟化的安装和应用

    文章目录 1:什么是云计算 2:云计算的服务类型 3:为什么要用云计算 4:云计算的基础KVM虚拟化 4.1:什么是虚拟化? 4.2 :linux虚拟化软件的差别 4.3 安装kvm虚拟化管理工具 4 ...

  7. 虚拟服务器kvm esxi选择,kvm系统(esxi和pve哪个好)

    KVM是键盘(Keyboard).显示器(Video).鼠标(Mouse)的缩写.KVM技术的核心思想是:通过适当的键盘.鼠标.显示器的配置,实现系统和网络的集中管理和提. 1. 简单说:kvm是Ke ...

  8. linux kvm usb设备,KVM客户机使用主机USB设备

    有些时候KVM客户机还是要使用USB设备,比如USB密钥等 KVM命令行参数 -usb 打开usb驱动程序,启动客户机usb支持 -usbdevice devname 为客户机增加usb设备,devn ...

  9. 服务器连接kvm不显示,kvm切换器使用中易出现问题及简单解决方式

    一.初次连接使用KVM切换器,KVM切换器不能正常工作 答:请按照以下步骤重新连接KVM切换器 1.断开KVM切换器的电源输入以及显示器.键盘.鼠标 2.断开所有与KVM切换器相连接的KVM信号线 3 ...

最新文章

  1. Android应用开发基础篇(12)-----Socket通信(转载)
  2. Linux 格式化分区 报错Could not stat --- No such file or directory 和 partprobe 命令
  3. 知识小结(浮点数问题)
  4. DOM对象与Jquery对象区别
  5. React 毁了 Web 开发?
  6. 怎样为深度学习系统选择GPU
  7. python3字典值重复统计_如何从字典列表中获取值-python 3.7.1[重复]
  8. 练习12——二叉树与表达式
  9. 如何实现Iframe透明
  10. 内存时序对应的4个参数你们知道吗?ICMAX一文让你看懂
  11. 将lrc批量转换为txt,同时删除时间标签
  12. 梦幻西游html源码,index.html
  13. CANopen高级协议详解
  14. mysql索引的子部分_Mysql索引数据结构详解及性能调优
  15. Browser-Solidity的本地安装及使用介绍
  16. EasyUI项目之门户(添加查询购物车与清空购物车)
  17. 一图抵千言《ARouter简明扼要原理分析》
  18. 第164篇,陌生人和贵人(扶摇生财思维)
  19. 神经系统图 基本结构图,大脑神经网络结构图片
  20. mysql5.0忘记root密码_【咨询】mysql忘记root密码的处理方法(5.5/5.0)

热门文章

  1. STM32L系列flash操作陷阱
  2. 【IDF】古老的邮件编码
  3. 通俗理解稀疏性sparsity假设:历史、数学表示、物理意义
  4. 思科路由交换学习笔记 - CCNP CCIE.安全DMVPN
  5. linux tkinter安装,Python的Tkinter库的安装--Debian
  6. Excel XP数据分析应用指南
  7. 浅谈频率学派和贝叶斯学派
  8. 生存还是毁灭?蒙牛30亿美元狂撒奥运背后的生死抉择
  9. cmake gui安装教程_CMake安装使用教程
  10. 拼多多APP商品详情接口获取activity_id值(拼多多activity_id接口)