你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

为开发测试实验室中的实验室和 VM 配置自动关机

作为 Azure 开发测试实验室所有者,你可以配置一个计划,以在白天或晚上的特定时间关闭实验室中的所有虚拟机 (VM)。 这样可节省运行未使用计算机的成本。

此外,还可以设置中心自动关机策略,以控制实验室用户是否可为自己的单独 VM 制定自动关机计划。 通过自动关机策略,可让 VM 所有者完全控制或无法控制 VM 关机计划。

本文介绍了如何为开发测试实验室和单个实验室 VM 设置自动关机计划。 同时还介绍了如何设置实验室自动关机策略,以及如何配置自动关机通知。

配置实验室自动关机计划

通过自动关机计划,可在白天或晚上的特定时间关闭实验室的所有 VM,因此有助于最大限度减少实验室浪费。 要查看或更改实验室的自动关机计划,请执行以下步骤:

  1. 在实验室的主页上,选择“配置和策略”。

  2. 在左侧菜单的“计划”部分选择“自动关机”。

  3. 在“自动关机”屏幕的“已启用”下,选择“打开”启用自动关机,或选择“关闭”禁用自动关机。

  4. 对于“计划关机”和“时区”,如果打开自动关机,请指定关闭所有实验室 VM 的时间和时区。

  5. 对于“在自动关机之前发送通知?”,选择“是”或“否”以确定是否在指定自动关机时间之前的 30 分钟发送通知。

    • 如果选择“是”,请在“Webhook URL”下输入 Webhook URL 终结点,或在“电子邮件地址”下输入以分号分隔的电子邮件地址,以便接收通知。 有关详细信息,请参阅自动关机通知部分。

    屏幕截图显示实验室自动关机设置详细信息。

  6. 选择“保存”。

默认情况下,此计划适用于实验室中的所有 VM。 要从特定 VM 中删除此设置,请打开 VM 的管理窗格(在策略允许的情况下),并更改其“自动关机”设置。

注意

如果在之前计划关机时间的 30 分钟内更新实验室或 VM 的自动关机计划,则新的关机时间将在第二天生效。

配置实验室自动关机策略

作为实验室所有者,可以通过管理实验室的自动关机策略设置来控制成本并最大限度减少实验室的浪费。 要了解如何设置所有实验室策略,请参阅在 Azure 开发测试实验室中定义实验室策略

重要

对自动关机策略的更改仅适用于在实验室中创建的新 VM,而不适用于已经存在的 VM。

  1. 在实验室的主页上,选择“配置和策略”。

  2. 在左侧菜单的“计划”部分选择“自动关机策略”。

  3. 选择一个选项。

    屏幕截图显示自动关机策略设置选项。

    • 用户设置计划且可以选择退出:实验室用户可以替代或选择退出实验室计划。 此选项授予 VM 所有者对 VM 自动关机计划的完全控制。

    • 用户设置计划且无法选择退出:实验室用户可以替代实验室计划,但无法选择退出自动关机策略。 此选项可确保每个实验室 VM 都按自动关机计划运行。 VM 所有者可以更新计划时间,并设置关机通知。

    • 用户无法控制实验室管理员设置的计划:实验室用户无法更改或选择退出实验室自动关机计划。 此选项使实验室管理员能够完全控制所有实验室 VM 的计划。 VM 所有者仍能针对自己的 VM 设置自动关机通知。

  4. 选择“保存”。

配置 VM 自动关机设置

根据自动关机策略,还可以为单独的实验室 VM 设置自动关机计划。

  1. 在 VM 主页上,在左侧菜单的“操作”部分选择“自动关机”。

  2. 在“自动关机”屏幕的“已启用”下,选择“打开”启用自动关机,或选择“关闭”禁用自动关机。

  3. 对于“计划关机”和“时区”,如果打开自动关机,请指定关闭所有实验室 VM 的时间和时区。

  4. 对于“在自动关机之前发送通知?”,选择“是”或“否”以确定是否在指定自动关机时间之前的 30 分钟发送通知。 如果选择“是”,请在“Webhook URL”下输入 Webhook URL 终结点,或在“电子邮件地址”下输入电子邮件地址,以便接收通知。 有关详细信息,请参阅自动关机通知部分。

  5. 选择“保存”。

    屏幕截图显示虚拟机自动关机设置详细信息。

查看自动关机更新的活动日志

更新自动关机设置后,可看到在 VM 的活动日志中记录的活动。

  1. 在 VM 的主页上,选择左侧菜单中的“活动日志”。

  2. 删除“资源”筛选器,应用相应的“资源组”筛选器,并查看“添加或修改计划”项。

    屏幕截图显示“活动日志”中的“添加或修改计划”。

  3. 选择“添加或修改计划”操作,打开显示该操作相关更多详细信息的摘要页。

自动关机通知

在自动关机配置中启用通知后,如果实验室用户的任何虚拟机受到自动关机的影响,他们会在此前 30 分钟收到通知。 有了通知,用户可以在关机前保存工作。 如果在自动关闭设置中指定电子邮件地址,则通知将发送到该电子邮件地址。 如果在设置中指定 Webhook,则通知将发送到 Webhook URL。

如果有人需要继续工作,通知还可以提供链接,允许针对各个 VM 执行以下操作:

  • 本次跳过自动关机。
  • 将自动关机推迟 1 小时。
  • 将自动关机推迟 2 小时。

你可以使用 Webhook 实现自己的通知, 并设置订阅特定事件的集成。 在发生其中任何一个事件时,HTTP POST 有效负载将发送到 Webhook URL。

Azure 逻辑应用和 Slack 等应用广泛支持 Webhook。 有关响应 Webhook 的详细信息,请参阅 Azure Functions HTTP 触发器和绑定概述添加适用于 Azure 逻辑应用的 HTTP 触发器

以下示例演示了如何使用逻辑应用配置自动关机通知,以向 VM 所有者发送电子邮件。

创建用于发送电子邮件通知的逻辑应用

逻辑应用提供了许多连接器,使你可以轻松地将服务与其他客户端(如 Office 365 和 X)集成。概括而言,设置用于电子邮件通知的逻辑应用的步骤如下:

  1. 创建逻辑应用。
  2. 配置内置模板。
  3. 与你的电子邮件客户端集成。
  4. 获取要用于自动关机通知设置的 Webhook URL。

要开始,请在 Azure 中创建逻辑应用,步骤如下:

  1. 在 Azure 门户,在顶部“搜索”字段输入逻辑应用,然后选择“逻辑应用”。

  2. 在“逻辑应用”页顶部,选择“添加”。

  3. 在“创建逻辑应用”页上:

    名称
    订阅 选择 Azure 订阅。
    资源组 选择一个资源组或新建一个资源组。
    逻辑应用名称 为逻辑应用输入描述性名称。
    发布 工作流
    区域 选择靠近你或靠近逻辑应用访问的其他服务的区域。
    计划类型 消耗。 借助消耗计划,可以使用逻辑应用设计器创建应用。
    Windows 计划 接受默认应用服务计划 (ASP)。
    定价计划 接受默认工作流标准 WS1(总计 210 个 ACU,3.5 GB 内存,1 个 vCPU)
    区域冗余 接受默认值:已禁用。

    屏幕截图显示“创建逻辑应用”页。

  4. 选择“查看 + 创建”,然后在验证通过后选择“创建”。

  5. 部署完成后,选择“转到资源”。

接下来,配置内置模板。

  1. 在逻辑应用页的左侧导航栏中,选择“部署工具”下的“逻辑应用设计器”。

  2. 选择顶部菜单中的“模板”。

  3. 在“模板”下,选择 HTTP 请求/响应

    屏幕截图显示 HTTP 请求响应模板。

  4. 在“HTTP 请求-响应”页上,选择“使用此模板”。

    屏幕截图显示选择“使用此模板”。

  5. 将以下 JSON 代码粘贴到“请求正文 JSON 架构”部分中。

    屏幕截图显示设计器中的“请求正文 JSON 架构”。

    {
        "$schema": "http://json-schema.org/draft-04/schema#",
        "properties": {
            "delayUrl120": {
                "type": "string"
            },
            "delayUrl60": {
                "type": "string"
            },
            "eventType": {
                "type": "string"
            },
            "guid": {
                "type": "string"
            },
            "labName": {
                "type": "string"
            },
            "owner": {
                "type": "string"
            },
            "resourceGroupName": {
                "type": "string"
            },
            "skipUrl": {
                "type": "string"
            },
            "subscriptionId": {
                "type": "string"
            },
            "text": {
                "type": "string"
            },
            "vmName": {
                "type": "string"
            },
            "vmUrl": {
                "type": "string"
            },
            "minutesUntilShutdown": {
                "type": "string"
            }
        },
        "required": [
            "skipUrl",
            "delayUrl60",
            "delayUrl120",
            "vmName",
            "guid",
            "owner",
            "eventType",
            "text",
            "subscriptionId",
            "resourceGroupName",
            "labName",
            "vmUrl",
            "minutesUntilShutdown"
        ],
        "type": "object"
    }
    

现在,与你的电子邮件客户端集成。

  1. 在设计器中,选择“新建步骤”。

    屏幕截图显示设计器中“新建步骤”。

  2. 在“选择操作”页的“搜索”字段输入“Office 365 Outlook - 发送电子邮件”,然后选择“操作”中的“发送电子邮件 (V2)”。

    屏幕截图显示“发送电子邮件 V2”选项。

  3. 在“发送电子邮件 (V2)”窗体中,填写“收件人”、“主题”和“正文”字段。

    选择“添加动态内容”,以将应用和连接器使用的值自动填充通知。 例如,对于“收件人” 请选择“所有者”。 使用“vmName”和“labName”填充“主题”。 将“skipUrl”和“delayUrl”值等内容添加到消息正文。

    屏幕截图显示示例通知电子邮件。

  4. 在工具栏上选择“保存”。

  5. 现在可以复制 Webhook URL。

    1. 选择“收到 HTTP 请求时”步骤,然后选择复制按钮,将 HTTP POST URL 复制到剪贴板。

      屏幕截图显示复制 Webhook URL。

    2. 将此 Webhook URL 粘贴到自动关机通知设置中。

      屏幕截图显示将 Webhook URL 粘贴到自动关闭设置中。

    3. 选择“保存”。

后续步骤