通过钉钉机器人发送事件通知

本文介绍如何配置事件规则,通过钉钉机器人自动向钉钉群发送事件通知,便于您及时了解E-HPC集群相关的事件,以便做出响应。

背景信息

E-HPC配合事件总线EventBridge,可以将E-HPC集群操作、节点操作事件投递到云服务专用事件总线,实现操作事件可接收、可查询、可消费。您可以对E-HPC集群和节点事件配置规则,通过钉钉机器人发送事件通知到钉钉群,从而及时获取E-HPC集群和节点的事件信息。

事件通知

准备工作

配置前,您需要开通EventBridge服务。具体操作,请参见开通事件总线EventBridge并授权

步骤一:创建钉钉机器人

创建钉钉机器人后会生成专属的Webhook地址,通过Webhook地址可以关联到其他服务(如事件总线EventBridge)接收通知。

  1. 打开需要接收事件通知的钉钉群。

  2. 进入机器人设置页面。

    1. 单击钉钉群右上角的钉钉设置图标。

    2. 群设置页面,单击智能群助手

    3. 智能群助手面板,单击添加机器人

    4. 群机器人对话框中的添加机器人区域,单击钉钉添加机器人图标。

    5. 选择要添加的机器人区域,单击自定义

    6. 机器人详情对话框,单击添加

  3. 按页面提示完成机器人设置,单击完成

    您可以自定义设置机器人名称,安全设置请选择加签并复制加签密钥。钉钉机器人

  4. 复制并保存Webhook地址。钉钉机器人2

步骤二:配置E-HPC事件规则

事件规则用于监控特定类型的事件,当发生与事件规则相匹配的事件时,事件会被路由到与事件规则关联的目标(如钉钉)。

  1. 登录事件总线控制台

  2. 在左侧导航栏选择事件总线

  3. 在顶部菜单栏选择地域。

    说明

    无法跨地域配置事件。

  4. 事件总线页面,单击default进入默认事件总线配置页面。

  5. 在左侧导航栏选择事件规则,然后单击创建规则

  6. 创建规则面板,完成规则配置。

    1. 配置基本信息页面,输入名称和描述,单击下一步

    2. 配置事件模式页面,参考参数说明完成配置,单击下一步

      参数说明如下:

      • 事件源类型:选择阿里云官方事件源

      • 事件源:选择acs.ehpc

      • 事件类型:选择事件,本文以ehpc:NodeOperation:NodeCreate为例。

        E-HPC支持的事件如下:

        事件类型

        事件及说明

        集群事件(ClusterOperation)

        • ClusterCreate:集群开始创建

        • ClusterCreated:集群完成创建

        • ClusterDelete:集群开始删除

        • ClusterDeleted:集群完成删除

        • ClusterStart:集群开始启动

        • ClusterStarted:集群完成启动

        • ClusterStop:集群开始停止

        • ClusterStopped:集群完成停止

        ClusterStatusChange:集群状态转换

        节点事件(NodeOperation)

        • NodeCreate:集群扩容,节点开始创建

        • NodeCreated:集群扩容,节点完成创建

        • NodeDelete:集群缩容,节点开始删除

        • NodeDeleted:集群缩容,节点完成删除

        • NodeStart:节点开始启动

        • NodeStarted:节点完成启动

        • NodeStop:节点开始停止

        • NodeStopped:节点完成停止

        NodeStatusChange:节点状态转换

    3. 配置事件目标页面,参考参数说明完成配置,单击创建

      首次操作时,需完成服务授权,允许阿里云事件总线访问审计日志。

      参数说明如下:

      • 服务类型:选择钉钉

      • 地址:填入步骤一保存的Webhook地址。

      • 密钥:填入步骤一保存的加签密钥。

      • 推送内容:本文以集群扩容节点为例进行配置,示例如下。更多信息,请参见事件内容转换

        • 变量

          {
           "requestId": "$.data.RequestId",
           "uid": "$.data.Uid",
           "subUid": "$.data.SubUid",
           "clusterId": "$.data.ClusterId",
           "clusterName": "$.data.ClusterName",
           "regionId": "$.data.RegionId",
           "zoneId": "$.data.ZoneId",
           "vSwitchId": "$.data.VSwitchId",
           "imageId": "$.data.ImageId",
           "instanceType": "$.data.InstanceType",
           "count": "$.data.Count",
           "jobQueue": "$.data.JobQueue",
           "createTime": "$.data.CreateTime"
          }
        • 模板

          {
           "msgtype": "text", 
           "text": {
           "content": "亲爱的阿里云客户 ${uid} ,您好!\n温馨提醒您的账户于 ${createTime} 在 ${regionId} 地域在弹性高性能计算集群 ${clusterName}(${clusterId}) 上进行节点扩容,操作信息如下:\n\t可用区ID: ${zoneId}\n\t交换机ID: ${vSwitchId}\n\t镜像ID: ${imageId}\n\t实例类型: ${instanceType}\n\t节点数量: ${count}\n\t作业队列: ${jobQueue}\n\t节点创建时间: ${createTime}\n\nPS: 本次的请求ID为 ${requestId} ,如果您在使用E-HPC过程有任何疑问请凭此请求ID发起工单提问,祝您生活愉快,再会!"
           }
          }

结果验证

本文步骤二配置的事件为ehpc:NodeOperation:NodeCreate,则集群如果扩容了节点,将触发钉钉消息通知。以下为集群扩容节点触发钉钉发送事件通知的验证步骤,您可以根据自身配置的事件规则进行相应验证。

  1. 对某个集群进行手动扩容节点。具体操作,请参见扩容集群

  2. 查看钉钉群的消息通知。钉钉通知新

阿里云首页 弹性高性能计算 相关技术圈