文章目录

  • 虚拟化基础
  • 虚拟机
  • 虚拟化类型
  • 虚拟化技术分类
  • Intel VT-x
  • 云计算
  • 云计算分类
  • 云计算分层



虚拟化基础

传统的物理机部署方案
服务器选型及采购
IDC选择
服务器系统选择、系统安装、上架
应用规划及部署
域名选择及注册
DNS映射
测试外网访问
传统数据中心面临的问题:
服务器资源利用率低下,CPU、内存等不能共享
资源分配不合理
初始化成本高
自动化能力差
集群环境需要大量的服务器主机

虚拟化
在计算机技术中,虚拟化(Virtualization)是一种资源管理技术,是将计算机的各种实体资源(CPU、内存、磁盘空间、网络适配器等),予以抽象、转换后呈现出来并可供分割、组合为一个或多个计算机配置环境,并重新分割、重新组合,以达到最大化合理利用物理资源的目的。
虚拟化可以提高 IT 敏捷性、灵活性和可扩展性,同时大幅节约成本,实现更高的工作负载移动性、更高的性能和资源可用性、自动化运维 - 这些都是虚拟化的优势,虚拟化技术可以使 IT 部门更轻松地进行管理以及降低拥有成本和运维成本。

虚拟化的优势:
降低资金成本和运维成本。
最大限度减少或消除停机。
提高 IT 部门的工作效率、效益、敏捷性和响应能力。
加快应用和资源的调配速度。
提高业务连续性和灾难恢复能力。

虚拟机

虚拟计算机系统称为“虚拟机”(VM),它是一种严密隔离且内含操作系统和应用的软件容器。每个自包含虚拟机都是
完全独立的。通过将多台虚拟机放置在一台计算机上,可仅在一台物理服务器或“主机”上运行多个操作系统和应
用,名为“hypervisor”的精简软件层可将虚拟机与主机分离开来,并根据需要为每个虚拟机动态分配计算资源。

虚拟机的主要特性

  1. 共享硬件
    可在一台物理机上运行多个操作系统。
    可在虚拟机之间分配系统硬件资源。
  2. 相互隔离
    各虚拟机之间相互隔离互不影响。
  3. 封装
    可将虚拟机的完整状态保存到文件中。
    移动和复制虚拟机就像移动和复制文件一样轻松。
  4. 独立于硬件
    可将任意虚拟机调配或迁移到其他理服务器上。

虚拟化类型

  1. 服务器虚拟化
    服务器虚拟化支持将多个操作系统作为高效的虚拟机在单个物理服务器上运行。主要优势包括:
    提升 IT 效率
    降低运维成本
    更快地部署工作负载
    提高应用性能
    提高服务器可用性
    消除服务器数量剧增情况和复杂性
  2. 网络虚拟化:
    通过软件定义网络,即网络的创建不再依赖于物理设备,如公有云厂商允许用户自己创建新的网络,在kubernetes、openstack中都会使用到网络虚拟化。
  3. 桌面虚拟化:
    将桌面部署为代管服务使 IT 组织能够更快地响应不断变化的工作场所需求和新出现的机会。还可以将虚拟化桌面和应用快速、轻松地交付给分支机构、外包和离岸员工以及使用 iPad 和 Android 平板电脑的移动员工。
  4. 应用虚拟化:
    将软件虚拟化,比如 office 365
  5. 存储虚拟化:
    SAN(基于磁盘)/NAS(NFS/Samba)/GlusterFS/ceph等
  6. 库虚拟化
    在linux上运行windows 程序使用 wine,在mac系统运行windows程序使用CrossOver等
  7. 容器虚技术
    被称为下一代虚拟化技术,典型的就是docker、Linux Container(LXC)、pouch

虚拟化技术分类

  1. 模拟器:
    在一个host之上通过虚拟化模拟器软件,模拟出一个硬件或者多个硬件环境,每个环境都是一个独立的虚拟机,CPU、IO、内存等都是模拟出来的,可以在宿主机模拟出不同于当前物理机CPU指令集的虚拟机,比如可以在Windows 模拟出mac OS、unix系统,比较出名的模拟器有:pearpc、QEMU、Bochs。
  2. 全虚拟机化 full virtualization / 准虚拟化 native virtualization
    全虚拟化/准虚拟化不做CPU和内存模拟,只对CPU和内存做相应的分配等操作,全虚拟化需要物理硬件的支持,比如需要CPU必须支持并且打开虚拟化功能,例如Intel 的 Intel VT-X/EPT,AMD的AMD-V/RVI,以在CPU 层面支持虚拟化功能和内存虚拟化技术,因此完全虚拟化是基于硬件辅助的虚拟化技术。

全虚拟化软件:

vmware workstation
vmware esxi
paralles desktop
KVM
Microsoft Hyper-V
VirtualBox
  1. 半虚拟化 para virtualization
    半虚拟化要求guest OS 的内核是知道自己运行在虚拟化环境当中的,因此guest OS的系统架构必须和宿主机的系统架构相同,并且要求对guest OS的内核做相应的修改,因此半虚拟化只支持开源内核的系统,不支持闭源的系统,比较常见的半虚拟化就是早期版本的XEN,但是Xen 从其3.0 版本开始,可以支持利用硬件虚拟化技术的支持,实现了完全虚拟化,可以在其平台上不加修改的直接运行如Linux/Windows 等系列的操作系统,使得系统具备了更好的兼容性。

半虚拟化软件:
Xen

直接运行到物理机:
vmware esxi
rhev hypervisor

需要运行到操作系统:
KVM
XEN
vmware workstation

Intel VT-x

  1. Intel VT-x:
    可以让一个CPU工作起来像多个CPU在并行运行,从而使得在一台物理服务器内可以同时运行多个操作系统,能够降低(甚至消除)多个虚拟机操作系统之间的资源争夺和限制,从硬件上极大地改善虚拟机的安全性和性能,有助于提高基于软件的虚拟化解决方案的灵活性与稳定性,此外,IntelVT-x具备的虚拟机迁移特性还可为IT投资提供有力保护,并进一步提高故障切换、负载均衡、灾难恢复和维护的灵活性。

Intel VT Flex Priority(灵活优先级):当处理器执行任务时,往往会收到其它设备或应用发出的请求或“中断”命令。为了最大程度减少对性能的影响,处理器内的一个寄存器专用来监控任务优先级,只有优先级高于当前运行任务的请求或“中断”才被及时处理。

Intel VT Flex Migration(灵活迁移):虚拟化能够在无需停机的情况下,将运行中的虚拟机在物理服务器之间进行迁移。借助此项技术,管理程序能够在迁移池内的所有服务器中建立一套一致的指令,实现工作负载的无缝迁移

Intel VT Extended Page Tables(EPT,扩展页表):为了降低实现内存虚拟化的难度和提升内存虚拟化的性能,Extended Page Tables直接在硬件上支持虚拟机内存的逻辑地址->虚拟机内存的物理地址->物理服务器内存的物理地址的两次转换。

  1. IntelVT-d:
    Intel VT-d技术支持直接I/O访问,虚拟机创建好之后,数据即可直接在虚拟机与为其分配的I/O设备之间进行传输,
    这样就加快了I/O的流动,减少VMM活动及服务器处理器的负载
  2. Intel VT-c:
    Intel VT-c技术:支持网络连接的Intel虚拟化技术,包括虚拟机设备队列(VMDq)、虚拟机直接互连(VMDc)

云计算

云计算(Cloud Computing)是概念最早是由Google 前首席执行官 埃里克•施密特(Eric Schmidt)在2006 年8 月9日的搜索引擎大会上首次提出的一种构想,而“云计算”就是这种构想的代名词,云计算以虚拟化为基础,以网络为中心,为用户提供安全、快速、便捷的数据存储和网络计算服务,包括所需要的硬件、平台、软件及服务等资源,而提供资源的网络就被称为“云”。

云计算分类

  1. 公有云:比如阿里云/aws、azure、金山云、腾讯云等都属于公有云,每个人都可以付费使用,不需要自己关心底层硬件,但是数据安全需要考利。
  2. 私有云:在自己公司内部或IDC自建Openstack、VMware等环境
  3. 混合云:既要使用公有云,又要使用私有云,即自己的私有云的部分业务和公有云有交接,这部分称为混合云

云计算分层

IaaS:基础设施服务,Infrastructure as a service #自建机房 PaaS:平台服务,Platform-as-a-service #公有云上的Redis、RDS等服务,甚至是手机上的APP SaaS:软件服务,Software-as-a-service #企业邮箱、OA系统等可以通过浏览器直接访问

KVM虚拟化平台 对比 kvm虚拟化的优缺点_云计算