Calendar Server 和 Messaging Server 现在使用相同的停止和启动机制。start-cal 命令启动 watcher 进程,然后启动所有其他进程。watcher 进程知道其他服务的所有相关性以及这些服务的启动顺序。
每个注册的服务(进程)都将打开与 Watcher 的连接。如果某个进程在未正常断开连接的情况下结束,Watcher 将自动重新启动该进程。如果该进程在定义的时间间隔内结束两次,Watcher 将不再重新启动该进程。此超时时间间隔是可配置的。
其他 Watcher 信息:
Watcher 将监视在其中注册的所有服务。对于 Calendar Server,注册的进程包括: cshttpd、csadmind、csdwpd、csnotifyd 和 csstored。
必须启用 csstored 守护程序。确保将配置参数 local.store.enable 设置为 "y"。csstored 的启用在 Calendar Server 早期版本中是可选的,但现在是必需的。csstored 守护程序必须在访问存储库的每个服务启动之前成功启动。如果 csstored 停止,则相关进程也必须停止然后再重新启动。
Watcher 在默认情况下处于启用状态。为了管理 Watcher 进程,已向 ics.conf 文件中添加了新参数:
local.watcher.enable = "y":启动程序 (csservice) 尝试在任何其他服务之前启动 Watcher。如果此参数设置为 "n",则 Watcher 程序将被禁用。
service.autorestart = "y":Watcher 将自动重新启动已停止的服务。如果设置为 "n",则 Watcher 不会重新启动已停止的服务。如果将此参数设置为 "n",则 Watcher 仍将监视服务,并将故障或非响应错误消息发送到控制台和 cal-svr-base/data/log 文件。
local.autorestart.timeout = "600":默认时间,在此时间内另一个服务器故障会触发 Watcher 停止重新启动的尝试。
local.watcher.port:默认端口为 "49994";但是,如果您有 Messaging Server,它也将侦听此端口,并且会与 Calendar Server 发生冲突。要避免可能的冲突,较安全的做法是为 Watcher 选择其他端口进行侦听。
Watcher 写入单个日志 cal-svr-base/data/log/watcher.log,其中包含以下信息:
发送到管理控制台的故障通知和非响应错误消息。
所有服务器停止和启动的记录。
如果服务器在超时时间段内发生两次故障,系统将停止重新启动该服务器的尝试。在 HA 系统中,将关闭 Calendar Server 并向其他系统进行故障转移。
csservice 的公用接口为 start-cal 和 stop-cal。本部分介绍上述每个包装脚本的用法,并包含解释选项的表格,以及要启动或停止的组件列表。
start-cal 的用法如下:
./start-cal [options...] [components...]
以下是选项列表:
显示此帮助列表。
启用调试模式。
列出活动的服务。
列出启用的服务。
列出所有服务。
以下是组件列表:
watcher |
ens |
store |
notify |
admin |
http |
dwp |
如果未列出任何组件,则 start-cal 将启动所有已启用的服务。
stop-cal 的用法如下:
./stop-cal [options...] [components...]
以下是选项列表:
显示此帮助列表。
启用调试模式。
强制停止使用 SIGKILL。(这只适用于 UNIX® 平台。)
以下是组件列表:
watcher |
mfagent |
ens |
store |
notify |
admin |
http |
dwp |
如果未列出任何组件,则 stop-cal 将停止所有已启用的服务。