KVM虚拟机安装管理——qemu-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内存、8核CPU、4T硬盘

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

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


[[email protected] ~]# 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

[[email protected] ~]# 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 模块


[[email protected] ~]# lsmod  |grep  kvm

kvm_intel              52570   0

kvm                   314739  1 kvm_intel

3)宿主服务器桥接配置

3.1)安装网桥管理工具


[[email protected] ~]# yum  install  bridge-utils  tunctl  -y

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


[[email protected] ~]# cd  /etc/sysconfig/network-scripts

[[email protected] 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

[[email protected] network-scripts]# vim   ifcfg-em1

DEVICE="em1"

ONBOOT="yes"

BRIDGE=br0

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


[[email protected] ~]# /etc/init.d/network  restart

[[email protected] ~]# 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


[[email protected] ~]# brctl  show

bridge name   bridge id    STP enabled     interfaces

br0     8000.90b11c0d8014      no              em1

4)添加虚拟网卡

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


[[email protected] ~]# tunctl  -t  tap10

Set ‘tap10‘ persistent and owned by uid 0

[[email protected] ~]# brctl  addif  br0  tap10

[[email protected] ~]# ifconfig  tap10  up

[[email protected] ~]# brctl   show

bridge name     bridge id               STP enabled     interfaces

br0             8000.32d37d9e08d3       no              em1

tap10

[[email protected] ~]# 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


[[email protected] ~]# cat  /etc/sysconfig/network-scripts/ifcfg-tap10

DEVICE=tap10

TYPE=Tap

ONBOOT=yes

BRIDGE=br0

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


[[email protected] ~]# yum  install  tigervnc  tigervnc-server  -y

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


[[email protected] ~]# 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

[[email protected] ~]# 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,其中40G为Guest系统的最大可用空间,实际占用宿主空间根据实际使用量计算。

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

7)安装kvm的Guest系统

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


[[email protected] ~]#/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

[[email protected] ~]# 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

[[email protected] 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-ifup,no为不执行脚本;

还可通过   -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安装(linux与windows客户端都可以),本处使用Linux下客户端  vncviewer


[[email protected] 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桌面后,显示光盘安装界面。安装方式同本地安装。(过程略)

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

8)管理Guest虚拟机系统

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


[[email protected] ~]#/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系统已启动到等待登陆状态

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

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

时间: 2024-10-14 06:02:22

KVM虚拟机安装管理——qemu-kvm方式的相关文章

KVM 介绍(6):Nova 通过 libvirt 管理 QEMU/KVM 虚机 [Nova Libvirt QEMU/KVM Domain]

学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分配和 SR-IOV (5)libvirt 介绍 (6)Nova 通过 libvirt 管理 QEMU/KVM 虚机 1. Libvirt 在 OpenStack 架构中的位置 在 Nova Compute 节点上运行的 nova-compute 服务调用 Hypervisor API 去管理运行在该

KVM(六)Nova 通过 libvirt 管理 QEMU/KVM 虚机

1. Libvirt 在 OpenStack 架构中的位置 在 Nova Compute 节点上运行的 nova-compute 服务调用 Hypervisor API 去管理运行在该 Hypervisor 的虚机.Nova 使用 libvirt 管理 QEMU/KVM 虚机,还使用别的 API 去管理别的虚机.        libvirt 的实现代码在 /nova/virt/libvirt/driver.py 文件中. 这里是 OpenStack Hypervisor Matrix. 这里是

KVM 虚拟机基本管理及常用命令

KVM的基本管理 1.查看KVM虚拟机配置文件 #Kvm虚拟机默认配置文件位置 [[email protected] qemu]# pwd /etc/libvirt/qemu [[email protected] qemu]# ll total 12 -rw------- 1 root root 3863 Nov 6 17:26 CentOS6.5.xml -rw------- 1 root root 3771 Nov 7 00:57 CentOS6u7.xml -rw------- 1 roo

KVM虚拟机安装与使用

一.安装KVM 安装KVM模块.管理工具.libvirt 命令行安装 [[email protected] ~]# yum install -y kvm virt-manager libvirt 注: KVM:虚拟化模块 virt-manager:KVM图形化管理模块 libvirt: 虚拟化服务 扩展:RHEL上可以安装vmware吗?有linux版本么?   可以的 linux下有vmware安装包,而且是rpm包,安装很容易.rpm -ivh vmware-xxx.rpm 查看 [[ema

kvm虚拟机日常管理与配置

1.  查看KVM虚拟机配置文件及运行状态 (1) KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/ autostart目录是配置kvm虚拟机开机自启动目录.    (2) virsh命令帮助 # virsh -help 或直接virsh命令和,再执行子命令.如下所示. [[email protected] ~]# virsh 欢迎使用 virsh,虚拟化的交互式终端. 输入:'help' 来获得命令的帮助信息   'quit' 退出 virsh # help (3) 查看k

KVM虚拟化笔记(四)------kvm虚拟机日常管理

一,查看KVM虚拟机配置文件及运行状态 1,KVM虚拟机默认的配置文件路径:/etc/libvirt/qemu/ 而autostart目录是配置kvm虚拟机开机自启动的目录. [[email protected] qemu]# cd /etc/libvirt/qemu [[email protected] qemu]# ll total 24 drwxr-xr-x 2 root root 4096 Feb  2 15:03 autostart      ###开机自启动目录   -rw-----

KVM虚拟机基本管理

之前一篇文章详细介绍了KVM虚拟机的安装配置http://msiyuetian.blog.51cto.com/8637744/1707539 接下来这篇文章主要介绍KVM虚拟机的基本管理 五.virsh 命令常用操作 1.开启并登入子机[[email protected] ~]# virsh start tpp1 [[email protected] ~]# ssh 192.168.0.10 也可以在开启的同时进入子机:[[email protected] ~]# virsh start tpp

在KVM虚拟机安装liuux和win7

#!/bin/sh#mkdir /mnt/iso#mkdir /mnt/cdrommount -o loop /media/Linux.v6-X86_64.iso /mnt/cdrom/rpm -ivh /mnt/cdrom/Packages/lrzsz-0.12.20-27.1.el6.x86_64.rpmrpm -ivh /mnt/cdrom/Packages/tigervnc-server-1.0.90-0.15.20110314svn4359.el6.x86_64.rpmmkdir /e

kvm虚拟机安装

#first,you should create virtuall disk qemu-img create -f qcow2 /kvm/centos.img 30G #second install system virt-install --connect=qemu:///system --name=centos --ram=500 --vcpus=2 --cdrom=/media/iso/CentOS-6.5-x86_64-bin-DVD1.iso --os-variant=rhel6 --