Heat如何设置警报配置并从云高仪返回警报?

时间:2016-06-30 11:59:49

标签: openstack autoscaling openstack-heat ceilometer

我真的需要你的帮助。目前,我正在研究Heat自动缩放。我已经在Heat中学到了一些关于自动缩放的文档。我知道Heat使用Ceilometer API来设置警报配置并通过Webhook从Ceilometer获得警报。这些操作显示在HOT模板中(OS :: Heat :: Ceilometer :: Alarm)。我试着看看热码,但我还是找不到哪里(哪些模块)处理报警动作。特别是,哪个模块将负责创建警报URL以及将接收和处理由云高仪触发的警报URL的模块。

谢谢

1 个答案:

答案 0 :(得分:0)

用于创建警报网址:

你应该看到方法_get_ec2_signed_url

触发警报网址:

这是热量cfg服务中的一个信号。你可以在

中找到更多代码(Liberty)

heat/api/cfn/v1/__init__.py

mapper.connect('/signal/{arn:.*}',
               controller=signal_controller,
               action='signal',
               conditions=dict(method=['POST']))

heat/api/cfn/v1/signal.py

def signal(self, req, arn, body=None):
    con = req.context
    identity = identifier.ResourceIdentifier.from_arn(arn)
    try:
        self.rpc_client.resource_signal(
            con,
            stack_identity=dict(identity.stack()),
            resource_name=identity.resource_name,
            details=body)
    except Exception as ex:
        return exception.map_remote_error(ex)

然后您可以按照调用链找到您想要的内容