• AWS的虚拟化技术


    AWS的虚拟化技术

    提到aws的底层的虚拟化的技术的时候,大家可能总是能看到这张图。
    但是我一直没有看的太懂,于是今天花点时间仔细看看了。
    这里详细解释一下。
    aws EC2的虚拟技术进化先解释一下图中的术语:
    上面颜色部分由于我是色盲所以不说颜色了,下面的颜色的性能最差,上面颜色的性能最高

    VM:虚拟机 HW:硬件
    VS:软件虚拟化 VH:硬件虚拟化 P:半虚拟化,没有包含所有的组合
    SR-IOV(net):网络组件的硬件虚拟化技术,ixgbe/ena driver SR-IOV(store):存储组件的硬件虚拟化技术 nvme driver

    第一条不是aws使用的技术,作者列到这里只是为了对比。
    第二条是虚拟机上的宿主机软件需要修改和适配,也就是说宿主机是能知道自己是在虚拟环境下允许的,这时候还没有Intel VT-x, AMD-V之类的虚拟机特权指令
    第三条就是使用了Intel VT-x, AMD-V特权指令,硬件支持了CPU和内存的虚拟化
    第四条增加了中断和计时器的半虚拟化
    第五条在第四条的基础上加了网络的硬件虚拟化技术SR-IOV
    第六条在第五条的基础上提供了存储的硬件虚拟化技术SR-IOV
    第七条就是aws现在使用的Nitro系统,把缩减的kvm封到专有硬件中去,实现虚拟机的可以打到裸机性能。

    这里先说一下SR-IOV的技术:

    由于VT-x技术只是提供了CPU和内存的虚拟化支持,所以虚拟机访问网卡或者存储的时候,必须经过xen的虚拟交换机来中转,降低了效率。
    在这里插入图片描述
    在这里插入图片描述
    aws刚开始使用的时候Intel 82599 网卡达到这个功能,最后收购了以色列的一家公司 Annapurna Labs,把网卡的速度提高到了25Gbps。
    在这里插入图片描述
    Nitro的hypervisor就是缩减版本的kvm,只负责管理CPU和内存,其他的事情都有自己的专业硬件去管理,通过控制器来协调和通信。
    在这里插入图片描述

    使用Nitro之后的性能提示

    在这里插入图片描述2017年的时候,hypervisor还是放在和和宿主机一起的服务器上
    在这里插入图片描述2018年的时候hypervisor也被放到了硬件中去了。
    在这里插入图片描述在这里插入图片描述

    参考
    https://www.brendangregg.com/blog/2017-11-29/aws-ec2-virtualization-2017.html
    https://cloudierthanthou.wordpress.com/2014/11/20/ec2-enhanced-networking/
    https://medium.com/@paccattam/aws-enhanced-networking-an-overview-aee8a852cf5c
    https://cloud.tencent.com/developer/article/1452583
    https://twosixtech.com/running-thousands-of-kvm-guests-on-amazons-new-i3-metal-instances/

  • 相关阅读:
    爬虫技术对携程网旅游景点和酒店信息的数据挖掘和分析应用
    boost 之计算机的时间-chrono
    【BOOST C++ 13 并行编程】(2) 同步线程
    k8s部署elk8 直接通过logstash获取日志文件方式
    web前端设计与开发期末作品 旅游咨询网站 HTML5期末大作业 HTML+CSS旅游社网站5个页面 关于制作网页主题论述
    VRChat 2024年裁员原因与背景深度分析
    LCR 147.最小栈
    QtWebassembly遇到的一些报错问题及解决方案
    在线BLOG网|基于springboot框架+ Mysql+Java+JSP技术的在线BLOG网设计与实现(可运行源码+数据库+设计文档)
    JavaEE初阶:HTML
  • 原文地址:https://blog.csdn.net/lantianjialiang/article/details/125621382