Copyright (c) 2014, Huawei Technologies Co., Ltd
All rights reserved
- mongodb服务不可用导致ceilometer-collector服务不可用。在ceilometer-collector服务启动时如果mongodb服务不可用,则会抛出异常,此时进程不会自然终止。当mongodb恢复为可用时,ceilometer-collector无法自动连接数据库,造成进程虽然存在但实际上功能不可用。
- keystone服务不可用导致ceilometer-agent-central服务不可用。当ceilometer-agent-central在指定的周期采集数据时,如果keystone服务中断,则会抛出异常但ceilometer-agent-central进程不会终止,且当keystone服务恢复后,ceilometer-agent-central服务不会自动恢复可用
- 强制在ceilometer-collector启动时保证mongodb服务可用,则不会出现该异常场景。对于服务监测,可以通过检测ceilometer-collector服务启动时以及周期采样数据时是否有数据入库,或者检测log中最新内容是否有
RuntimeError: No ceilometer.dispatcher extensions found
判定collector是否正常启动 - 这是新发现的一个可以修复的bug,在没有进行patch的环境中,可以通过检测周期采样数据是否入库或者log中最新内容是否有
AuthorizationFailure: Authorization Failed
来判定ceilometer-agent-central是否正常运行
mysql服务异常将导致无法验证keystone token,导致各项功能不可用,未处理的数据可能丢失。mongodb服务异常将导致数据无法读写,api返回失败,各项功能不可用,未处理的数据可能丢失。
消息队列服务异常将导致事件无法及时被收发,各项功能出现部分不可用或完全不可用,部分api可以正常使用,未处理的数据可能丢失。
- keystone服务异常将导致各功能不可用,可能导致ceilometer-agent-central服务异常
- nova, glance, cinder, neutron, swift等服务异常,将导致对应服务的数据无法采集
- ceilometer-api服务异常将导致无法响应对ceilometer的调用请求
- ceilometer-collector服务异常将导致采集到的数据无法入库
- ceilometer-agent-central服务异常将导致无法定时拉取非计算资源的数据
- ceilometer-agent-compute服务异常将导致无法定时拉取计算资源的数据
- ceilometer-alarm-evaluator服务异常将导致无法定时更新告警状态
- ceilometer-alarm-notifier服务异常将导致告警被触发时无法发送通知
多节点部署下控制节点与网络节点有高可用服务,单节点异常不会对功能造成服务不可用的影响
将导致对该计算节点上的数据采集失败
将导致对该计算节点上的数据采集失败
以周期采样任务为例,流程为:
- ceilometer:ceilometer-agent-central触发周期任务
- keystone:调用keystoneclient创建Client对象
- nova, and etc:根据定义的各个指标的拉取方法,调用对应的服务的客户端,获取数据
- amqp: 调用消息队列服务接口,发送消息
- ceilometer:ceilometer-collector获取消息,解析数据
- db:ceilometer-collector将数据入库
可能发生的故障为:
无法进行周期性的数据采集
停止ceilometer-agent-central服务,并等待一段时间(默认周期10分钟),此时即可发现没有新的采样数据生成
无法创建Client对象,进而导致ceilometer-agent-central服务无法进行数据采集工作
停止keystone服务并等待一段时间(默认周期10分钟),此时即可发现没有新的采样数据生成,后台有日志报错
无法获取对应服务的数据,如nova停止服务,则浮动ip这个指标无法采集
停止nova服务并等待一段时间(默认周期10分钟),此时即可发现没有新的采样数据生成,后台有日志报错
ceilometer-agent-central服务无法发送消息,之前已经发送但尚未被接收的消息也无法被ceilometer-collector服务收到
停止amqp服务并等待一段时间(默认周期10分钟),此时即可发现没有新的采样数据入库,后台日志显示数据成功采集,但是发送消息时报错
ceilometer-agent-central所发送的消息无法被接收,所采集到的数据无法入库,api查询将得不到最新的数据
停止ceilometer-collector服务并等待一段时间(默认周期10分钟),此时即可发现新的采样数据没有入库
ceilometer-collector无法调用数据库接口将数据入库,api查询将得不到数据,数据库恢复后api查询将得不到最新的数据
停止mongodb服务并等待一段时间(默认周期10分钟)