Chinaunix首页 | 论坛 | 博客
  • 博客访问: 721333
  • 博文数量: 71
  • 博客积分: 4328
  • 博客等级: 上校
  • 技术积分: 2052
  • 用 户 组: 普通用户
  • 注册时间: 2012-06-27 21:14
文章存档

2015年(1)

2013年(25)

2012年(45)

分类: 虚拟化

2012-07-09 23:20:28

virtio

介绍完virtualbox的网卡芯片类型后,接下来我们专门说明下virtualbox支持的两种比较特别的网卡类型。

第一种 Paravirtualized network adapter (virtio-net)

首先我们截取virtualbox官方文件中的一段介绍性文字:

n The "Paravirtualized network adapter (virtio-net)" is special. If you select this, then VirtualBox does not virtualize common networking hardware (that is supported by common guest operating systems out of the box). Instead, VirtualBox then expects a special software interface for virtualized environments to be provided by the guest, thus avoiding the complexity of emulating networking hardware and improving network performance. Starting with version 3.1, VirtualBox provides support for the industry-standard "virtio" networking drivers, which are part of the open-source KVM project.

n The "virtio" networking drivers are available for the following guest operating systems:

n Linux kernels version 2.6.25 or later can be configured to provide virtio support; some distributions also back-ported virtio to older kernels.

n For Windows 2000, XP and Vista, virtio drivers can be downloaded and installed from the KVM project web page.

1.大家可以看到virtualbox支持企业级虚拟化技术:“网卡半虚拟化”。在企业后端数据池(database pool)的连接上,一般我们不会使用“完全虚拟化的硬盘和网卡”。为什么会这样?因为后端数据的连接需要稳健的速度、数据读写并发一定要高且稳,为了让应用服务器和后端独立存储之间更加顺畅的交互数据。“半虚拟化”技术出现了。

在完全虚拟化中,“guest os”运行于物理机器上的 hypervisor 上,“guest os”并不知道它已被虚拟化,并且不需要任何更改就可以在该配置下工作。相反,在半虚拟化中,“guest os”不仅知道它运行在 hypervisor 之上,还包含让“guest os”更高效地过渡到 hypervisor 的关键代码。

在完全虚拟化模式中,hypervisor 必须模拟设备硬件,它是在会话的最低级别进行模拟(例如,网络驱动程序)。尽管在该抽象中模拟很干净,但它同时也是最低效、最复杂的。在半虚拟化模式中,“guest os”和 hypervisor 能够共同合作,让模拟更加高效,半虚拟化的缺点是OS知道它被虚拟化,并且需要修改才能工作。

2.如果是linux发行版,只要其内核版本是2.6.25或以后的版本,那默认情况下都已经打开了对“virtio”功能的支持。

3.如果是windows系统,那就去“KVM project”项目主页下载驱动包即可。

 

 

【实验二】配置virtio网卡详细步骤(linux)

看完了windows系统下的“virtio网卡”配置,接下来我们演示在linux发行版下的virtio配置。

第一步:首先在virtualbox中安装一个linux发行版,且把virtualbox给“guest os”提供的“guest additions”一并安装;具体的安装过程这里就不再赘述。

这里我们安装centos6.0这套linux发行版,可以看到其内核的版本是2.6.32,所以“virtio”驱动是默认被开启的;

wps_clip_image-7318

第二步:接着我们在“centos”这台VM关闭的状态下,打开【setting】对话框,切换到【network】页签:首先选择虚拟网络的类型,这些大家根据自己的网络环境选择适合的即可,我们主要在这里展开【advanced】高级选项,把【adapter type】修改成“Paravirtualized network(virtro-net)”即可;

wps_clip_image-21191

第三步:接着我们加电打开这台VM,大家通过linux命令lsmod可以看出cnetos6.0这台VM的内核默认是支持virtio驱动的;

wps_clip_image-18972

第四步:我们可以通过ifconfig命令看到,cnetos已经把对应的tcp\ip信息分配给了eth0这颗“半虚拟化网卡”;

wps_clip_image-3221

第五步:我们也可以使用modinfo命令显示virtio的详细资讯;

wps_clip_image-10544

 

更加详细的内容,敬请期待本人即将上市的呕心力作 《virtualbox完全学习手册》。

姜皓,网络id 小耗子老师,精通linux服务器管理、windows server 服务器管理、cisco路由器管理、虚拟化(vmware workstation、vsphere、virtualbox)等内容。
现就职于西北某国企。

阅读(3877) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~