设为首页 收藏本站
查看: 2007|回复: 0

[经验分享] KVM虚拟机的应用

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-4-24 09:12:24 | 显示全部楼层 |阅读模式

简介:本篇介绍KVM虚拟机的应用

一、KVM虚拟机网络设置
1、NAT模式:KVM虚拟机网卡连接选择NAT,那么网关指向HOST主机的192.168.122.1它就可以直接访问外网;系统中默认以有一个NAT网络;

2、路由模式
HOST主机充当路由器。GUEST主机网关指向HOST主机相连的网卡IP地址,可以把数据发送至外网,但是外网主机如果回应数据包,那么那些外网主机必须有到达GUEST主机网络的路由

3、隔离模式
连接在隔离模式交换机上的所有主机可以互相通信,但是无法访问到外界网络

4、桥接模式
GUEST主机和HOST主机连接在相同的交换机上,只要IP地址在同一网段,那么GUEST主机和HOST主机所在网络的所有主机都能直接通信

在启动kvm之前使机器支持虚拟化,安装虚拟化相关工具(yum groupinstall 虚拟化相关。。。)
我们用桥接模式把虚拟机与物理机进行链接:

[iyunv@localhost network-scripts]# cp  ifcfg-eth0  ifcfg-br0

[iyunv@localhost network-scripts]# cat  ifcfg-br0

DEVICE=br0
TYPE=Bridge
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=192.168.194.10
PREFIX=24
[iyunv@localhost network-scripts]# cat  ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
BRIDGE=br0


二.虚拟机管理

1)virsh命令
1、查看虚拟机列表
#  virsh  list        //查看活跃的虚拟机
#  virsh  list  --all    //查看所有
2、查看virsh版本
#  virsh  version
3、启动名称为rhel6pxe的GUEST主机
#  virsh  start  rhel6pxe
4、强制关闭GUEST主机
#  virsh  destroy  rhel6pxe
5、导出GUEST主机的XML配置文件
#  virsh  dumpxml  rhel6pxe  >  ~/rhel6pxe.xml
6、取消GUEST主机的定义
#  virsh  undefine  rhel6pxe
7、使用已经存在的xml文件和磁盘文件定义GUEST主机
#  virsh  define  ~/rhel6pxe.xml
8、设置GUEST主机在HOST主机启动时,也会自动启动
#  virsh  autostart  rhel6pxe

2)虚拟机克隆

介绍2种方式克隆虚拟机

1)使用LVM方式管理虚拟主机磁盘

1、创建LV
(1)#  fdisk  -cu  /dev/sdb  ->把system-id改为8e
(2)#  pvcreate  /dev/sdb1
(3)#  vgcreate  vg_kvm  /dev/sdb1
(4)#  lvcreate  -n  rhel6base  -L  10G  vg_kvm
2、创建GUEST主机时,磁盘选择创建的LV

3、设置模板虚拟机。把模板计算的个性化信息去除,如root密码、IP地址等。
(1)启动rhel6base虚拟机后,执行以下命令
#  touch   /.unconfigured
4、生成lv快照
# lvcreate  -s  -n  rhel6node1  -L  2G  /dev/vg_kvm/rhel6base
5、导出原有虚拟机的配置文件
#  virsh  dumpxml  rhel6base  >  rhel6node1.xml
6、生成一个uuid
[iyunv@localhost ~]# uuidgen
9cb350bb-2add-461f-9e05-afc9799b3d9b
7、修改rhel6node1.xml

这里主要改四处:“name”  “uuid”  “source dev”  和 “mac address”

name:代表你要克隆的虚拟机额名字
uuid:虚拟机的唯一标识
source dev:安装的虚拟机的源设备名称, 这里应该是生成的lv快照名,rhel6node1
mac address:随便改,不要和已有的虚拟机的mac重复即可

8、利用新的xml文件和LV快照定义新的克隆虚拟机
#  virsh  define  rhel6node1.xml

9、当虚拟机用完,想要删除时,只要把虚拟机取消定义,并删除LV即可
#  virsh  undefine  rhel6node1
#  lvremove  /dev/vg_kvm/rhel6node1

2)使用qcow2管理KVM虚拟机磁盘

1、创建qcow2磁盘文件

[iyunv@localhost ~]# cd  /var/lib/libvirt/images/
[iyunv@localhost images]# qemu-img  create  -f  qcow2  rhel6base.img  80G

2、查看虚拟磁盘文件信息
[iyunv@localhost images]# qemu-img  info  rhel6base.img
image: rhel6base.img
file format: qcow2
virtual size: 80G (85899345920 bytes)
disk size: 136K
cluster_size: 65536

3、安装虚拟机到该文件中。

4.根据基础镜像创建增量镜像文件

# qemu-img  create  -b  rhel6base.img  -f  qcow2  rhel6basenode1.img
[iyunv@localhost images]# qemu-img  info  rhel6basenode1.img
image: rhel6basenode1.img
file format: qcow2
virtual size: 80G (85899345920 bytes)
disk size: 136K
cluster_size: 65536
backing file: rhel6base.img
5、生成克隆虚拟机的XML文件
# virsh  dumpxml  rhel6base  >  rhel6basenode1.xml
#  vim  rhel6basenode1.xml  #参见(上面的修改方法
6、定义新的虚拟机
#  virsh  define  rhel6basenode1.xml



附:

1.当我们用虚拟化软件克隆一台机器的时候,ifconfig显示的网卡名字不是eth0(只有一块网卡的情况下),我们可以做以下配置,给网卡改名:
#  vim  /etc/udev/rules.d/70-persistent-net.rules
查看mac地址,把指定mac地址的网卡改成你需要的名字
#  modprobe  -rv  e1000        //停止网卡驱动
#  modprobe  -v   e1000        //重新加载网卡驱动
(-r =remove ;–v=verbose)

2.1、 COW  -> copy  on  write 写时复制

3.lv快照应用。如,数据库的库文件存在lv(名称为lv_db)上,大小为10G,如果在数据库仍然在运行的条件下,要备份某一个时间点的数据(如10:30),那么可以使用快照snapshot
#  lvcreate  -s  -n  lv_db-snap  -L  1G  /dev/vg_db/lv_db
#  mount  -o  ro  /dev/vg_db/lv_db-snap  /mnt
从/mnt中把数据库备份走即可
4、快照只是临时应用,用完后移除即可
#  lvremove  /dev/vg_db/lv_db-snap


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-18283-1-1.html 上篇帖子: KVM虚拟机在CentOS6.4上的应用 下篇帖子: KVM安装虚拟机 虚拟机
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表