将 Calendar Server 配置为具有高可用性 (HA),可提供监视及恢复软件和硬件故障的功能。Calendar Server 高可用性功能实现为故障转换服务。本章介绍使用 Sun Cluster 软件的 Calendar Server HA 配置。
本章介绍如何安装和配置 Calendar Server HA 服务,包含以下内容:
可以在附录 C,高可用性 (High Availability, HA) 配置工作单中找到一组有助于规划 Calendar Server 高可用性配置的工作单。
Calendar Server HA 配置需要下表中显示的软件:
软件及其版本 |
说明和修补程序 |
---|---|
Solaris 9 操作系统 仅限于 SPARC 平台 |
支持 Solaris 9 操作系统的所有版本。 Solaris 9 操作系统需要 Sun Cluster 3.0 U3 或更高版本。 Solaris 9 操作系统包括 Solaris 逻辑卷管理器 (LVM)。 |
Solaris 8 操作系统 仅限于 SPARC 平台 |
Solaris 8 Maintenance Update 7 (MU7) 操作系统或更高版本,以及必需的修补程序。 |
Sun Cluster 3.0 U3 或 3.1 |
必须在群集中的所有节点上安装并配置 Sun Cluster 软件。 要安装 Sun Cluster 3.1,请使用 Java Enterprise System 安装程序并按照《Sun Java Enterprise System 2005Q4 Installation Guide for UNIX》中的安装步骤进行安装。 安装 Sun Cluster 软件后,必须配置群集。有关信息,请参阅《Sun Cluster 系统管理指南(适用于 Solaris OS)》。有关相关文档,请参见相关文档。 Sun Cluster 修补程序 有关 Solaris 9 操作系统,请参见 Sun Cluster InfoDoc 49704。 有关 Solaris 8 操作系统,请参见 Sun Cluster InfoDoc 49705。 |
Solstice DiskSuite 4 |
Solstice DiskSuite 仅适用于 Solaris 8 操作系统。 Solaris 9 操作系统包括逻辑卷管理器 (LVM),因此不需要 Solstice DiskSuite。 |
Veritas Volume Manager (VxVM) 3.x |
Solaris 8 操作系统需要 3.2 或更高版本,以及必需的修补程序。 Solaris 9 操作系统需要 3.5 或更高版本,以及必需的修补程序。 |
Veritas File System (VxFS) 3.x |
Solaris 8 操作系统需要 3.4 或更高版本,以及必需的修补程序。 Solaris 9 操作系统需要 3.5 或更高版本,以及必需的修补程序。 HAStoragePlus 需要修补程序 110435-08 或更高版本。 |
本节介绍的 Calendar Server HA 配置示例使用以下名称:
示例中的名称 |
说明 |
---|---|
/global/cal/ |
全局文件系统安装点 |
cal-logical-host |
逻辑主机名 |
cal-logical-host-ip |
逻辑主机 IP 数字地址 |
cs-admin@cal-logical-host |
Calendar Server 管理员的电子邮件地址 |
cal-node-1 |
节点 1 |
cal-node-2 |
节点 2 |
cal-resource-group |
日历资源组 |
cal-resource-group-store |
Calendar Server 存储资源 |
cal-resource |
Calendar Server 资源 |
这里列出了安装和配置 Calendar Server HA 配置所需的高级步骤。
要安装并配置 Calendar Server HA 配置,请先以超级用户身份登录或转为超级用户 (root),然后指定一个控制台或窗口,以查看发送至 /dev/console 的消息。
在群集中的每个节点上执行以下操作:
按照以下说明创建要运行 Calendar Server 的运行时用户和组:
向 /etc/group 文件中添加 icsgroup(或您选择的值)。
向 /etc/passwd 文件中添加 icsuser(或您选择的值)。
默认名称为 icsuser 和 icsgroup。如果需要,可以使用其他名称,但群集中所有节点上的 uid 和 gid 编号必须相同。用户名不应当是 root。
当运行安装后配置程序必须提供用户和组名称。
在 /etc/vfstab 文件中添加或设置以下字段:
针对 /global/cal/ 的mountpoint(或者在选择 Calendar Server 安装目录中选择的文件系统安装点。)
将 mount at boot 选项设置为 no
将 mount options设置为 logging(对于 FFS)或 global,logging(对于 GFS)
Sun Java Enterprise System 产品(包括 Calendar Server)的安装,与早期 Sun 品牌的产品(例如,Sun ONE 和 iPlanet)有很大区别。要安装 Sun Java Enterprise System 产品,必须使用 Sun Java Enterprise System 安装程序。
有关此安装程序的信息,请参阅《Sun Java Enterprise System 2005Q4 Installation Guide for UNIX》。
下表介绍了 Calendar Server HA 配置所需的 Sun 产品和软件包。
产品或软件包 |
节点 1 |
节点 2 |
---|---|---|
Sun Cluster 软件 |
是 |
是 |
Calendar Server(6.0 版和更高版本) |
是 |
否 |
Sun Cluster Agent for Calendar Server(SUNWscics 软件包) |
是 |
是 |
共享组件(SUNWicu、SUNWldk、SUNWpr、SUNWsasl 和 SUNWtls 软件包) |
是 |
是 |
在节点 1 上,使用 Java Enterprise System 安装程序安装选定的所有产品和软件包。安装 Calendar Server 时,必须指定与默认目录不同的目录。请参见选择 Calendar Server 安装目录。
在节点 2 上,请执行以下操作:
使用 Java Enterprise System 安装程序安装 Sun Cluster 和 the Sun Cluster Agent for Calendar Server(SUNWscics 软件包)。
注意:不能仅安装 Sun Cluster Agent for Calendar Server。选择了 Sun Java System Agents for Sun Cluster 后,Java Enterprise System 安装程序将安装所有代理。
使用 pkgadd 命令安装共享组件(SUNWicu、SUNWldk、SUNWpr、SUNWsasl 和 SUNWtls 软件包)。请参见安装共享组件。
对于 Calendar Server,Java Enterprise System 安装程序将使用以下默认安装目录:/opt
但对于 HA 配置,必须指定全局安装目录。例如:/global/cal/opt/
要在节点 2 安装所需的共享组件,必须安装以下软件包:
SUNWicu—适用于统一字符编码用户文件的全球通用组件
SUNWldk—LDAP C SDK
SUNWpr—Netscape 可移植运行时界面
SUNWsasl—简单验证和安全层 (Simple Authentication and Security Layer, SASL)
SUNWtls—网络安全服务
这些软件包可从以下目录中获得:
.../Solaris_sparc/Product/shared_components/Packages/SUNWldk .../Solaris_sparc/Product/shared_components/Solaris_8/Packages .../Solaris_sparc/Product/shared_components/Solaris_9/Packages
要安装这些软件包,请转至上述目录之一并使用 pkgadd 命令。例如:
# pkgadd -d . SUNWicu SUNWpr SUNWsasl SUNWtls
要配置逻辑主机,请执行以下操作:
创建一个名为 cal-resource-group 的 Calendar Server 故障转移资源组:
# scrgadm -a -g cal-resource-group -h cal-node-2,cal-node-1 |
在资源组中添加名为 cal-logical-host 的逻辑主机名。Calendar Server 将侦听此主机名。
# scrgadm -a -L -g cal-resource-group -l cal-logical-host |
将资源组联机:
# scswitch -Z -g cal-resource-group |
要激活存储资源,请执行以下操作:
将指定安装点的存储资源注册为 ServicePaths 属性:
# scrgadm -a -j cal-resource-group-store -g cal-resource-group -t SUNW.HAStorage -x ServicePaths=/global/cal -x AffinityOn=True |
启用存储资源:
# scswitch -e -j cal-resource-group-store |
如果 SUNW.HAStoragePlus 也选择了设置全局文件系统 (Global File System, GFS),则必须设置 FileSystemMountPoints 属性,而不是 ServicePaths 属性。
安装 Calendar Server 后,运行第 2 章,目录准备脚本 (comm_dssetup.pl)中介绍的 Directory Server 安装脚本 (comm_dssetup.pl) 和 Calendar Server 配置程序 (csconfigurator.sh)。
下表介绍了设置 HA 配置时必须提供的具体配置信息。
表 7–1 HA 配置所需的 Calendar Server 配置选项
配置 HA 的自动备份时,备份目录必须在共享存储分区中,以防止对群集的单个节点的复制不完整。由于备份目录很大,因而请特别注意分区的大小。
符号链接的磁盘空间计算无效。因此,请勿将符号链接用于自动备份目录。
Calendar Server 将配置文件存储在 config 目录中。在早期版本中,已重定位 config 目录。它的位置是:
/etc/opt/SUNWics5/config/
指向旧 config 目录的符号链接保存在以下目录中:
/opt/SUNWics5/cal
/opt/SUNWics5/cal/lib
/opt/SUNWics5/cal/sbin
运行 Calendar Server 配置程序 csconfigurator.sh 后,删除每个旧目录中的符号链接,并用指向新目录的链接进行替换,如以下步骤中所述。请注意,这些步骤将保留位于 /etc/opt/SUNWics5/config 中的原始配置文件中的设置。
开始前,请确保 config 目录中的内容为 icsuser 和 icsgroup(或您指定的运行时用户 ID 或组 ID)所有:
# ls -ld config ... icsuser icsgroup ... config/
转至 /global/cal/opt/SUNWics5/cal 目录,例如:
# cd /global/cal/opt/SUNWics5/cal/ |
其中,/global/cal/ 为文件系统安装点。
检查 config 是否是指向新 config 目录的符号链接。例如:
# ls -l config ... config -\> /etc/opt/SUNWics5/config/ |
在 /opt/SUNWics5/cal/ 目录中,删除 config 符号链接:
# cd /opt/SUNWics5/cal # rm config |
将 /etc/opt/SUNWics5/config 目录中的内容复制到新的 HA 目录中,并保留拥有权和权限:
# cd /global/cal/opt/SUNWics5/cal # cp -pr /etc/opt/SUNWics5/config . |
在 /global/cal/opt/SUNWics5/cal/lib 目录中,检查 config 是否是指向 /etc/opt/SUNWics5/config 的符号链接。
# cd /global/cal/opt/SUNWics5/cal/lib # ls -l config ... config -\> /etc/opt/SUNWics5/config/ |
删除 config 符号链接:
# rm config |
创建一个指向新的 config 位置的符号链接:
# ln -s ../config config |
验证新链接:
# ls -l config ... config -\> ../config/ |
在 /global/cal/opt/SUNWics5/cal/sbin 目录中,检查 config 是否是指向 /etc/opt/SUNWics5/config 的符号链接。
# cd /global/cal/opt/SUNWics5/cal/sbin # ls -l config ... config -\> /etc/opt/SUNWics5/config/ |
删除 config 符号链接:
# rm config |
创建一个指向新的 config 位置的符号链接:
# ln -s ../config config |
验证新链接:
# ls -l config ... config -\> ../config/ |
如果需要卸载 Calendar Server,请使用 Java Enterprise System 卸载程序,该程序将删除 SUNWics5 和 SUNWica5 软件包。
但是,对于 Calendar Server HA 配置,在运行卸载程序之前,必须先删除已重定位的 config 目录及其所有内容。例如:
# cd /global/cal/opt/SUNWics5/cal/ # rm -rf config |
如果不删除 config 目录,对 SUNWics5 软件包的卸载操作将失败。
在 /opt/SUNWics5/cal/config 目录中,按照以下说明编辑 ics.conf 配置文件:
添加以下参数:
local.server.ha.enabled="yes" local.server.ha.agent="SUNWscics" |
将 service.listenaddr 参数重命名为 service.http.listenaddr,然后将该参数设置为逻辑主机的 IP 地址。例如:
service.http.listenaddr = "cal-logical-host-ip" |
其中,“cal-logical-host-ip” 是逻辑主机的数字 IP 地址。例如:123.321.12.2。
将指向本地主机名的所有参数更改为逻辑主机名。例如:
local.hostname="cal-logical-host" local.servername="cal-logical-host" service.ens.host="cal-logical-host" service.http.calendarhostname="cal-logical-host.sesta.com" |
在启动 HA Calendar Server 之前,请注册日历资源类型 SUNWscics 并创建日历资源,如下所示:
注册日历资源类型:
# scrgadm -a -t SUNW.scics |
创建日历资源:
# scrgadm -a -j cal-resource -g cal-resource-group -t SUNW.scics -x Confdir_list=/global/cal/cal-resource-group -y Resource_dependencies=cal-resource-group-store -y Port_list=80/tcp |
启用该资源并启动 Calendar Server:
# scswitch -e -j cal-resource |
启动 Calendar Server 后,检查所需的所有进程或守护进程(csadmind、enpd、csnotifyd 和 cshttpd)是否都在运行。
另外,将服务切换到备份节点以确保高可用性。例如,如果服务正在 cal-node-1 上运行,则发出以下命令将服务切换到 cal-node-2。
# scswitch -z -g cal-resource-group -h cal-node-2
然后检查所有进程是否都是在 cal-node-2 上启动的。
为了便于错误诊断,错误消息将被写入控制台和 /var/adm/messages 中。
/var/cluster/rgm/rt/SUNW.scics/loglevel 文件包含日志记录级别。级别 “9” 表示最详细。
有关使用日志记录设备的信息,请参阅相关文档。
要启动和停止 Calendar Server HA 服务,请使用 Sun Cluster scswitch 命令。请勿使用 Calendar Server start-cal、csstart、stop-cal 或 csstop 实用程序。例如:
要启动 Calendar Server HA 服务,请使用以下命令:
# scswitch -e -j cal-resource
要停止 Calendar Server HA 服务,请使用以下命令:
# scswitch -n -j cal-resource
要重新启动 Calendar Server HA 服务,请使用以下命令:
# scswitch -R -j cal-resource
有关 Sun Cluster scswitch 命令的信息,请参阅《Sun Cluster Reference Manual for Solaris OS》。
《Sun Cluster 概念指南(适用于 Solaris OS)》提供有关 Sun Cluster 软件、数据服务和术语资源类型、资源和资源组的一般背景信息。
《Sun Cluster 数据服务规划和管理指南(适用于 Solaris OS)》提供有关规划和管理数据服务的一般信息。
《Sun Cluster 系统管理指南(适用于 Solaris OS)》提供管理 Sun Cluster 配置的软件操作过程。
《Sun Cluster Reference Manual for Solaris OS》介绍了 Sun Cluster 软件中可用的命令和实用程序,包括只能在 SUNWscman 和 SUNWccon 软件包中找到的命令。