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

教程:在 Azure HDInsight 中配置 Apache Ambari 电子邮件通知

在本教程中,我们将通过使用 SendGrid 作为示例来配置 Apache Ambari 电子邮件通知。 Apache Ambari 提供了易于使用的 Web UI 和 REST API,从而简化了 Azure HDInsight 群集的管理和监视。 Ambari 包括在 HDInsight 群集中,用于监视群集和进行配置更改。 SendGrid 是一项基于云的免费电子邮件服务,该服务提供可靠的事务性电子邮件传递、可缩放性、实时分析以及可用于简化自定义集成的灵活的 API。 Azure 客户每月可解锁 25,000 封免费电子邮件。

注意

SendGrid 不强制配置 Ambari 电子邮件通知。 还可以使用其他第三方电子邮件应用,如 Outlook 和 Gmail。

本教程介绍如何执行下列操作:

  • 获取 SendGrid 用户名。
  • 配置 Ambari 电子邮件通知。

先决条件

注意

用户无法再为其 SendGrid 帐户设置密码。 需要使用 API 密钥发送电子邮件。

获取 SendGrid API 密钥

  1. Azure 门户中,转到 SendGrid 资源。

  2. 在“概述”页上,选择“在发布者站点上打开 SaaS 帐户”,转到帐户的 SendGrid 网页

    显示 Azure 门户中的 SendGrid 概述的屏幕截图。

  3. 在左侧菜单中,转到“设置”,然后选择“API 密钥”

    显示 SendGrid 仪表板导航的屏幕截图。

  4. 选择“创建 API 密钥”以创建 API 密钥。 将 API 密钥复制为 SMTP 密码,以供以后使用。

    显示 SendGrid 帐户详细信息的屏幕截图。

配置 Ambari 电子邮件通知

  1. 使用 Web 浏览器转到 https://CLUSTERNAME.azurehdinsight.net/#/main/alerts,其中 CLUSTERNAME 为群集名称。

  2. 在“操作”下拉列表中,选择“管理通知”。

  3. 在“管理警报通知”窗格中,选择 + 图标。

    屏幕截图显示了“管理警报通知”对话框。

  4. 在“创建警报通知”对话框中,提供以下信息:

    properties 说明
    Name 为通知提供一个名称。
    根据需要进行配置。
    严重性 根据需要进行配置。
    描述 可选。
    方法 保留为 EMAIL
    电子邮件收件人 提供要接收通知的电子邮件,用逗号分隔。
    SMTP 服务器 smtp.sendgrid.net
    SMTP 端口 使用 25 或 587 进行未加密/传输层安全性 (TLS) 连接。
    电子邮件发件人 提供电子邮件地址。 该地址不需要是真实的。
    使用身份验证 选中此复选框。
    用户名 如果使用 SendGrid,请直接使用 apikey
    密码 提供在 Azure 中创建 SendGrid API 密钥时复制的密码。
    密码确认 重新输入密码。
    启动 TLS 选中此复选框。

    屏幕截图显示了“创建警报通知”对话。

  5. 选择“保存”以返回到“管理警报通知”窗格。

  6. 在“管理警报通知”窗格中,选择“关闭”

常见问题解答

本部分介绍可能会遇到的问题。

如果选中“开始 TLS”复选框,则不会发生适当的协议错误

如果在“创建警报通知”对话框中选中“启动 TLS”复选框,并在 Ambari 服务器日志中收到 No appropriate protocol 异常:

  1. 转到 Ambari UI。
  2. 转到“警报”>“ManageNotifications”>“编辑(编辑通知)”
  3. 选择“添加属性”。
  4. 添加值为“TLSv1.2”的 “mail.smtp.ssl.protocol”新属性

在本教程中,你已学习了如何使用 SendGrid 配置 Ambari 电子邮件通知。 若要了解有关 Ambari 的详细信息,请参阅以下文章。