是否有可能使用命令--alarm-action 'log: //'在OpenStack上运行任何脚本或创建VM实例,例如:我可以这样做吗?
$ ceilometer alarm-threshold-create --name cpu_high/\ --description 'instance running hot' --meter-name cpu_util --threshold 70.0 --comparison-operator gt --statistic avg --period 600 --evaluation-periods 3 --alarm-action './script.sh' --query resource_id=INSTANCE_ID--alarm-action './script.sh'启动script.sh的地方
发布于 2015-08-12 15:36:42
不可能使用Ceilometer操作来运行脚本。
OpenStack API的设计一般假定运行客户端命令的人(a)正在远程运行它们,而不是在服务器上运行,(b)不是系统的管理员。特别是(b)意味着允许您在服务器上运行任意脚本将是一个可怕的安全问题,因为您首先需要一种在服务器上安装脚本的方法,然后需要有一种方法来阻止您尝试运行,比如/sbin/reboot。
出于这个原因,ceilometer操作需要是URL。您可以设置一个简单的web服务器,它将接收来自Ceil示波器的信号,并执行响应脚本。
如果使用热度部署资源,则可以设置自动标度组,并让Ceil示警触发自动标度操作(例如,创建新服务器或删除服务器)。
https://stackoverflow.com/questions/31969543
复制相似问题