Azure 定期执行更新,以提高虚拟机的主机基础结构的可靠性、性能及安全性。 更新包括如下更改:修补托管环境或升级以及解除硬件授权。 大多数此类更新在执行时不会影响托管的虚拟机。 但是,也会存在更新产生影响的情况:

  • 如果维护不需重新启动,Azure 会在更新主机时使用就地迁移来暂停 VM。

  • 如果维护需重新启动,系统会告知计划维护的时间。 在这些情况下,系统会提供一个时间窗口,方便我们在适当的时间自行启动维护。

需要重新启动的计划内维护是按批进行计划的。 每个批具有不同的作用域(区域)。

  • 一个批从向客户发送通知开始。 默认情况下,向订阅所有者和共同所有者发送通知。 可以向通知添加更多收件人和消息传送选项(如电子邮件、短信和 Webhook)。
  • 发出通知不久,将设置自助式维护时段。 在此时段内可以找到包含在此批中的虚拟机,并开始通过主动重新部署来进行维护。
  • 自助式维护时段过后,就会开始计划内维护时段。 在此期间,Azure 会计划所需的维护,并将其应用于虚拟机。

设置这两个时段的目的是,在了解 Azure 何时将自动启动维护时,提供足够的时间来启动维护和重新启动虚拟机。

可以使用 Azure 门户、PowerShell、REST API 和 CLI 查询 VM 的维护时段并启动自助式维护。

Note

如果尝试启动维护失败,Azure 会将 VM 标记为“已跳过”,并在计划内维护时段期间不重新启动它。 而是,稍后通过新计划与你联系。

在门户中查看计划用于维护的虚拟机

安排了计划的大量维护并发送通知后,可以观察受即将到来的大量维护影响的虚拟机列表。

可以使用 Azure 门户,并查找计划进行维护的 VM。

  1. 登录到 Azure 门户

  2. 在左侧导航栏中,单击“虚拟机”。

  3. 在“虚拟机”窗格中,单击“列”按钮,打开可用列的列表。

  4. 选择并添加以下列:

    维护 - 显示虚拟机的维护状态。 下面是可能的值:

    说明
    立即启动 虚拟机位于自助维护窗口中,用户可以自行启动维护。 请参阅以下内容,了解如何在虚拟机上启动维护
    计划 已安排虚拟机进行维护,无需用户启动维护。 可以在此视图中选择“自动计划”窗口或单击虚拟机来查看维护窗口
    已完成 已成功启动并完成虚拟机维护。
    已跳过 已经选择启动维护,但没有成功。 Azure 已经取消了虚拟机维护,将在稍后重新安排
    稍后重试 已选择启动维护,但 Azure 无法满足你的要求。 在这种情况下,可以稍后重试。

    主动维护 - 显示可以自行启动虚拟机维护的时间范围。

    计划的维护 - 显示 Azure 重新启动虚拟机以完成维护的时间范围。

门户中的通知和警报

Azure 通过向订阅所有者和共有者组发送电子邮件来传达计划维护的安排。 可以通过创建 Azure 活动日志警报,为此通信添加其他收件人和频道。 有关详细信息,请参阅 通过 Azure 活动日志监视订阅活动

  1. 登录到 Azure 门户
  2. 在左侧菜单中选择“监视”。
  3. 在“监视 -活 动日志”窗格中,选择“警报”。
  4. 在“监视 - 警报”窗格中,单击“+ 添加活动日志警报”。
  5. 填写“添加活动日志警报”页中的信息,请务必在“条件”中设置以下内容:类型:维护;状态:全部(请勿将状态设置为“活动”或“已解决”);级别:全部

若要详细了解如何配置活动日志警报,请参阅创建活动日志警报

从门户启动虚拟机维护

在查看虚拟机详细信息时,将能够看到更多维护相关的详细信息。
如果虚拟机包含在计划的大量维护中,则会在在虚拟机详细信息视图的顶部添加新的通知功能区。 此外,如有必要,可以添加一个新选项来启动维护。

单击维护通知以查看维护页面,其中包含计划维护的更多详细信息。 从这里将能够开始维护虚拟机。

开始维护后,虚拟机将重新启动,维护状态得以更新,在几分钟内反映结果。

如果错过了可以开始维护的窗口,当 Azure 重新启动虚拟机时,仍然可以看到该窗口。

使用 PowerShell 检查维护状态

还可以使用 Azure Powershell 查看 VM 计划何时维护。 使用 -status 参数时可通过 Get-AzureRmVM cmdlet 获得计划内维护信息。

仅当有计划内维护时,才会返回维护信息。 如果未计划任何影响 VM 的维护,该 cmdlet 不返回任何维护信息。

PowerShell复制
Get-AzureRmVM -ResourceGroupName rgName -Name vmName -Status

在 MaintenanceRedeployStatus 下返回以下属性:

说明
IsCustomerInitiatedMaintenanceAllowed 指示此时是否可以在 VM 上启动维护
PreMaintenanceWindowStartTime 可以在 VM 上启动维护的自助式维护时段的起点
PreMaintenanceWindowEndTime 可以在 VM 上启动维护的自助式维护时段的终点
MaintenanceWindowStartTime 可以在 VM 上启动维护的计划内维护时段的起点
MaintenanceWindowEndTime 可以在 VM 上启动维护的计划内维护时段的终点
LastOperationResultCode 上次尝试在 VM 上启动维护的结果

还可以通过使用 Get-AzureRmVM 并不指定 VM 来获取资源组中所有 VM 的维护状态。

PowerShell复制
Get-AzureRmVM -ResourceGroupName rgName --Status

以下 PowerShell 函数获取订阅 ID,并输出计划维护的 VM 列表。

PowerShell复制

function MaintenanceIterator
{
Select-AzureRmSubscription -SubscriptionId $args[0] $rgList= Get-AzureRmResourceGroup for ($rgIdx=0; $rgIdx -lt $rgList.Length ; $rgIdx++)
{
$rg = $rgList[$rgIdx]
$vmList = Get-AzureRMVM -ResourceGroupName $rg.ResourceGroupName
for ($vmIdx=0; $vmIdx -lt $vmList.Length ; $vmIdx++)
{
$vm = $vmList[$vmIdx]
$vmDetails = Get-AzureRMVM -ResourceGroupName $rg.ResourceGroupName -Name $vm.Name -Status
if ($vmDetails.MaintenanceRedeployStatus )
{
Write-Output "VM: $($vmDetails.Name) IsCustomerInitiatedMaintenanceAllowed: $($vmDetails.MaintenanceRedeployStatus.IsCustomerInitiatedMaintenanceAllowed) $($vmDetails.MaintenanceRedeployStatus.LastOperationMessage)"
}
}
}
}

使用 PowerShell 在 VM 上启动维护

如果 IsCustomerInitiatedMaintenanceAllowed 设置为 true,以下命令使用上一部分中函数的信息,在 VM 上启动维护。

PowerShell复制
Restart-AzureRmVM -PerformMaintenance -name $vm.Name -ResourceGroupName $rg.ResourceGroupName

后续步骤

了解如何使用计划事件从 VM 内注册维护事件。

立即访问http://market.azure.cn

处理 Windows 虚拟机的计划内维护通知的更多相关文章

  1. Azure 中虚拟机的计划内维护

    Azure 定期执行更新,以提高虚拟机的主机基础结构的可靠性.性能及安全性. 此类更新包括修补宿主环境(例如操作系统.虚拟机监控程序以及主机上部署的各种代理)中的软件组件.升级网络组件以及硬件解除授权 ...

  2. Azure 元数据服务:适用于 Windows VM 的计划事件(预览)

    计划事件是 Azure 元数据服务中的其中一个子服务. 它负责显示有关即将发生的事件(例如,重新启动)的信息,使应用程序可以为其做准备并限制中断. 它可用于所有 Azure 虚拟机类型(包括 PaaS ...

  3. 在 Azure 中管理 Windows 虚拟机的可用性

    了解如何设置和管理多个虚拟机,以确保 Azure 中 Windows 应用程序的高可用性. 也可以管理 Linux 虚拟机的可用性. Note Azure 具有用于创建和处理资源的两个不同的部署模型: ...

  4. Linux 虚拟机的计划维护

    Azure 定期执行更新,以提高虚拟机的主机基础结构的可靠性.性能及安全性. 此类更新包括修补宿主环境(例如操作系统.虚拟机监控程序以及主机上部署的各种代理)中的软件组件.升级网络组件以及硬件解除授权 ...

  5. 将 Windows 虚拟机从非托管磁盘转换为托管磁盘

    如果有使用非托管磁盘的现有 Windows 虚拟机 (VM),可通过 Azure 托管磁盘服务将 VM 转换为使用托管磁盘. 此过程会同时转换 OS 磁盘和任何附加的数据磁盘. 本文介绍如何使用 Az ...

  6. Mac安装windows虚拟机攻略

    5月初从阿里滚粗,然后失去了公司发的Mac Air.说实话Mac机器确实比windows好用一些,于是怒而买了一个Mac Pro. 结果一个星期后我从学校带出来的联想笔记本又被老师通知要进行固定资产盘 ...

  7. MacBook使用笔记2 - 安装windows虚拟机攻略

    转载请标注原链接:http://www.cnblogs.com/xczyd/p/5498878.html 5月初从阿里滚粗,然后失去了公司发的Mac Air.说实话Mac机器确实比windows好用一 ...

  8. 如何在 Azure 中均衡 Windows 虚拟机负载以创建具有高可用性的应用程序

    负载均衡通过将传入请求分布到多个虚拟机来提供更高级别的可用性. 本教程介绍了 Azure 负载均衡器的不同组件,这些组件用于分发流量和提供高可用性. 你将学习如何执行以下操作: 创建 Azure 负载 ...

  9. windows如何利用计划任务自动关机?

    第一步打开控制面板,然后选择计划任务,打开它 选择创建基本任务 输入任务名称,描述,选择下一步 根据需要选择,我这里选择的是每天,然后选择下一步 选择任务开始时间,然后选择下一步 选择启动程序,然后选 ...

随机推荐

  1. 全网最详细的hive-site.xml配置文件里添加<name>hive.cli.print.header</name>和<name>hive.cli.print.current.db</name>前后的变化(图文详解)

    不多说,直接上干货! 比如,你是从hive-default.xml.template,复制一份,改名为hive-site.xml 一般是 <configuration> <prope ...

  2. 非Spring环境下使用Mybatis操作数据库的流程

    准备工作 1,  导入mybatis-3.2.7.jar,mysql-connector-5.1.25-bin.jar两个jar包 2,  在数据库中创建一个db_test数据库,库中有一个表为use ...

  3. SOA,Webservice,SOAP,REST,RPC,RMI的区别与联系

    SOA,Webservice,SOAP,REST,RPC,RMI的区别与联系 SOA面向服务的软件架构(Service Oriented Architecture) 是一种计算机软件的设计模式,主要应 ...

  4. 使用Akka构建集群(二)

    前言 在<使用Akka构建集群(一)>一文中通过简单集群监听器的例子演示了如何使用Akka搭建一个简单的集群,但是这个例子“也许”离我们的实际业务场景太远,你基本不太可能去做这样的工作,除 ...

  5. UVa 1572 Self-Assembly (拓扑排序)

    题目链接: https://cn.vjudge.net/problem/UVA-1572 Automatic Chemical Manufacturing is experimenting with ...

  6. 统计频率(map映照容器的使用)

    问题描述  AOA非常喜欢阅读莎士比亚的诗,莎士比亚的诗中有种无形的魅力吸引着他!他认为莎士比亚的诗中之所以些的如此传神,应该是他的构词非常好!所以AOA想知道,在莎士比亚的书中,每个单词出现的频率各 ...

  7. 并发编程之 线程协作工具 LockSupport

    前言 在前面的文章中,我们介绍了并发工具中的4个,Samephore,CyclicBarrier,CountDownLatch,Exchanger,但是我们漏了一个,非常的好用的工具,楼主在这里必须加 ...

  8. [转]SQL - Create XML - How to set Unicode UTF-8

    本文转自:https://stackoverflow.com/questions/44754356/sql-create-xml-how-to-set-unicode-utf-8 I found a ...

  9. [转]腾讯云Linux云服务器文件上传利器——WinSCP

    本文转自:http://bbs.qcloud.com/thread-4379-1-1.html WinSCP简介 WinSCP是一个Windows环境下使用SSH的开源图形化SFTP客户端.同时支持S ...

  10. 在Android开发中替换资源图片不起作用的解决方法

    现象 在android开发中,经常会需要替换res\drawable中的图片,打开res\layout下的文件预览布局页面发现图片已经被替换,但在模拟器或者真实机器上运行时发现该图片并没有被替换,还是 ...