秒懂虚拟化(二):服务器虚拟化、操作系统虚拟化、服务虚拟化全解析,通俗解读版
秒懂虚拟化(一):从概念到网络、存储虚拟化全解析,通俗解读版-CSDN博客这篇文章学习了虚拟化的概念、网络虚拟化和存储虚拟化,本节将继续学习服务器虚拟化、操作系统虚拟化、服务虚拟化。
1、服务器虚拟化
服务器虚拟化,有时也称平台虚拟化,通过VMM(Virtual Machine Monitor,虚拟机监视器)提供虚拟的计算机硬件环境,我们将此虚拟的环境称之为VM(Virtual Machine)。安装在这个环境之上的系统我们称为Guest OS(客户系统);运行VMM的操作系统则称Host OS(本地操作系统)。
☀Guest OS和Host OS是什么呢?
①Guest OS(客户系统):安装在虚拟机(VM)环境之上的操作系统。例如,你在虚拟机里安装的 Windows 操作系统或者 Linux 操作系统,这些就被称为Guest OS。它们运行在虚拟的计算机硬件环境中,就好像在真实的物理计算机硬件上运行一样,但实际上是依赖于 VMM 提供的虚拟硬件支持。
②Host OS(本地操作系统):运行 VMM 的操作系统。如果把 VMM 想象成一个软件,那么这个软件是安装在一个操作系统之上的,这个操作系统就是 Host OS。它就像是一个 “宿主”,为 VMM 的运行提供了一个基础环境。
注:有时VMM也被写做Hypervisor 并非所有的Hypervisor产品的运行都需要有Host OS的支持,如Xen、VMware ESX系列。所以在区分Hypervisor时我们分为了两种不同的类型。
(1)类型1(Type one/Hosted Architecture):直接运行在裸机上面的Hypervisor,如Xen 。
(2)类型2(Type two/Bare-Metal Architecture):运行在Host OS上的Hypervisor,如VMware、VirtualBox、KVM等。
☀Hypervisor 是什么?
本质上是在服务器虚拟化过程中起到关键作用的组件,负责管理和分配虚拟机的硬件资源,如 CPU、内存、磁盘 I/O 等。
2、操作系统虚拟化
操作系统虚拟化是指在同一操作系统上,同时运行单个或者多个独立的用户,他们都有自己的运行空间。每个用户都只能运行自己权限范围内的应用,每个用户都相互不受影响。
(1)Hardware base physical machine(硬件基础物理机):这是整个架构的底层基础,代表实际的物理服务器硬件,包括 CPU、内存、硬盘、网卡等硬件设备。
(2)Shared OS(共享操作系统):位于物理机之上,是一个被多个隔离服务器共享的操作系统。也就是说,在这个架构中,多个隔离服务器共用这一个操作系统实例,而不是每个隔离服务器都有自己独立的操作系统。
(3)Isolated Server(隔离服务器):在共享操作系统之上,有多个隔离服务器。每个隔离服务器具有相同的硬件环境(Same hardware)和相同的操作系统(same OS),并且可以运行各自的应用程序(Applications)。这些隔离服务器之间相互隔离,就好像它们是独立的物理服务器一样,但实际上它们是在同一台物理机上通过虚拟化技术实现的。
3、服务虚拟化
服务虚拟化都差不多,但它是根据不同的需求来说的,比如说防火墙(Firewall)、负载均衡(Load Balance)、数据库、数据存储等。如果是防火墙为服务则为FWaaS(Firewall as a service),负载均衡为服务LBaaS(Load balance as a service)等。
(1)当把防火墙功能作为一种服务提供时,就称为 FWaaS(Firewall as a service)。这意味着用户不需要自己搭建和维护防火墙硬件及软件系统,而是通过网络从服务提供商那里获取防火墙服务。例如,企业可以根据自身需求,从云服务提供商那里订阅 FWaaS,服务提供商会负责防火墙的配置、更新、安全策略管理等,企业只需关注自身业务的安全需求和使用即可。这样可以降低企业在防火墙方面的部署和管理成本,同时也能利用服务提供商的专业技术和资源来保障网络安全。
(2) 负载均衡(Load Balance):当负载均衡功能以服务形式提供时,即LBaaS(Load balance as a service)。通过LBaaS,用户无需自己搭建复杂的负载均衡架构,服务提供商可以根据用户的业务流量情况,自动进行流量分配和优化,确保服务的高效运行。比如一个电商网站在促销活动期间流量剧增,使用 LBaaS 可以自动将大量的用户请求分配到多个服务器上处理,避免单个服务器过载导致服务中断。
这种将各种服务虚拟化的方式,为用户提供了更灵活、便捷、高效的解决方案,用户可以根据自身业务需求,按需选择和使用相应的服务,而无需关心底层的技术实现和运维细节。同时,也促进了云计算等技术的发展和应用,使得资源的分配和利用更加优化和合理。