Sun Java System Calendar Server 6 2005Q4 管理指南

第 12 章 管理 Calendar Server

本章及使用由 Messaging Server 创建的域中的其他各章介绍了如何管理 Calendar Server,本章包含以下小节:

您可以通过运行 Delegated Administrator 实用程序(以前称为用户管理实用程序)或 Calendar Server 命令行实用程序,并编辑 ics.conf 配置文件来管理 Calendar Server。

要运行命令行实用程序,必须以具备管理权限的用户身份登录正在运行 Calendar Server 的系统。

有关更多信息,请参见附录 D,Calendar Server 命令行实用程序参考


注 –

其他管理主题分别包含在其他单独的章节中。其中包括以下主题:


启动和停止 Calendar Server

本节介绍了如何使用 start-calstop-cal,它包含以下主题:

关于 start-cal 和 stop-cal

可以使用 start-calstop-cal 命令启动和停止 Calendar Server。start-calstop-cal 实用程序位于 cal_svr_base/SUNWics5/cal/sbin 目录中。必须在已安装 Calendar Server 的本地计算机上运行这些实用程序。


注 –

Calendar Server 提供了 csstartcsstop 实用程序只是为了与其早期版本兼容。建议使用 start-calstop-cal 实用程序来启动和停止 Calendar Server。


start-cal 实用程序按以下顺序启动 Calendar Server 服务:

  1. enpd—事件通知服务 (ENS)

  2. csnotifyd—通知服务

  3. csadmind—管理服务

  4. csdwpd—数据库有线协议 (Database Wire Protocol, DWP) 服务,只能通过远程 Calendar Server 数据库配置启动的分布式数据库服务

  5. cshttpd—HTTP 服务

  6. csstored—自动备份服务

有关这些服务的介绍,请参见Calendar Server 服务

Procedure使用 start-cal 启动 Calendar Server

步骤
  1. 以具备管理权限的用户身份登录。

  2. 转到 cal_svr_base/SUNWics5/cal/sbin 目录。

  3. 启动 Calendar Server:


    ./start-cal

Procedure使用 stop-cal 停止 Calendar Server

步骤
  1. 以具备管理权限的用户身份登录正在运行 Calendar Server 的系统。

  2. 转到 cal_svr_base/SUNWics5/cal/sbin 目录。

  3. 停止 Calendar Server:


    ./stop-cal

启用或禁用自动备份

自动备份由 csstored 进程来管理,在发出 start-cal 命令时,将自动启动该进程。但是,您可以根据需要来启用或禁用自动备份。默认值为禁用自动备份。即使未启用自动备份,csstored 进程也会运行。

有两种自动备份:热备份和归档备份。您可以分别启用或禁用它们。

发出 start-cal 命令之前必须先配置 csstored 进程,否则会收到错误消息,通知您尚未配置 csstored。此后每隔 24 小时您都会收到该消息,直到配置了此进程。

有关自动备份的信息和配置 csstored 的说明,请参见第 10 章,配置自动备份 (csstored)

以下是启用和禁用自动备份的任务列表:

Procedure启用热备份

步骤
  1. 在命令行处,转至 ics.conf 所在的目录:

    cd /etc/opt/SUNWics5/config

  2. 通过将以下 ics.conf 参数设置为 "yes" 来启用热备份:

    caldb.berkeleydb.hotbackup.enable="yes"

  3. 指定热备份目录的目录路径:

    caldb.berkeleydb.hotbackup.path=
       /var/opt/SUNWics5/hotbackup_directory
    

    默认值为当前目录。

  4. 编辑完 ics.conf 文件后,请重新启动 Calendar Server:

    cal_svr_base/SUNWics5/cal/sbin/start-cal

    您无需为编辑 ics.conf 文件停止日历服务,但必须重新启动服务以使更改生效。

Procedure启用归档备份

步骤
  1. 在命令行处,转至 ics.conf 所在的目录:

    cd /etc/opt/SUNWics5/config

  2. 通过将以下 ics.conf 参数设置为 "yes" 来启用归档备份:

    caldb.berkeleydb.archive.enable="yes"

  3. 指定归档目录的目录路径:

    caldb.berkeleydb.archive.path=
       /var/opt/SUNWics5/hotbackup_directory
    

    默认值为当前目录。

  4. 编辑完 ics.conf 文件后,请重新启动 Calendar Server:

    cal_svr_base/SUNWics5/cal/sbin/start-cal

    您无需为编辑 ics.conf 文件停止日历服务,但必须重新启动服务以使更改生效。

Procedure禁用热备份

默认情况下,禁用备份。如果您先前已启用了它们而现在要禁用它们,请执行以下步骤:

步骤
  1. 在命令行处,转至 ics.conf 所在的目录:

    cd /etc/opt/SUNWics5/config

  2. 通过将以下 ics.conf 参数设置为 "no" 来禁用热备份:

    caldb.berkeleydb.hotbackup.enable="no"

  3. 编辑完 ics.conf 文件后,请重新启动 Calendar Server:

    cal_svr_base/SUNWics5/cal/sbin/start-cal

    您无需为编辑 ics.conf 文件停止日历服务,但必须重新启动服务以使更改生效。

Procedure禁用归档备份

默认情况下,禁用备份。如果您先前已启用了它们而现在要禁用它们,请执行以下步骤:

步骤
  1. 在命令行处,转至 ics.conf 所在的目录:

    cd /etc/opt/SUNWics5/config

  2. 通过将以下 ics.conf 参数设置为 "no" 来禁用归档备份:

    caldb.berkeleydb.archive.enable="no"

  3. 编辑完 ics.conf 文件后,请重新启动 Calendar Server:

    cal_svr_base/SUNWics5/cal/sbin/start-cal

    您无需为编辑 ics.conf 文件停止日历服务,但必须重新启动服务以使更改生效。

管理组计划引擎队列

组计划引擎 (GSE) 保持一个将用于更新组件数据库的事件队列。管理员可以更改超时值以调整 Calendar Server 扫描队列的时间间隔。还可以列出队列中的事件,如果需要也可以将特定事件删除。

本节包含以下主题:

关于 GSE

GSE 允许 Calendar Server 用户创建事件和邀请其他参与者。如果参与者也在同一个 Calendar Server 上,则会在其日历上预定此事件。如果参与者不在同一个 Calendar Server 上,则会通过电子邮件向其发送邀请。参与者可以接受或拒绝邀请,GSE 将根据回复来更新事件。

关于 GSE 队列

GSE 队列实际上是由 GSE 管理的独立数据库。Calendar Server 将扫描队列来查找需要对组件数据库进行哪些更新。

可以调整扫描的频率来调整 Calendar Server。这可通过更改 ics.conf 文件中 gse.belowthresholdtimeout 的超时值来完成。请参见第 21 章,优化 Calender Server 的性能

可以使用 csschedule 来管理(列出和删除)GSE 队列条目。必须在已安装 Calendar Server 的本地计算机上运行 csschedule

列出 GSE 队列中的条目

要列出 GSE 队列中的条目,请使用 csschedule 实用程序的 list 命令。

例如,要列出 GSE 队列中的所有条目:


csschedule list

要列出 GSE 队列中存储的前十个条目:


csschedule -c 10 list

要列出 GSE 队列中带有 calid Holiday_Schedule 的所有条目:


csschedule -v list Holiday_Schedule

删除 GSE 队列中的条目

要删除 GSE 队列中的条目,请使用 csschedule 实用程序的 delete 命令。

例如,要删除 GSE 队列中的所有条目:

csschedule -v delete

要删除 GSE 队列中 calA 日历的首次计划时间为 2001 年 11 月 30 日 13:30:45,偏移数为 1,唯一标识符为 1111,周期 ID 为 0,序列号为 0 的条目:

csschedule -v -t 20011130T133045Z -o 1 -u 1111 -r 0 -n 0 delete calA

监视 Calendar Server

您也许要将监视系统活动作为日常任务的一部分。以下列出了几个可以用于监视 Calendar Server 活动的实用程序工具:csmonitorcsstats cstool。此外,您还可以设置多个日志文件来帮助监视系统的使用情况。

本节包含以下主题:

关于 csmonitor

此 Calendar Server 实用程序是一种要求使用 bash 的 shell 脚本。调用该实用程序时,它将执行以下功能:

为了进行调试,您可以将监视程序配置为以时间间隔很短的持续循环模式运行,但是该模式需要更多的系统资源,因此,在正常生产过程中您不希望将监视程序保持在该模式下。

要在正常情况下使用 csmonitor,请将其设置为以您所选择的时间间隔运行。

有关 csmonitor 实用程序的更多信息,请参见附录 D,Calendar Server 命令行实用程序参考

Procedure配置 csmonitor

步骤
  1. 以有权更改此配置的管理员身份登录。

  2. 转至 /etc/opt/SUNWics5/cal/config 目录。

  3. 通过复制和重命名旧的 ics.conf 文件来保存该文件。

  4. 编辑下表中所示的一个或多个 ics.conf 参数:

    参数 

    说明和默认值 

    service.monitor.continuous

    指定 csmonitor 是否应持续循环:"0"—不持续循环(默认值)。"1"—持续循环。

    将此参数设置为 "1" 可以使 csmonitor 自动运行。

    service.monitor.loopsdelay

    指定两次监视循环之间的延迟秒数。默认值为 "60" 秒。 

    为了进行调试,请设置较短的时间间隔;为了进行生产,请设置较长的时间间隔。 

    service.monitor.emailaddress.from

    指定 csmonitor 从中发送信息的电子邮件地址。未提供默认值。

    service.monitor.emailaddress.to

    指定 csmonitor 向其发送消息的电子邮件地址。未提供默认值。

    service.monitor.csdb.logthreshold 

    监视日历数据库 (csdb)。以总磁盘空间百分比的形式指定一个阈值,以代表最大磁盘空间占用率。如果 csdb 目录的磁盘空间占用率超过该值,它将发送警告电子邮件消息。默认值为 "90"

    logfile.monitor.logname

    指定 csmonitor 日志文件名。默认值为 "csmonitor.log"

    logfile.monitor.maxlogfilesize

    指定日志文件的最大大小。如果日志文件大小超过此值,csmonitor 将日志另存为 csmonitor.log.timestamp,然后重置当前日志。默认值为 "2097152"

    service.monitor.dbglevel

    指定调试级别。范围是 05,值越高,csmonitor 发送的消息就越精确,越详细。默认值为 "0",指定无日志记录。值为 "5" 时表示调试日志记录。

  5. 将此文件另存为 ics.conf

  6. 重新启动 Calendar Server。

    cal_svr_base/SUNWics5/cal/sbin/start-cal

列出计数器统计信息

csstats 实用程序显示日历配置 (counter.conf) 文件中定义的计数器对象的统计信息。计数器对象(例如 httpstatauthstatwcapstatdbstat)显示 Calendar Server 的以下信息:

有关 Calendar Server 计数器统计信息的信息,请参见附录 E,Calendar Server 配置参数

使用 cstool 进行监视

您可以对以下服务及安装了 Calendar Server 的计算机执行 ping:

有关使用 cstool 的信息,请参见附录 D,Calendar Server 命令行实用程序参考

使用 Calendar Server 日志文件

每个 Calendar Server 服务都将状态信息写入它的日志文件。每个日志文件都根据其相关的服务名命名,如下表所示:

服务名 

日志文件名 

管理服务 (csadmind) 

admin.log 

分布式数据库服务 (csdwpd) 

dwp.log 

HTTP 服务 (cshttpd) 

http.log 

通知服务 (csnotifyd) 

notify.log 

单点登录 

am_sso.log 

启动命令的日志 

start.log 

停止命令的日志 

stop.log 

存储命令的日志 

store.log 

Calendar Server 日志文件存储在以下默认目录中:

/var/opt/SUNWics5/logs

每个日志文件将回滚为由唯一编号标识的新日志文件。例如:

admin.log.8.1083013284 http.log.8.1083013284

Calendar Server 为日志文件中报告的事件提供了六种严重级别,如下表所示。可以通过修改 ics.conf 参数 logfile.loglevel 来指定 Calendar Server 在日志文件中报告的事件的严重级别。

严重级别 

含义 

CRITICAL 

表示处于危险状态。 

ERROR 

表示处于错误状态。 

WARNING 

表示处于警告状态。 

NOTICE 

表示处于运行正常、但需要特别注意的状态。这是每个日历服务的默认报告级别。 

INFORMATION 

表示提示性信息。 

DEBUG 

表示调试级别的信息。 

一个日志事件通过一行内容表示,其中显示相关的时间标记、服务器主机名、严重级别、进程名(进程 ID)、事件类型、优先级和说明。

有关 ics.conf 日志设置的信息,请参见附录 E,Calendar Server 配置参数

清除 CLD 缓存

如果已启用 CLD 高速缓存,则可能需要经常清除此高速缓存。本节包含以下主题:

为什么要清除 CLD 高速缓存?

CLD 高速缓存会因各种原因而变得与系统配置不同步,例如:

如果执行了以上任一操作,则为了刷新 CLD 高速缓存,您必须清除它。

Procedure清除 CLD 高速缓存

步骤
  1. 停止 Calendar Server。

  2. 删除 /var/opt/SUNWics5/csdb/cld_cache 目录中的所有文件,但不要删除 cld_cache 目录本身。

  3. 重新启动 Calendar Server。

更改服务器名

如果在配置中添加、删除或更改了服务器名,则为了避免错误,应执行以下几个“内务处理”步骤:

配置匿名访问

匿名访问是一种不需要验证的特殊登录方式。默认情况下,启用匿名登录时,将启用对公共日历的读写访问权限。有可能拒绝对公共日历的写访问权限。本节包含以下主题:


注 –

Communications Express 需要允许进行读写操作的匿名登录。请参见配置 Communications Express


Procedure启用匿名访问

步骤
  1. 以有权更改此配置的管理员身份登录。

  2. 转至 /etc/opt/SUNWics5/cal/config 目录。

  3. 通过复制和重命名旧的 ics.conf 文件来保存该文件。

  4. 编辑 ics.conf 中的以下参数以启用匿名访问:

    参数 

    说明和默认值 

    service.http.allowanonymouslogin

    如果需要,通过将该参数设置为 "yes" 可以启用匿名访问(登录)。默认值为 "yes"

    service.calendarsearch.ldap

    出于安全性目的,启用匿名登录之后,您可能希望在进行日历搜索时,首先禁用对 LDAP 的搜索,为此可以将该参数设置为 "no"(默认值)。


    注 –

    Communications Express 需要 service.calendarsearch.ldap 参数值为 "no"。这与有关在 DWP 环境中调优系统以获得最佳性能的说明冲突。(数据库分布在多个后端中。)请参见提高日历搜索在 DWP 环境中的性能


  5. 将此文件另存为 ics.conf

  6. 重新启动 Calendar Server。

    cal_svr_base/SUNWics5/cal/sbin/start-cal

Procedure禁用匿名用户对公共日历的写操作

步骤
  1. 以有权更改此配置的管理员身份登录。

  2. 转至 /etc/opt/SUNWics5/cal/config 目录。

  3. 通过复制和重命名旧的 ics.conf 文件来保存该文件。

  4. 编辑下表所示的以下 ics.conf 参数:

    参数 

    说明和默认值 

    service.wcap.anonymous.

    allowpubliccalendarwrite

    启用或禁用允许进行匿名访问的用户对公共日历的写操作。将此值设置为 "yes"(默认值)可以启用写访问权限。

  5. 将此文件另存为 ics.conf

  6. 重新启动 Calendar Server。

    cal_svr_base/SUNWics5/cal/sbin/start-cal

启用代理管理员登录

为实现 Communications Express,必须启用代理管理员登录(代理验证)。有关为 Communications Express 配置代理验证的说明,请参见配置 Communications Express

但是,即使不使用 Communications Express,也可以启用代理验证。本节包含启用代理验证而不使用 Communications Express 的过程:

Procedure启用代理验证而不使用 Communications Express

步骤
  1. 以有权更改此配置的管理员身份登录。

  2. 转至 /etc/opt/SUNWics5/cal/config 目录。

  3. 通过复制和重命名旧的 ics.conf 文件来保存该文件。

  4. 编辑 ics.conf 文件,请设置以下参数:

    service.http.allowadminproxy = "yes"

  5. 将此文件另存为 ics.conf

  6. 重新启动 Calendar Server 以便新值生效。

Procedure验证代理验证正在工作

步骤

    使用以下 WCAP 命令验证管理员代理登录正在工作:

    http://server[:port]
    /login.wcap?user=admin-user&password=admin-password
    &proxyauth=calendar-user
    

    其中:

    • server—运行 Calendar Server 的服务器的名称。

      • port—Calendar Server 端口号。默认端口为 80。

      • admin-user—Calendar Server 管理员。例如,calmaster

      • admin-passwordadmin-user 的密码。

      • calendar-user—Calendar Server 用户的 calid

        如果命令运行成功,Calendar Server 将显示 calendar-user 的日历。如果发生问题,Calendar Server 将显示“未授权”。原因可能是:

      • admin-user 没有 Calendar Server 管理员权限。

      • admin-password 不正确。

      • calendar-user 不是有效的 Calendar Server 用户。

刷新 Calendar Server 配置

在当前发行版本中,请不要使用 cstool refresh 命令来刷新配置。应使用 stop-calstart-cal 命令。有关更多信息,请参见启动和停止 Calendar Server