osd shutdown notification

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Currently when you shutdown/kill a ceph-osd it is no different from it 
crashing: you have to wait N seconds for its peers to conclude the process 
is down before the OSD is deemed 'failed' and the osd map is updated.

This would be pretty easy to improve on:

 - on a clean shutdown (e.g., due to SIGTERM), we could execv a call to 
   the ceph tool to tell the monitors the osd stopped (maybe with a 
   'reason' and nice log message).

 - on an unclean shutdown (e.g., failed assert, segfault) we can
   do the same, with an appropriate message in the system log

Basically it means that is ceph-osd crashes or shuts down then it 
will normally get instantly marked down without waiting for the normal osd 
timeout to expire.

execv() is kind of ugly, but seems safer in the failure cases, where you 
can't trust the existing MonClient to be operational.  

Alternatively, some external wrapper could watch for the process to 
terminate and notify the cluster, but this would be a bit more difficult 
to implement, because that notification needs to uniquely identify the 
process instance (e.g., via the cluster addr), and we'd need some way for 
it to wait for the osd to join and then extract that id, etc.

Thoughts?

sage


--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux