码迷,mamicode.com
首页 > 其他好文 > 详细

KVM虚拟机安装管理——qemu-kvm方式

时间:2014-08-05 22:56:52      阅读:520      评论:0      收藏:0      [点我收藏+]

标签:virtual   qemu-kvm   kvm   

KVM (kernel-based virtual machine,内核虚拟机),是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,虚拟化效率高、管理简便。


1)系统环境 

操作系统

CentOS release 6.3

内核版本

2.6.32-279.el6.x86_64

服务器型号

Dell  R410

基本配置

32G内存、8CPU4T硬盘


2)安装KVM软件,加载内核模块

2.1)安装kvm 内核模块(前提:配置好yum源)

[root@project ~]# yum  list|grep -i kvm

qemu-kvm.x86_64                        2:0.12.1.2-2.415.el6_5.10        updates 

qemu-kvm-tools.x86_64                  2:0.12.1.2-2.415.el6_5.10        updates 

[root@project ~]# yum  install  qemu-kvm  qemu-kvm-tools  -y

......

Installing for dependencies:               //由于依赖关系需要安装如下的软件

celt051          x86_64     0.5.1.3-0.el6                 

glusterfs-api      x86_64     3.4.0.57rhs-1.el6_5           

glusterfs-libs     x86_64     3.4.0.57rhs-1.el6_5           

gpxe-roms-qemu  noarch     0.9.7-6.10.el6                

qemu-img        x86_64     2:0.12.1.2-2.415.el6_5.10     

seabios          x86_64     0.6.1.2-28.el6                

sgabios-bin       noarch     0-0.3.20110621svn.el6         

spice-server      x86_64     0.12.4-6.el6_5.2              

usbredir         x86_64     0.5.1-1.el6                   

vgabios         noarch     0.6b-3.7.el6


2.2)验证内核加载 kvm 模块

[root@project ~]# lsmod  |grep  kvm

kvm_intel              52570   0 

kvm                   314739  1 kvm_intel


3)宿主服务器桥接配置

3.1)安装网桥管理工具

[root@project ~]# yum  install  bridge-utils  tunctl  -y


3.2)新建网桥br0配置文件,将网卡em1加入网桥br0

[root@project ~]# cd  /etc/sysconfig/network-scripts

[root@project network-scripts]# vim  ifcfg-br0

DEVICE=br0

ONBOOT=yes

BOOTPROTO=static

IPADDR=10.10.100.30

NETMASK=255.255.255.0

GATEWAY=10.10.100.254

TYPE=Bridge

 

[root@project network-scripts]# vim   ifcfg-em1

DEVICE="em1"

ONBOOT="yes"

BRIDGE=br0

3.3重启网络服务,查看网桥br0

[root@project ~]# /etc/init.d/network  restart

[root@project ~]# ifconfig 

br0       Link encap:Ethernet  HWaddr 90:B1:1C:0D:80:14  

          inet addr:10.10.100.30  Bcast:10.10.100.255  Mask:255.255.255.0

          inet6 addr: fe80::92b1:1cff:fe0d:8014/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:584 errors:0 dropped:0 overruns:0 frame:0

          TX packets:458 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0 

          RX bytes:43198 (42.1 KiB)  TX bytes:53755 (52.4 KiB)

 

em1       Link encap:Ethernet  HWaddr 90:B1:1C:0D:80:14  

          inet6 addr: fe80::92b1:1cff:fe0d:8014/64 Scope:Link

          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1

          RX packets:602 errors:0 dropped:0 overruns:0 frame:0

          TX packets:435 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:55634 (54.3 KiB)  TX bytes:52012 (50.7 KiB)

          Interrupt:36 Memory:da000000-da012800


3.4验证网卡em1 已桥接至 br0

[root@project ~]# brctl  show

bridge name   bridge id    STP enabled     interfaces

br0     8000.90b11c0d8014      no              em1


4)添加虚拟网卡

4.1)为Guest系统新建虚拟网卡tap10,并加入网桥br0

[root@project ~]# tunctl  -t  tap10

Set ‘tap10‘ persistent and owned by uid 0

[root@project ~]# brctl  addif  br0  tap10

[root@project ~]# ifconfig  tap10  up

[root@project ~]# brctl   show

bridge name     bridge id               STP enabled     interfaces

br0             8000.32d37d9e08d3       no              em1

                                                        tap10

 

[root@project ~]# ifconfig  tap10      //使用ifconfig查看,多出了tap10网卡

tap10     Link encap:Ethernet  HWaddr 32:D3:7D:9E:08:D3  

          inet6 addr: fe80::30d3:7dff:fe9e:8d3/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:0 errors:0 dropped:0 overruns:0 frame:0

          TX packets:0 errors:0 dropped:34 overruns:0 carrier:0

          collisions:0 txqueuelen:500 

          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)


4.2)为虚拟桥接网卡tap10建立配置文件,重启系统时能随系统启动,并加入网桥 br0

[root@project ~]# cat  /etc/sysconfig/network-scripts/ifcfg-tap10 

DEVICE=tap10

TYPE=Tap

ONBOOT=yes

BRIDGE=br0


5安装vnc服务软件,客户机可通过宿主机的vnc桌面管理guest系统

[root@project ~]# yum  install  tigervnc  tigervnc-server  -y


6)使用 qemu-img 建立img映像文件,作为Guest系统的磁盘

[root@project ~]# qemu-img  create  -f qcow2  /data/KVM_img/mail_server1.img  40G

Formatting ‘/data/KVM_img/mail_server1.img‘, fmt=qcow2 size=42949672960 encryption=off cluster_size=65536 

[root@project ~]# qemu-img  info   /data/KVM_img/mail_server1.img 

image: /data/KVM_img/mail_server1.img

file format: qcow2

virtual size: 40G (42949672960 bytes)

disk size: 136K

cluster_size: 65536


说明:

qemu-img语法:

qemu-img  create  [-f fmt]  [-o options]  filename  [size]

-f  fmt 文件格式,有raw cow qcow vdi vmdk   bochs vpc vvfat qcow2等,常用qcow2

filename     文件名称

size  文件大小,根据需要自己指定

所有上条命令创建了一个格式为qcow2,大小为40G的映像文件mail_server1.img,其中40GGuest系统的最大可用空间,实际占用宿主空间根据实际使用量计算。

qemu-img   info   xxx.img  查看img映像的信息,格式,实际大小,创建时指定大小等。


7)安装kvmGuest系统

7.1)使用/usr/libexec/qemu-kvm 的命令行方式安装

[root@project ~]#/usr/libexec/qemu-kvm  -m 1024 -smp 2 -drive file=/data/KVM_img/mail_server1.img  -net nic,vlan=2,model=e1000 -net tap,vlan=2,ifname=tap10,script=no -boot d -cdrom /data/CentOS-6.3-x86_64-bin-DVD1.iso  -vnc 10.10.100.30:1  --daemonize

 

[root@project ~]# ps  aux|grep  kvm    //启动后查看kvm进程

root     16231  0.0  0.0      0     0 ?        S    10:28   0:00 [kvm-irqfd-clean]

root     18570 15.8  6.5 1425608 1074372 ?     Sl   13:21   1:51 /usr/libexec/qemu-kvm -m 1024 -smp 2 -drive file=/data/KVM_img/mail_server1.img -net nic,vlan=2,model=e1000 -net tap,vlan=2,ifname=tap10,script=no -boot d -cdrom /data/CentOS-6.3-x86_64-bin-DVD1.iso -vnc 10.10.100.30:1 --daemonize

 

[root@project KVM_img]# netstat  -tulnp |grep  qemu     //验证vncserver端口

tcp        0      0 10.10.100.30:5901           0.0.0.0:*                   LISTEN      3447/qemu-kvm

参数详解:

-m   1024分配的内存大小

-smp   2虚拟的cpu核心数

-drive  file=xxx.img指定作为虚拟磁盘的映像文件,可添加cache=writeback启用缓存,如 -drive  file=xxx.img,cache=writeback

 

-net  nic,vlan=2,model=e1000 -net tap,vlan=2,ifname=tap10,script=no

-net nic,vlan=2  初始化网络设备,将网络加入vlan2中,默认为vlan0

model= 指定模拟的网卡类型,主要有“i82551,i82557b,i82559er,rtl8139,e1000,virtio” 等;可以使用“# /usr/libexec/qemu-kvm -net nic,model=? ”查看支持的网卡类型;

-net tap    指定了使用桥接模式网络,ifname= 指定了使用的虚拟网卡;

script=    初始化桥接网卡的脚本,默认为/etc/qemu-ifupno为不执行脚本;

还可通过   -net nic,macaddr=52:54:00:DD:56:19 指定网卡的MAC地址

 

-boot   d指定启动介质,a—软盘、c—硬盘、d—光盘、n—网络,默认为硬盘启动。

如果使用网络引导安装,指定  -boot  n,查找网络安装源。

-cdrom/xx/xx.iso   使用光盘启动时,指定iso镜像文件

 

-vnc   x.x.x.x:1指定vncserver监听的 地址及端口,默认从5900开始,每个桌面加1,即  x.x.x.x:1  端口为 5900+1=5901

--daemonize      执行命令后,将命令作为守护进程放入后台,不占据终端


7.2)使用vnc客户端远程连接,执行Linux安装(linuxwindows客户端都可以),本处使用Linux下客户端  vncviewer

[root@mail Desktop]# vncviewer  10.10.100.30:1

TigerVNC Viewer for X version 1.0.90 - built Dec  8 2011 01:41:17

Copyright (C) 2002-2005 RealVNC Ltd.

Copyright (C) 2000-2006 TightVNC Group

Copyright (C) 2004-2009 Peter Astrand for Cendio AB

See http://www.tigervnc.org for information on TigerVNC.

 

Tue Aug  5 13:16:02 2014

 CConn:       connected to host 10.10.100.30 port 5901

 CConnection: Server supports RFB protocol version 3.8

 CConnection: Using RFB protocol version 3.8

 TXImage:     Using default colormap and visual, TrueColor, depth 24.

 CConn:       Using pixel format depth 24 (32bpp) little-endian rgb888

 CConn:       Using Tight encoding


7.3)连接到宿主机的vnc桌面后,显示光盘安装界面。安装方式同本地安装。(过程略)

bubuko.com,布布扣

安装完毕,重启系统后,关闭该Guest系统的进程,修改启动参数为硬盘,不然又会从光盘启动。修改方式如下面步骤。


8)管理Guest虚拟机系统

8.1启动Guest虚拟机,修改启动方式为硬盘 -boot c ,去除光盘资源

[root@project ~]#/usr/libexec/qemu-kvm  -m 1024 -smp 2 -drive file=/data/KVM_img/mail_server1.img  -net nic,vlan=2,model=e1000 -net tap,vlan=2,ifname=tap10,script=no -boot c  -vnc 10.10.100.30:1  --daemonize


8.2)将上面启动Guest系统的命令保存为脚本,如 start_kvm_mailserver1.sh,关闭系统后执行该脚本可以直接启动Guest系统。

 

8.3再次通过 vncviewer 客户端连接系统,Guest系统已启动到等待登陆状态

bubuko.com,布布扣

8.4)登陆系统,配置好网络地址、iptables 防火墙策略、将SELinux 设置为disabled,重启系统,然后就可以通过ssh方式登陆系统了。

KVM虚拟机安装管理——qemu-kvm方式,布布扣,bubuko.com

KVM虚拟机安装管理——qemu-kvm方式

标签:virtual   qemu-kvm   kvm   

原文地址:http://wuwei5460.blog.51cto.com/2893867/1536093

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!