KVM虚拟化系统解决方案--KVM虚拟化(基于飞腾FT2000+/64)

【写在前面】 飞腾开发者平台是基于飞腾自身强大的技术基础和开放能力,聚合行业内优秀资源而打造的。该平台覆盖了操作系统、算法、数据库、安全、平台工具、虚拟化、存储、网络、固件等多个前沿技术领域,包含了应用使能套件、软件仓库、软件支持、软件适配认证四大板块,旨在共享尖端技术,为开发者提供一个涵盖多领域的开发平台和工具套件。 点击这里开始你的技术升级之旅吧

image.png

本文分享至飞腾开发者平台《FT-2000_64_KVM虚拟化系统解决方案--KVM虚拟化》

1 介绍

  本文主要介绍基于硬件虚拟化的全虚拟化解决方案(KVM)以及基于FT-2000+/64服务器搭建KVM虚拟化环境。

2 KVM简介

  KVM,即基于硬件虚拟化的全虚拟化解决方案。在kvm架构中,虚拟机的实现为常规的Linux进程,每一个vcpu对应一个宿主机的线程。详见参考地址:https://baike.baidu.com/item/KVM/522955?fr=aladdin

image.png

  KVM虚拟机主要有以下几个特性,包括内存管理、存储、设备驱动程序、可伸缩性、动态迁移等,详见参考地址:https://blog.csdn.net/weixin_67901533/article/details/124163922

2.1 KVM模块

  目前,KVM支持多种处理器平台,它支持最常见的的Intel/AMD的X86和X86_64平台,也支持PowerPC、ARM等平台。详见地址:
https://www.cnblogs.com/youcoding/p/15330714.html

  KVM仅支持硬件辅助的虚拟化,所以打开并初始化系统硬件以支持虚拟机的运行,是KVM模块的职责所在。KVM模块会创建一个/dev/kvm设备,并等待来自用户空间的命令。这个设备就是与用户空间QEMU进行交互的设备。

  除了CPU虚拟化外,内存虚拟化也是由KVM模块进行管理,但是,外设的模拟一般不由KVM负责。而是由用户空间的QEMU负责。

2.2 QEMU用户态设备模拟

  QEMU原本就是一个开源的虚拟机软件项目,而不是KVM虚拟化软件的一部分。与KVM不同,QEMU最初实现的虚拟机是一个纯软件模拟实现,通过二进制翻译来实现虚拟化客户机中的CPU指令模拟,所以性能比较低。但是,其优点是跨平台。详见参考地址:
https://www.cnblogs.com/youcoding/p/15330714.html

  QEMU通过与KVM的密切结合,从而极大地提高了虚拟机的性能。总之,QEMU既是一个功能完整的虚拟机监控器,也在QEMU/KVM的软件栈中承担设备模拟的工作。

2.3 KVM上层管理工具

  下面是当下kvm/qemu最流行的几个管理工具,主要包括libvirt、virsh、virt-manger、OpenStack,各管理工具的特点可以见如下参考地址:

https://www.cnblogs.com/youcoding/p/15330714.html

3 搭建KVM环境

3.1 硬件环境

  飞腾FT-2000+/64机器两台用来搭建KVM环境(后面作为迁移时使用),硬件配置:

  主频:2.2 GHz

  内存条: 8*16GB DDR4(三星 2Rx8 PC3-1280P-11-11-11)

  操作系统:CentOS7- arm64

  内核:linux-4.19.1编译

  文件系统:ext4

  硬盘:1T 希捷7200转机械硬盘(至少分为两个分区)

  网卡: intel 82745L pcie网卡

  飞腾FT-1500A/16机器一台用来编译内核和后面作为动态迁移时的nfs服务器用,硬件配置:

  主频:1.5 GHz

  内存条: 2*4GB DDR3

  操作系统:麒麟操作系统4.0.2

  文件系统:ext4

  硬盘:1T 希捷7200转机械硬盘(至少分为两个分区)

  网卡: intel 82745L pcie网卡

3.2 虚拟化相关内核配置

  内核移植、系统移植请参考《飞腾FT-2000+/64系统开发指南》文档。

[\*] Virtualization ---\>
[\*]  Kernel-based Virtual Machine (KVM) support
      <M>  Host kernel accelerator for virtio net
      <M>  vhost virtio-vsock driver
      [*]  Cross-endian support for vhost
      kvm模块、新的vhost支持以及virtio支持,都选上。
Device Driver----->
      [*] Virtualization drivers ----
      [*] Virtio drivers --->
<*>  PCI driver for virtio devices
      [*]   Support for legacy virtio draft 0.9.X and older devices
      <*>  Virtio balloon driver
      <M>  Virtio input driver
      <*>  Platform bus driver for memory mapped virtio devices
      [*]   Memory mapped virtio devices parameter parsing
      虚拟化驱动,virtio驱动支持,都选上。
SCSI device support------>
[*] SCSI low-level drivers --->
<M>  virtio-scsi support
virtio-scsi设备驱动选上。
[*] Block devices --->
      <M>  Virtio block driver
      [*]   SCSI passthrough request for the Virtio block driver
      virtio-block设备驱动选上。
 network driver support-------->
      [*]  Network core driver support
      <*>   Universal TUN/TAP device driver support
      <M>   Virtio network driver
      TAP设备和virtio网卡驱动选上。
 Character devices --->
      <*> Virtio console
      virtio 串口选上。
 Graphics support --->
      <M> Virtio GPU driver
      virtio-gpu支持选上。
 [*] IOMMU Hardware Support --->
      Generic IOMMU Pagetable Support --->
                    [*] ARMv7/v8 Short Descriptor Format
             [*]  IOMMU passthrough by default
      [*]  ARM Ltd. System MMU (SMMU) Support
      [*]  ARM Ltd. System MMU Version 3 (SMMUv3) Support
      选上对IOMMU的支持。

3.3 KVM虚拟化环境搭建结果验证

  使用dmesg相关命令,验证KVM环境搭建成功。

image.png

推荐阅读

欢迎广大开发者来飞腾开发者平台获取更多前沿技术文档及资料

如开发者在使用飞腾产品有任何问题可通过在线工单联系我们


版权所有。飞腾信息技术有限公司 2023。保留所有权利。

未经本公司同意,任何单位、公司或个人不得擅自复制,翻译,摘抄本文档内容的部分或全部,不得以任何方式或途径进行传播和宣传。

商标声明

Phytium和其他飞腾商标均为飞腾信息技术有限公司的商标。

本文档提及的其他所有商标或注册商标,由各自的所有人拥有。

注意

本文档的内容视为飞腾的保密信息,您应当严格遵守保密任务;未经飞腾事先书面同意,您不得向任何第三方披露本文档内容或提供给任何第三方使用。

由于产品版本升级或其他原因,本文档内容会不定期进行更新。除非另有约定,本文档仅作为使用指导,飞腾在现有技术的基础上尽最大努力提供相应的介绍及操作指引,但飞腾在此明确声明对本文档内容的准确性、完整性、适用性、可靠性的等不作任何明示或暗示的保证。

本文档中所有内容,包括但不限于图片、架构设计、页面布局、文字描述,均由飞腾和/或其关联公司依法拥有其知识产权,包括但不限于商标权、专利权、著作权等。非经飞腾和/或其关联公司书面同意,任何人不得擅自使用、修改,复制上述内容。

  • 22
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值