查看“KVM虚拟机管理”的源代码
来自Ubuntu中文
←
KVM虚拟机管理
跳到导航
跳到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
== 概述 == === 需要安装的软件包 === CentOS 6.3 服务器端需要安装的软件包, <pre>yum install qemu-kvm libvirt </pre> Ubuntu 12.10 客户端需要安装的软件包, <pre>virt-manager</pre> == KVM虚拟机的网络管理 == KVM 客户机网络连接有两种方式,: * 用户网络(User Networking):让虚拟机访问主机、互联网或本地网络上的资源的简单方法,但是不能从网络或其他的客户机访问客户机,性能上也需要大的调整。NAT方式。 * 虚拟网桥(Virtual Bridge):这种方式要比用户网络复杂一些,但是设置好后客户机与互联网,客户机与主机之间的通信都很容易。Bridge方式。 注意:kvm安装后的默认是NAT方式,网桥方式需要手动配置 === NAT方式 === === Bridge方式 === ==== Bridge方式原理 ==== Bridge方式即虚拟网桥的网络连接方式,是客户机和子网里面的机器能够互相通信。可以使虚拟机成为网络中具有独立IP的主机。桥接网络(也叫物理设备共享)被用作把一个物理设备复制到一台虚拟机。网桥多用作高级设置,特别是主机多个网络接口的情况。 目前版本的NetworkManger 不支持配置桥接网络功能,如何需要配置桥接网络,请停用 NetworkManger 服务,改用network 服务来管理网络! ==== Bridge方式网络的配置 ==== 1 编辑修改网络设备脚本文件,增加网桥设备br0 CentOS发行版配置文件 /etc/sysconfig/network-scripts/ifcfg-br0 <pre>DEVICE="br0" TYPE="Bridge" BOOTPROTO=static IPADDR=10.1.83.205 PREFIX=22 GATEWAY=10.1.80.254 DNS1=59.108.119.3 IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME=br0 ONBOOT=yes DELAY=0 </pre> 2 编辑修改网络设备脚本文件,修改网卡设备eth0 CentOS发行版配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0 <pre>DEVICE="eth0" TYPE=Ethernet NM_CONTROLLED="yes" BRIDGE="br0" BOOTPROTO=none DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME=system-eth0 UUID=611d95bc-0d27-4536-b012-c5d4994c5815 ONBOOT=yes LAST_CONNECT=1350313129 </pre> NM_CONTROLLED这个属性值,根据RedHat公司的文档是必须设置为“no”的(这个值为“yes”表示可以由服务NetworkManager来管理。NetworkManager服务不支持桥接,所以要设置为“no”。),但实际上发现设置为“yes”没有问题。通讯正常。 3、重启网络服务 service network restart 4、校验桥接接口 <pre>[root@localhost ~]# brctl show bridge name bridge id STP enabled interfaces br0 8000.003048c68ab0 no eth0 vnet0 vnet1</pre> ==== 注意事项 ==== # IP配置在桥接器上,对应的网卡不需要配置IP; # 所有桥接器,物理网卡都必须处于running状态; # 客户机安装时注意,网络要选择用br0桥接方式; # 保证宿主机IP和虚拟机IP处于同一网段 == kvm虚拟机的备份与恢复 == 确认虚拟机镜像文件格式 qemu-img info centos1.img RAW格式是最原始的镜像格式,好处是速度快,但不支持很多新的功能,raw格式不具备快照功能。现在qcow2格式效率有很大提升了,而且还支持一些新的功能 # 更小的存储空间,即使是不支持holes的文件系统也可以(这下du -h和ls -lh看到的就一样了) # Copy-on-write support, where the image only represents changes made to an underlying disk image(这个特性SUN ZFS表现的淋漓尽致) # 支持多个snapshot,对历史snapshot进行管理 # 支持zlib的磁盘压缩 # 支持AES的加密 想要启用快照功能,需要先转换镜像文件格式为qcow2。 virsh shutdown esojourn.org qemu-img convert -f raw -O qcow2 centos1.img centos1qcow2.img 常用快照命令 这里有一份libvirt官方的命令文档。完整,但说明不详细:http://wiki.libvirt.org/page/VM_lifecycle 具体示例: 1. 列出快照: <pre> virsh snapshot-list CentOS1 Name Creation Time State ------------------------------------------------------------ centos1.snap1 2012-10-08 17:25:11 +0800 running snap2 2012-10-08 17:33:14 +0800 running snap3 2012-10-08 17:57:21 +0800 running </pre> 创建快照 <pre> virsh snapshot-create-as CentOS1 snap2 virsh snapshot-create-as --domain CentOS1 --name snap2 --description "URL: www.esojourn.org" </pre> 查看快照配置 virsh snapshot-current CentOS1 恢复快照 virsh snapshot-revert CentOS1 snap2 删除快照 virsh snapshot-delete CentOS1 snap2 获取帮助 virsh help snapshot 关于qemu-img snapshot -c和savevm 很多互相抄袭的教程里,都提到了使用qemu-img snapshot -c的命令来创建快照。但我自己测试的结果 ,不管虚拟机是运行中,还是关闭状态,这个命令创建的快照字节都是0。也就是说什么也没保存下来。对此,我还没有找到原因。但找到Red hat员工Kashyap Chamarthy的一篇文章。文章里提到virsh在不同情况下,会调用不同方式来保存快照。其中至少包括‘qemu-img snapshot -c‘,qemu的 ‘savevm‘和qemu的 ‘snapshot_blkdev‘这三种方式。所以看起来快照保存,还是使用virsh snapshot-create的方式比较好。 原文引用 <pre> Also, discussed with Eric, in what cases does virsh invoke Qemu’s ‘savevm‘ and ‘qemu-img snapshot -c‘ commands while creating different types of snapshots discussed earlier above. Here is the outline: - it uses ‘qemu-img snapshot -c‘ if the domain is offline and –disk-only was not specified - it uses qemu’s ‘savevm‘ if the domain is online and –disk-only was not specified - it uses qemu’s ‘snapshot_blkdev‘ if the domain is online and –disk-only is specified http://kashyapc.wordpress.com/2011/10/04/snapshotting-with-libvirt-for-qcow2-images/ </pre> <pre> qemu-img snapshot相关命令格式: qemu-img snapshot -c snap1 centos1-qcow2.img qemu-img snapshot -l centos1-qcow2.img </pre> <pre> Snapshot list: ID TAG VM SIZE DATE VM CLOCK 1 snap1 0 2011-07-21 23:17:38 00:00:00.000 </pre> 恢复快照: <pre> qemu-img snapshot -a CentOS5.5_64bit_Qcow2_basesys.img CentOS5.5_64bit_Qcow2.img 其他操作: 'snapshot' is the name of the snapshot to create, apply or delete '-a' applies a snapshot (revert disk to saved state) '-c' creates a snapshot '-d' deletes a snapshot '-l' lists all snapshots in the given image </pre> == 参考资料 == # http://www.linuxidc.com/Linux/2012-05/61445.htm # http://www.linuxidc.com/Linux/2012-05/61445p2.htm # http://rajaruan.blog.51cto.com/2771737/955479 # http://blog.csdn.net/q123456789098/article/details/7856953 # http://libvirt.org/index.html # http://www.cnblogs.com/zhangzhang/archive/2012/02/14/2350464.html == 文档维护人员列表 == 潘海涛 haitao.pan@cs2c.com.cn
返回
KVM虚拟机管理
。
导航菜单
页面操作
页面
讨论
阅读
查看源代码
历史
页面操作
页面
讨论
更多
工具
个人工具
登录
导航
首页
最近更改
随机页面
页面分类
帮助
搜索
编辑
编辑指南
沙盒
新闻动态
字词处理
工具
链入页面
相关更改
特殊页面
页面信息