watchdog 通常是一段物理电路,但这里讲的是linux 内核的实现,也就是softdog ,其原理详见IBM developerworks
watchdog非常强健,是内核的一个模块,能够在系统资源耗尽之际实现系统软重启,防止硬重启带来的巨大损失。
Watchdog 默认的动作是每隔1分钟往/dev/watchdog设备执行写操作,以证明系统运行正常,发现异常就主动发出重启信号。这种功能在高负荷的系统中很有用。虽然重启系统常常是包治百病的“明智之举“,但总让管理员们无法接受。除了重启系统,watchdog真的就没有用武之地了吗?
watchdog 强大的地方在于提供了两个接口test和repair 。
test选项提供了测试机制,一旦测试失败,watchdog就会采取行动挽救,也就是repair 。
repair 选项提供了挽救系统的办法,默认是重启系统,但可以定制,通常是一个shell 脚本。这就是本文的要点。
Watchdog配置文件示例
#ping = 172.31.14.1
#ping = 172.2