Azure Administrator认证学习指南之监视 Azure 中的虚拟机-40
随着企业大量的业务迁移到Azure平台,在Azure中托管的VM环境也也日益增多,作为企业管理员的您,确定影响应用程序和基础结构服务所支持的性能和运行状况问题非常重要。默认情况下,VM设置中基本监视按指标类型 “CPU 使用率”、”磁盘利用率”、”内存使用率” 和主机虚拟机监控程序收集的网络流量一起提供。如下图所示
但是实际企业环境监控中,默认基本监控要素满足需求,因此我们可以使用扩展来收集其他指标和日志数据,以在来宾操作系统中为VM配置诊断。
若要检测和帮助诊断在VM内运行的来宾操作系统、基于.NET或Java web 应用程序组件的性能和运行状况问题,Azure Monitor通过综合功能提供集中式监视,如用于VM的Azure Monitor和Application Insights。企业管理员可以在 Azure 门户、Azure CLI、Azure PowerShell 和编程应用程序编程接口 (API) 中使用指标来设置和监视诊断数据收集。
- 观察VM的基本指标。Azure门户的”概述”屏幕上显示的基本指标包括CPU 使用率、网络使用情况、总磁盘字节数以及每秒的磁盘操作数。
- 使用Azure门户启用并查看启动诊断数据收集。将自己的映像加载到Azure 或者启动某个平台映像时,可能会因为许多原因而导致VM进入无法启动状态。创建VM时,针对″设置”屏幕的”监视”部分下的”启动诊断”单击”已启用”,即可轻松启用启动诊断。
VM启动时,启动诊断代理将捕获启动输出并将其存储在 Azure 存储中。 此数据可以用于排查 VM 启动问题。 从命令行工具创建 VM 时,不会自动启用启动诊断。 在启用启动诊断之前,需要创建一个存储帐户来存储启动日志。 如果在 Azure 门户中启用启动诊断,则会自动创建一个存储帐户。
如果未在创建VM时启用启动诊断,可在以后随时使用Azure门户、Azure CLI、Azure PowerShell 或 Azure 资源管理器模板启用它。
- 启用来宾OS诊断数据收集。创建VM时,可以在”设置”屏幕上启用来宾OS 诊断。如果确实启用了诊断数据收集,用于Linux 的IaaSDiagnostics扩展或用于Windows的IaaSDiagnostics扩展将添加到VM,使你可以收集更多的磁盘、CPU和内存数据。
使用收集的诊断数据,可以为VM配置自动缩放。你还可以配置Azure Monitor 日志以存储数据并设置警报,以便在性能不正常时通知您。
根据特定的性能指标创建警报。举例来说,可以根据以下问题生成警报,平均CPU使用率超过特定的阈值,或者可用磁盘空间低于特定的空间量。可以使用Azure资源管理器模板或Azure CLI在Azure门户中配置警报。
Azure 服务运行状况会在Azure服务问题影响你时提供个性化的指导和支持,并且会帮助你为即将到来的计划内维护做好准备。Azure服务运行状况使用具有针对性和灵活性的通知提醒你和你的团队。
Azure活动日志是一种方便用户深入了解 Azure 中发生的订阅级别事件的订阅日志。该日志包括从Azure资源管理器操作数据到服务运行状况事件更新的一系列数据。可以在Azure 门户中单击”活动日志”查看VM的日志。可以对活动日志执行的部分操作主要有:
- 根据活动日志事件创建警报。
- 将其流式传输到事件中心,以供第三方服务或自定义分析解决方案(例如 Power BI)引入。
- 使用Power BI内容包在Power BI中进行分析。
- 将活动日志保存到存储帐户进行存档或手动检查。可以使用”日志配置文件”指定保留时间(天)。
Azure 资源日志是VM发出的日志,提供有关其操作的丰富、频繁的数据。 资源日志不同于活动日志,通过提供有关在 VM 中执行的操作的见解。可以对诊断日志执行的部分操作包括:
- 将诊断日志保存到存储帐户进行审核或手动检查。可以使用”资源诊断设置”指定保留时间(天)。
- 将它们流式传输到事件中心,以供第三方服务或自定义分析解决方案(例如 Power BI)引入。
- 使用Log Analytics对诊断日志进行分析。
若要查看Azure VM和虚拟机规模集支持的应用程序或服务,请标识VM中运行的来宾操作系统或工作负荷的问题,以了解它是否会影响应用程序的可用性或性能,或者是否应用程序出现问题,同时启用用于VM的Azure Monitor和Application Insights。
通过分析Windows和Linux VM的性能和运行状况(包括不同的进程以及其他资源和外部进程的相互关联依赖关系),用于VM的Azure Monitor大规模监视Azure虚拟机(VM)发现. 它包括多个趋势性能图表,可帮助调查问题并评估VM的容量。依赖关系图显示监视和未监视的计算机、进程和这些计算机之间的失败和活动的网络连接,并显示具有标准网络连接指标的趋势图表。与 Application Insights 相结合,你可以监视应用程序并捕获遥测数据(如 HTTP 请求、异常等),以便你可以将VM与应用程序之间的问题关联起来。 配置Azure Monitor 警报,以根据通过监视用于VM的Azure Monitor收集的数据中检测到的重要条件发出警报。
以下动手操作中,将演示利用Azure监视使用代理从Azure VM收集启动和性能数据,将此数据存储在Azure存储中,并使其可供通过门户、Azure PowerShell 模块和 Azure CLI 进行访问。用于VM的Azure Monitor通过收集性能指标、发现 VM 上安装的应用程序组件来提供高级监视,并包括性能图表和依赖关系图。主要包括:
- 在 VM 启用启动诊断
- 查看启动诊断
- 查看VM主机指标
- 启用用于VM的Azure Monitor
- 查看VM性能指标
- 创建警报
使用 Azure Cloud Shell登录Azure订阅账户,并切换为Azure CLI
创建Linux VM并安装Nginx服务
#使用 az group create 创建资源组 az group create –name AZ103RG –location eastus #使用 az vm create 创建 VM az vm create –resource-group AZ103RG –name LinuxVM –image UbuntuLTS –admin-username azureuser –generate-ssh-keys #为 Web 流量打开端口 80 az vm open-port –port 80 –resource-group AZ103RG –name LinuxVM #连接到虚拟机 ssh azureuser@publicIpAddress #安装 Web 服务器 sudo apt-get -y update sudo apt-get -y install nginx |
对该Linux VM启用启动诊断
启用引导诊断后,每当停止再启动VM时,会将有关启动过程的信息写入日志文件。
#使用 az vm deallocate 命令解除分配 VM az vm deallocate –resource-group AZ103RG –name LinuxVM #使用 az vm start 命令启动 VM az vm start –resource-group AZ103RG –name LinuxVM #使用 az vm boot-diagnostics get-boot-log 命令获取 myVM 的启动诊断数据 az vm boot-diagnostics get-boot-log –resource-group AZ103RG –name LinuxVM |
在Azure中,任何一个被创建的VM都有一个与它交互的专用主机。系统会自动收集该主机的指标,可以在Azure门户中查看这些指标。
在 Azure 门户中单击”资源组”,选择资源组,并在资源列表中选择您创建的Linux VM,在”VM”页上的”监视”部分,选择”见解(预览版)”,以启用Azure Azure Monitor 服务
启用监视后,可能需要等待几分钟,然后才能查看 VM 的性能指标,之后将会显示发现的每个逻辑磁盘、其容量、利用率,以及按每个度量列出的总平均值。
如果希望检索某个特定日志实践,可以在日志事件中查询
点击”映射”可以查看具体的网络端口等信息
企业管理员可以根据特定的性能指标创建警报。例如,当平均CPU使用率超过特定的阈值或者可用磁盘空间低于特定的空间量时,警报可以发出通知。警报显示在Azure门户中,也可以通过电子邮件发送。还可以触发Azure自动化 Runbook或Azure逻辑应用来响应生成的警报。
本文固定链接: http://365vcloud.net/2019/11/29/monitor-azure-virtual-machines/ | 365vCloud的云计算之旅
【下一篇】Azure Administrator认证学习指南之管理与操作 Azure 中的虚拟机-41