VMware vSphere Foundation 是 VMware 的企业级工作负载平台,无论是传统的虚机应用还是现代的容器应用,从普通应用到 AI 模型,都可以在这个平台上稳定可靠地运行。vSphere Foundation 主要包含了两大组件,为用户提供一个可靠的虚拟化工作负载运行环境。
- vSphere 企业增强版:这是 VMware 的企业级工作负载平台,内含 VMware 的容器应用平台 Tanzu Kubernetes Grid (TKG) 和 vCenter Server。
- Aria Suite 标准版:主要包含了运维工具 Aria Operations (原来叫 vRealize Operations) 和日志管理工具 Aria Operations for Logs (原来叫 vRealize Log Insight)。
vSphere 是业界最早出现的虚拟化平台,从2001年发布第一代服务器虚拟化软件开始,经过多年的发展,它的功能日趋完善,始终引领着虚拟化技术的发展,推出了如虚机动态迁移技术 vMotion、虚拟对称式多处理技术 vSMP、动态资源调配 DRS (Distributed Resource Scheduler)、容错计算 Fault Tolerance 等,成为行业的标杆。它的主要优势体现在以下几个方面:
- 稳定可靠:作为企业级的基础架构,首先要考虑的就是平台的稳定性和可靠性。vSphere 最大的优势就是稳定可靠,我们曾经在用户那里看到连续运行了7年的 vSphere 服务器,这也是用户选择 vSphere 的最重要考量。
- 完善的配套方案:VMware 是业界最早提出虚拟化的厂商,经过多年的发展,在 vSphere 平台上也衍生出了各种数据中心配套解决方案,如分布式存储 vSAN、网络和安全方案 NSX、高可用和灾备、运维管理、IT 自动化等各种产品和方案。
- 成熟的生态:vSphere 是一个非常主流的操作系统平台,几乎所有的硬件厂商在开发新产品时都要求支持 vSphere 平台,这可以保证 vSphere 平台上用户可以用到最新的硬件(如高速网卡、磁盘控制器、高速 SSD 等)来提升系统性能。不仅仅是硬件,还有众多的软件厂商在基于 VMware 的平台开发各种增值解决方案,提供诸如备份、灾备、安全等方案来补充 vSphere 的生态环境。
支持各种工作负载
vSphere 虚机可以支持几乎所有基于 x86 平台的应用,包括数据库、ERP、VDI、应用服务器、AI 等各种类型的应用。vSphere 是一个企业级的虚拟化平台,全球有超过8500万个工作负载运行在 vSphere 服务器上,这些 vSphere 环境运行在数据中心、边缘环境或是云端 ,承载着数百万企业和单位的业务。
VMware 提供了 P2V (Physical To Virtual) 工具 vCenter Converter 来帮助用户把现有的物理服务器上运行的应用转换成 vSphere 虚机格式,这些遗留应用几乎不需要做任何修改就可以顺利地转到 vSphere 虚拟化平台上去运行,大大简化了 IT 管理员的工作,降低了应用转到 vSphere 平台的难度。
除了虚机之外,vSphere 从版本7开始也原生支持容器和 Kubernetes。vSphere 平台原生支持容器给运维团队带来了运维管理上的便利,不需要特别为了支持容器应用,而另外搭建和维护一套容器运行环境。运维团队只需要遵循原有的虚拟化运维流程,利用原有的 vCenter / Aria 工具来对容器环境进行管理维护,这样可以很自然地把 vSphere 虚拟化环境拓展到容器应用,没有任何额外的风险和压力。
NVIDIA / AMD / Intel 各种型号的 GPU 都支持 vSphere,并且支持直通 (pass-through) 和 vGPU 等多种 GPU 共享模式,可以有效地帮助 vSphere 环境中的 AI 应用提升训练和推理的速度。运行 AI 应用需要一个非常灵活的基础架构,需要针对不同的模型、工具、数据集和参数进行大量的试验,底层的基础架构需要进行快速改变 (例如不同的操作系统、Python版本等)。这些挑战都是虚拟化环境所擅长的领域,能够帮助用户节省大量的时间和精力,vSphere 也是 AI 应用一个理想的运行平台。
高性能
使用虚拟化之前大部分人都会有一种疑虑,应用在虚拟化平台上运行会导致性能下降吗?现代的 CPU 已经从硬件层面支持虚拟化,因为虚拟化而造成的性能损失可以忽略不计。现代的 x86 服务器普遍采用了NUMA (Non-Uniform Memory Access,非一致性内存访问) 架构,由 CPU 来直接管理和访问内存,其特点是访问 CPU 直接管理的内存快,访问其他 CPU 管理的内存要慢一些。vSphere 针对 NUMA 架构做了特别的优化,它在进行虚机进程调度时,会把需要共享内存的进程尽量放在同一个 CPU 上来运行,这样有助于提高系统性能。在大部分的场景下,vSphere 虚拟化环境跟物理机环境下的运行性能几乎相等;因为调度优化的缘故,在某些场景下 vSphere 环境的性能甚至还要高上几个百分点。
vSphere 也会从资源分配上来尽可能为虚机创造一个良好的运行环境,从而保证虚机的性能。
- vSphere 中的 DRS (Distributed Resource Scheduler) 功能:用于在 vSphere 集群内部保持负载均衡,如果有服务器过于繁忙的话,就把它上面运行的部分虚机迁移到其他比较空闲的服务器上去,从而使整个集群内的服务器都运行在一个工作负载和资源消耗比较均衡的状态。
- Aria Operations 中的 Workload Placement (工作负载放置) 功能:它也是利用 DRS 来实现的,区别在于 Workload Placement 则是更高一级的调度功能,它可以跨集群来迁移虚机,实现多个集群之间的负载均衡。
利用这些虚机调度功能可以让每一台服务器都均衡地承担工作负载,这样不容易造成资源申请的竞争,从而保证每个虚机的性能;同时也可以做到把关键应用自动地调度到配置最高的服务器上去运行,以保证关键应用的性能表现。
除了充分利用 GPU 来加速 AI 应用和虚拟桌面中的 3D 设计软件以外,vSphere 8 中还新增了一个功能 Distributed Services Engine (分布式的服务引擎) 来利用智能网卡 (SmartNIC) 上的 DPU (ARM CPU) 来实现加速。在智能网卡的 DPU 上运行 ARM 版的 ESXi (称之为分布式的服务引擎),然后把 vSphere 操作系统的一些功能 (目前实现的是 NSX 虚拟化网络和安全部分的功能) 卸载 (offload) 到智能网卡上运行,从而大大减轻主机 CPU 的负担,让宝贵的 CPU 资源花在应用上,从而提升系统整体性能。
高可用 HA
很多应用支撑着企业的的关键业务,它们是不能够随便停机的,需要为这些关键应用提供高可用 HA (High Availability) 方案。vSphere也为关键应用提供了多种高可用方案设计,用户可以根据业务的需要来进行选择。
首先 vSphere 集群就是一种天然的高可用平台,把虚机和数据都存放在共享存储里就可以实现高可用,共享存储可以是基于 vSAN 的分布式存储,也可以是一个共享的外部存储,为虚机和数据提供冗余的存储保护。如果某一台服务器宕机了,它上面的虚机就可以在另外一台服务器上重新启动起来,在短时间重新恢复应用服务。这个时间间隔就是 RTO (Recovery Time Objective) 指标,它定义的是能容忍的恢复时间。
如果要求 RTO 为零, vSphere 还有一个零宕机的功能叫 Fault Tolerance (FT)。FT 技术的工作原理是把需要保护的虚机和备份虚机运行在两台服务器上,通过 vLockstep 技术来保证两台虚机的同步运行,可以实现主备虚机的数据和运行状态的完全一致。当主服务器发生故障时,备份虚机可以马上接管,从而实现 RTO和 RPO (Recovery Point Objective,能容忍的最大数据丢失量) 目标都为零的最高可用等级。
上面两种是主机级的 HA 方案,VMware 还有站点级的高可用方案 (通常叫灾备方案)。
最基本的灾备方案是 LSR (Live Site Recovery,原来叫 Site Recovery Manager),它可以把受保护的虚机实时备份到另一个站点,当受保护站点发生灾难时,在备份站点可以把备份虚机启动起来,实现应用的不间断。这种方案最高可以实现 RPO 目标为1分钟的灾备。
另外一种更加高级的灾备方案是利用 vSAN 延伸集群 (Stretch Cluster) 来实现双活数据中心。在位于两个站点的数据中心内分别部署一套 vSAN 集群,然后把这两个集群配置成一个 vSAN 延伸集群。可以为关键应用定义最高等级的存储策略为跨站点数据保护,即关键应用的数据同时保存在两个站点。两站点平时都可以正常运行各种应用,实现双活;当任一站点发生灾难时,另一站点可以利用备份数据快速启动受保护的关键应用。
上面提到的 vSAN 和 LSR 都没有包含在 vSphere Foundation 产品中, 它们是以附加功能 (Add-on) 的方式提供的,用户可以根据自己选定的 HA 方案来购买 vSphere Foundation 以及相应的附加功能。
高效运维
vSphere Foundation 也为 IT 运维团队提供了运维管理工具 Aria Operations 和日志管理工具 Aria Operations for Logs,来提高运维管理的效率,减轻运维团队的工作负担。
现代的数据中心有数以百计的服务器,上面运行着上千个虚拟机,还有各种网络设备和存储,管理运营数据中心是一个巨大的挑战:需要监控的对象超出人力所及的范围,需要分析的报警数据根本来不及处理。在这样的压力下,用人工方式来管理肯定是行不通的。Aria Operations 会代替管理员监控数据中心内的所有设备 (不管是安装了 vSphere 的服务器还是第三方的网络设备),而且24小时不间断,不会漏掉任何报警信息。但是它不会简单地把收到的信息直接呈现给管理员,而是经过整理和分析之后进行总结,过滤掉关于同一故障的大量冗余信息,最后以三个非常简单的超级指标形式展现:健康状况、系统风险、运行效率。管理员可以通过 Aria Operations 及时发现和解决问题,采取措施预防潜在风险和提高运行效率,来保证整个数据中心的服务质量等级 SLA。
在一台虚拟化的服务器上,可能会有成百上千个软件在运行,每个软件都会产生日志,很多软件还会产生不止一个日志。日志管理工具 Aria Operations for Logs 可以帮助管理员来更加高效地管理这些日志,主要体现在以下两个场景:
- 定位故障原因和性能瓶颈:当系统发生故障或出现性能瓶颈时,管理员就需要去分析各种日志来定位故障原因,或是找出导致系统工作异常的线索。因为日志文件很多又很分散,没有工具帮助的话定位问题就象是大海捞针一样困难,Aria Operations for Logs 把所有的日志信息都汇总在一起,可以很方便地对日志进行过滤,从而很快地找到导致故障的根本原因。
- 系统监控:日志也详细记录了系统和应用中发生的所有事件,Aria Operations for Logs 能够帮助管理员来监控某些特定的事件,一旦在某个日志中发现相关的事件,就会根据预先的设定来通知管理员或是 Aria Operations 来采取进一步的纠错行动,从而防患于未然、保证系统服务质量。
在数据中心中,资源的分配不当是一个非常常见的问题。在项目开始的时候,因为无法准确估计资源 (CPU、内存、存储) 用量,超量申请是一个常见的情况;而项目结束后,又有大量的虚机没有及时注销,造成资源的浪费。Aria Operations 监控着 vSphere 环境中所有资源的使用情况,它会以报表的形式来展示各个虚机的资源分配是否适当,对于空闲的虚机或资源超配的虚机,可以及时提醒是否要回收这些空闲的资源,在管理员确认后可以自动回收,从而保证整个数据中心内资源的充分利用。Aria Operations 也会及时发现资源分配不够的虚机,管理员可以根据需要随时动态添加资源,来保证虚机上应用的正常运行和性能表现。
以上是对 VMware vSphere Foundation 的 一个简单介绍,如果您对 vSphere Foundation 有更多的问题和需求,请填写线上调查问卷,留下您的联系方法,VMware 会有专人跟您联系的。