虚拟化资源监控

简介: 【10月更文挑战第18天】资源监控是确保IT设施可用性、可靠性和安全性的重要手段。随着虚拟化技术的发展,新的监控工具应运而生,以应对虚拟化层(Hypervisor)的监控需求。资源监控不仅涵盖物理设施、操作系统、应用与服务,还需关注虚拟资源的动态调整特性。虚拟化环境中的监控主要包括状态监控、性能监控、容量监控、安全监控和使用量度量等方面。通过日志分析、包嗅探和探针采集等方法,监控系统可以收集和分析关键数据,为容量规划、资源度量和安全防护提供支持。

资源监控是实现IT设施可用性、可靠性、安全性的基本保障之一。随着虚拟化技术的快速引入,需要新的工具来监控新引入的虚拟化层(Hypervisor)。传统资源监控的主要对象是物理设施(服务器、存储、网络)、操作系统、应用与服务程序,但由于虚拟化的引入使分配的各种资源可以动态调整,这种系统虚拟资源动态性特征增加了系统监控的复杂性。虚拟化环境中监控的目的和复杂性主要体现在以下方面。

  • 状态监控:监控所有物理资源和虚拟资源的工作状态,包括物理服务器、虚拟化软件VMM、虚拟服务器、物理交换机与路由器、虚拟交换机与路由器、物理存储与虚拟存储等。
  • 性能监控:IaaS虚拟资源的性能监控分为两个部分。基本性能监控与传统非虚拟化环境中的监控一样,主要是从虚拟机操作系统和VMM的角度来监视与度量CPU、内存、存储、网络等设施的性能。与虚拟化相关的性能监控主要提供由于引入虚拟化技术而采用的监控度量指标数据,如虚拟机部署的时间、迁移的时间、集群的性能等。
  • 容量监控:由于当今各企业或机构在管理、人员构成上的变化和调整,对于IT资源的需求也不断变化,需要IT人员不断规划IT系统容量。容量规划使用长期的资源监控数据来判断系统资源使用率的变化规律,进而做出长期而准确的IT系统规划,因此容量监控是一种宏观角度的长期系统性能监控。容量监控的关键度量指标包括服务器、内存、网络、存储资源的平均值、峰值使用率和达到资源瓶颈的临界用户数。
  • 安全监控:在IaaS环境中除了存在传统的IT系统安全问题,虚拟化技术的引入也因为虚拟机蔓生(sprawl)现象导致了很多新的面向虚拟化层的安全威胁。
  • 传统安全监控:包括入侵检测、漏洞扫描、病毒扫描、网络风暴检测等。
  • 虚拟机蔓生活动监控:包括监控虚拟机克隆、复制、迁移、网络切换、存储切换等虚拟机活动。
  • 合规监控:监控各种操作、配置是否符合标准及规范,强化使用正版软件,检测违背IT管理策略的事件等。
  • 访问控制监控:监控用户访问行为。
  • 使用量度量:为了使IaaS服务具备可运营的条件,需要度量不同组织、团体、个人使用资源和服务的情况,有了这些度量信息便可以在后付费的IaaS提供模式中为用户生成结算信息和账单。为了实现资源度量监控,需要收集以下几个方面的信息。
  • 服务使用时间:包括计算、存储、网络等服务的使用时间。
  • 配置信息:包括虚拟机等服务的资源配置、软件配置信息。
  • 事件信息:包括虚拟机等服务的开始、结束,资源分配与调整事件。


因为当前流行的虚拟化软件种类很多,所以在开发监控程序时需要一个支持主流虚拟化软件的开发库,从而能够与不同的虚拟化程序交互收集各种监控度量信息。监控系统会将收集到的信息保存到历史数据库中,为容量规划、资源度量、安全等功能提供历史数据。虽然虚拟化给系统监控提出了新的挑战,但也为自动响应、处理系统问题提供了很多物理环境无法提供的机会。

系统资源监控主要通过度量所收集的系统状态、性能相关数据的方式来实现,经常采用的方法如下。

  • 日志分析:通过应用程序或者系统命令采集性能指标、事件信息、时间信息等,并将其保存到日志文件或者历史数据库中以分析系统或者应用的关键指标。资源管理需要将各种管理与调度操作、配置变更、资源生命周期等信息保存到监控信息库中。用户如果使用Linux操作系统的计算实例,可以运行各种Linux系统监控命令(包括top、iftop、vmstat、iostat、mpstat、df、free、pstree等),将这些命令的输出结果保存到日志文件当中。同时,很多虚拟化软件也提供了系统监控命令。例如,使用Xen虚拟化软件时,用户可以运行Xentop、Xenmon等命令来收集服务器性能指标信息。
  • 包嗅探(Packet Sniffing):主要通过对网络中的数据拆包、检查、分析,提取相关信息用来分析网络或者相关应用程序的性能。
  • 探针采集(Instrumentation):通过在操作系统或者应用中植入并运行探针程序来采集性能数据,最常见的应用实例是WMI(Windows Management Instrumentation)和SNMP协议。大多数操作系统都在被监视的系统中运行一个SNMP代理,以采集并通过SNMP协议发送系统性能数据。同时,VMware ESX、Xen虚拟化程序支持植入SNMP探针程序,而Hyper-V支持WMI探针程序。通过这些探针程序,一方面可以收集物理服务器的性能信息,另一方面也可以收集运行在物理服务器上的虚拟机信息。
相关文章
|
6月前
|
Linux 虚拟化 云计算
虚拟化技术及实时虚拟化概述
本文探讨了实时虚拟化技术,它是虚拟化技术的一种,旨在保证严格的时间约束和高可靠性。文章介绍了虚拟化的起源、分时系统的历史以及虚拟化技术在云计算时代的复兴。内容涵盖分时系统、虚拟化技术的定义、类型(全虚拟化、半虚拟化、硬件辅助完全虚拟化和操作系统级虚拟化)及其优缺点。此外,还讨论了不同类型虚拟化技术的实现方式,如Type-1和Type-2虚拟化,以及容器技术。文章强调了实时虚拟化在工业实时控制、汽车、通信等领域的应用,并预告后续将重点讨论实时虚拟化技术。
464 0
虚拟化技术及实时虚拟化概述
|
弹性计算 Kubernetes 调度
《Docker资源限制和调度策略:性能优化与资源管理,打造高效稳定的容器环境》
《Docker资源限制和调度策略:性能优化与资源管理,打造高效稳定的容器环境》
301 0
|
存储 运维 Kubernetes
CNStack 虚拟化服务:实现虚拟机和容器资源的共池管理
CNStack 虚拟化服务:实现虚拟机和容器资源的共池管理
CNStack 虚拟化服务:实现虚拟机和容器资源的共池管理
|
运维 Kubernetes Cloud Native
如何在云原生混部场景下利用资源配额高效分配集群资源?
由于混部是一个复杂的技术及运维体系,包括 K8s 调度、OS 隔离、可观测性等等各种技术,之前的一篇文章《历经 7 年双 11 实战,阿里巴巴是如何定义云原生混部调度优先级及服务质量的?》,主要聚焦在调度优先级和服务质量模型上,今天我们来关注一下资源配额多租相关的内容。
683 5
如何在云原生混部场景下利用资源配额高效分配集群资源?
|
Kubernetes Cloud Native 安全
Koordinator 0.6:企业级容器调度系统解决方案,引入 CPU 精细编排、资源预留与全新的重调度框架
经过社区多位成员的贡献,Koordinator 0.6 版本正式发布。相较于上一个版本 0.5,新版本进一步完善了 CPU 精细化编排能力,更好的兼容原生用法;支持了资源预留的能力(Reservation),补齐了调度原子语意缺失;发布了全新的重调度框架,支持用户灵活的扩展自定义插件。这些特性源自于阿里巴巴内部的生产实践,并结合上游社区规划思考,为用户带来标准、强大、灵活的调度解决方案。
1063 0
Koordinator 0.6:企业级容器调度系统解决方案,引入 CPU 精细编排、资源预留与全新的重调度框架
|
存储 安全 API
2.4.1 资源管控层 资源管控软件|学习笔记
快速学习2.4.1 资源管控层 资源管控软件
2.4.1 资源管控层 资源管控软件|学习笔记
|
Kubernetes 负载均衡 JavaScript
K8s网络配置和软负载的最佳实践|学习笔记
快速学习 K8s 网络配置和软负载的最佳实践|
275 0
K8s网络配置和软负载的最佳实践|学习笔记
|
Prometheus 监控 Cloud Native
从监控到隔离,阿里云容器服务提升您的GPU资源使用体验
通过使用阿里云容器服务的GPU支持,可以提升GPU资源管理的可见性,了解到需要多少的GPU资源可以支撑图像识别,语音识别,在线翻译等业务,如何能用最少的成本满足业务需求;而可以在无需修改现有GPU程序的前提下,保障多个容器共享同一个GPU时,实现彼此互相隔离。
2617 0
从监控到隔离,阿里云容器服务提升您的GPU资源使用体验
|
弹性计算 测试技术 API
专有宿主机如何实现“资源池”管理——集群管理能力升级
专有宿主机发布自动部署功能,提高集群管理运维能力
3557 0