1.2.1 虚拟化基础
1.虚拟化概念
采用虚拟化,需要在服务器上安装相应的虚拟化层,然后在其基础上创建虚拟机、安装和配置操作系统和应用软件,从而承载相应的业务,虚拟化架构如图1-1所示。
图1-1 虚拟化架构
① 物理服务器(Host):物理服务器通常是指托管虚拟机或容器的物理设备,它具有自己的处理器、内存、硬盘、网络接口和其他硬件组件,可以独立地运行操作系统和应用程序。物理服务器可以被视为一个宿主机,它提供资源和环境,使得虚拟机或容器能够在其上运行。
② 虚拟化层(Hypervisor):虚拟化层也被称为虚拟机监视器(Virtual Machine Monitor,VMM),虚拟化层将底层的计算、存储和网络等资源统一纳管起来,为上层虚拟机提供一个逻辑上隔离的运行环境,比较常见的虚拟化层有KVM、XEN、Hyper-V、VMware Server等。
③ 虚拟机(Virtual Machine,VM):也被称为客户机(Guest Machine),新创建出来的虚拟机并不能直接使用,需要由用户或管理员为这台虚拟机安装相应的系统软件和应用软件之后才能使用。
④ 虚拟机操作系统(Guest OS):虚拟机操作系统可以是Linux/类Linux操作系统或Windows操作系统,可以根据实际的业务场景需求进行选择。
2.虚拟化优势
采用了虚拟化技术之后,优势主要体现在以下几点。
① 提高资源利用率:传统模式下,为避免业务高峰时期资源的抢占问题,一般会在一台服务器上面安装一个应用来对外提供服务。对这台服务器而言,其资源平均利用率通常在20%~30%之间,资源没有得到充分的利用。而虚拟化技术可以对底层资源进行逻辑隔离,创建众多承载不同业务和应用的虚拟机,从而提高资源利用率。
② 灵活的资源配置:对上层业务而言,可以灵活地对运行业务的虚拟机进行数量或配置的更改。例如,在业务量高峰期,可以通过提高虚拟机的配置来应对高业务量与资源配置不匹配等问题。
③ 提高业务可靠性:对上层业务而言,其要求业务不中断或者短中断,而虚拟化技术可以支持虚拟机跨主机的热迁移,同时,结合一些适当的规则,如虚拟机与主机绑定、虚拟机聚合或互斥等规则,可以提高业务的可靠性。
课外扩展
常见的虚拟机部署规则如下。
① 虚拟机与主机绑定规则:虚拟机与主机强绑定,确保虚拟机一直运行在该主机上。
② 虚拟机聚合规则:当多台虚拟机之间需要进行较多信息交换时,如在业务与日志虚拟机之间进行信息交换,将这些虚拟机聚合运行在同一台物理服务器上,保证信息的低时延交互。
③ 虚拟机互斥规则:某些场景下,为保证业务的高可靠性,需要将多台虚拟机部署在不同的物理服务器上,这时可以使用虚拟机互斥规则。
3.虚拟化劣势
凡事有利必有弊,采用虚拟化技术劣势体现在以下几点。
① 运维难度增加:传统方式下运维人员只需要对物理资源、系统软件和应用软件等进行运维。而多了虚拟化层之后,增加了对虚拟化层和其上的虚拟机的运维工作。
② 保障安全难度增加:可能会发生“虚拟机逃逸”等安全问题,如在虚拟机中使用了弱密码,黑客可以通过暴力破解等方式控制虚拟机,然后对这台主机的虚拟化层进行控制,从而控制整台主机。
③ 面向业务的灵活度不够:当用户需要根据业务进行相应虚拟资源的调整时,其工作量仍然比较大。同时,虚拟化在与其他新兴技术(如物联网、人工智能、大数据等)的融合方面还有待改进。