]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
mon: HealthMonitor: Keep track of monitor cluster's health
authorJoao Eduardo Luis <joao.luis@inktank.com>
Sun, 17 Mar 2013 18:40:58 +0000 (18:40 +0000)
committerJoao Eduardo Luis <joao.luis@inktank.com>
Mon, 18 Mar 2013 22:43:55 +0000 (22:43 +0000)
commitb781400f1ffb41eb7b2fe5b84f867f8da305a5d6
tree6000b12cd993e253a0bf185d6fbf0b70964c474e
parenta3751d1f42e76fa7acdc4eda59ae0d6b4bd9195d
mon: HealthMonitor: Keep track of monitor cluster's health

The HealthMonitor builds upon the QuorumService interface, and should be
used to keep track of all and any relevant information about the monitor
cluster (maybe even about all the cluster if need be).

This patch also introduces the HealthService interface, used to define
a HealthMonitor service, responsible for dispatching 'MMonHealth' messages
(the QuorumService interface dispatches generic 'Message').

Based on the HealthService interface, we introduce the DataHealthService
class, a service that will track disk space consumption by the monitors,
warn when a given threshold is crossed, and gracefully shutdown the monitor
if disk space usage hits critical levels that might affect the correct
monitor behavior.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
src/Makefile.am
src/common/config_opts.h
src/messages/MMonHealth.h [new file with mode: 0644]
src/mon/DataHealthService.cc [new file with mode: 0644]
src/mon/DataHealthService.h [new file with mode: 0644]
src/mon/HealthMonitor.cc [new file with mode: 0644]
src/mon/HealthMonitor.h [new file with mode: 0644]
src/mon/HealthService.h [new file with mode: 0644]
src/mon/mon_types.h
src/msg/Message.cc
src/msg/Message.h