8. 其他设置信息¶
本章中记载了其他监视设置和通知设置的相关信息。
本章中说明的项目如下。
8.1. 警报服务¶
8.1.1. 何谓警报服务?¶
EXPRESSCLUSTER 警报服务是将EXPRESSCLUSTER上的业务的异常通知异地管理者的功能。
通知方法有以下3种。根据各自的通知方法,通知的现象各不相同。
- E-mail通知在显示Cluster WebUI的警报信息的时刻,用邮件通知警报内容。
- 网络警报灯通知启动服务器和服务器宕机时,网络警报灯通知,显示服务器状态。服务器正常结束时,网络警报灯关闭。邮件通知和网络警报灯通知彼此独立运行。
- SNMP Trap发送在Cluster WebUI显示警报消息时,通过SNMP Trap发送警报内容。
由于进行E-Mail通知,所以即使是远离管理终端也可以及早获悉故障的发生。
邮件收信地址也可以设为手机。
通过网络警报灯亮,可以在视觉上判断故障。
通过网络警告灯的音频文件回放,可以从声音判断故障。
SNMP Trap可向设置的通报接收服务器发送故障内容。
通过电子邮件通报时,使用以下格式通报Alert内容。
邮件名 EXPRESSCLUSTER 正文 Message: Server [已宕机服务器名] has been stopped. Type: nm ID: 2 Host: [发件人 服务器名] Date: [发送时间戳]
8.1.2. 警报服务的注意事项¶
要使用本功能,需要注册EXPRESSCLUSTER X Alert Service 5.1 的认证。
本功能以发生故障的第一时间通报为目的, 而不进行EXPRESSCLUSTER上的故障调查,原因分析。发生故障时的具体原因需要用EXPRESSCLUSTER的日志或syslog等其他手段进行判断。
在使用网络警告灯功能时,必须设置警告灯厂商提供的等同于rsh 的命令。
8.1.3. 邮件通知的运行¶
8.1.4. 网络警报灯通报的运行¶
网络警报灯执行如下各种操作。
- 服务器启动时如果服务器正常启动,则亮绿灯。
- 服务器结束时如果服务器正常结束,则熄灯。
- 服务器宕机时服务器宕机时,红灯闪烁。由于是从正常服务器接受其他异常服务器查出的异常状态的通报,因此当所有服务器宕机时,无法对最后宕机的服务器的警报灯进行故障通知。
网络警报灯一旦灯亮或闪烁了,除非集群关闭否则不熄灭,所以想要灯灭时请执行[clplamp]命令。关于[clplamp]命令,请参考本指南的"9. EXPRESSCLUSTER命令参考"的"关闭网络警告灯命令(clplamp命令)"。
音频文件回放对应的网络警告灯(本公司指定产品)时,可以设置音频文件回放与灯亮和灯灭连动。
8.1.5. SNMP Trap发送动作¶
通过SNMP Trap发送与Cluster WebUI的警报消息相同的内容。具体什么样的警报消息会通过SNMP Trap发送,请参考本指南的"11. 错误消息一览表"的"事件日志,警报消息"的说明。
SNMP Trap发送的Alert可以更改。详情请参考本指南的"2. 参数的详细信息" - "集群属性" - "Alert服务标签页"。
关于SNMP Trap的详情请参照"何谓SNMP Trap发送?"。
8.2. SNMP联动¶
8.2.1. 何谓SNMP联动?¶
SNMP联动基于EXPRESSCLUSTER MIB定义,可通过EXPRESSCLUSTER的SMNP Trap发送,以及来自SNMP Manager的SNMP获取信息。
8.2.2. 何谓EXPRESSCLUSTER MIB的定义?¶
从SNMP联动获取的信息汇总为MIB定义文件。
在使用后面提到的SNMP Trap发送以及从SNMP获取信息的功能时,都需要MIB定义文件。
需要用SNMP Manager接收来自EXPRESSCLUSTER的SNMP Trap,或用SNMP Manager获取集群状态时,请在SNMP Manager中嵌入EXPRESSCLUSTER MIB定义文件。
关于如何在SNMP Manager中嵌入MIB定义文件,请参照各SNMP Manager的使用手册。
EXPRESSCLUSTER MIB定义文件位于EXPRESSCLUSTER X DVD-ROM下。
<EXPRESSCLUSTER X DVD-ROM>\Common\<版本编号>\mib
各MIB定义文件有以下几种含义。
No. |
MIB 定义文件 |
描述 |
---|---|---|
NEC-CLUSTER-SMI.mib |
EXPRESSCLUSTER MIB树的根路径已定义。 |
|
NEC-CLUSTER-EVENT-MIB.mib |
与EXPRESSCLUSTER的SNMP Trap发送功能关联的Trap 定义或MIB已定义。 |
|
NEC-CLUSTER-MANAGEMENT-MIB.mib |
与EXPRESSCLUSTER的以下信息关联的MIB已定义。
|
SNMP Manager嵌入的文件不同,可利用的功能也不同。
接收来自的EXPRESSCLUSTER的SNMP Trap时
1. NEC-CLUSTER-SMI.mib2. NEC-CLUSTER-EVENT-MIB.mib
利用SNMP获取信息时
1. NEC-CLUSTER-SMI.mib3. NEC-CLUSTER-MANAGEMENT-MIB.mib
8.2.3. 何谓SNMP Trap发送?¶
SNMP Trap发送是指将与Cluster WebUI的警报消息相同的内容发送至SNMP Manager的功能。
使用Trap送信功能,还需要设定SNMP Trap发送地址。请参照本指南的"2. 参数的详细信息" - "集群属性" - "Alert服务标签页"的SNMP Trap的"送信地址设置"进行设定。
发送的Trap用NEC-CLUSTER-EVENT-MIB定义。
已用NEC-CLUSTER-EVENT-MIB定义的各MIB对象如下所示。
clusterEventNotifications组
已定义发送Trap的组。此处已定义的各MIB对象的含义如下。
No. |
SNMP TRAP OID |
描述 |
---|---|---|
clusterEventInformation |
表示信息级别Alert的Trap。
添加clusterEvent组的MIB对象。
|
|
clusterEventWarning |
表示警报级别Alert的Trap。
添加clusterEvent组的MIB对象。
|
|
clusterEventError |
表示异常级别Alert的Trap。
添加clusterEvent组的MIB对象。
|
clusterEvent组
已定义向Trap添加信息的组。此处已定义的各MIB对象的含义如下。
No. |
SNMP OID |
描述 |
---|---|---|
clusterEventMessage |
表示Alert信息。 |
|
clusterEventID |
表示事件ID。 |
|
clusterEventDateTime |
表示Alert的发送时间。 |
|
clusterEventServerName |
表示Alert的发送来源服务器。 |
|
clusterEventModuleName |
表示Alert的发送来源模块。 |
8.2.4. 何谓用SNMP获取信息?¶
利用SNMP协议,可获取部分EXPRESSCLUSTER的配置信息,状态信息。但是,EXPRESSCLUSTER本身并不具备SNMP代理功能。需另行安装Net-SNMP snmpd Daemon作为SNMP代理。
何谓SNMP代理?
根据SNMP Manager(网络管理软件)提出的获取信息要求(GetRequest, GetNextRequest) ,反馈(GetResponse)各种配置信息,状态信息的功能。
注解
通常,在安装EXPRESSCLUSTER时,若存在Windows SNMP Service,则将自动登录SNMP联动功能,若不存在则不会登录。
此时需要手动登录。详细步骤请参照《安装&设置指南》的"安装EXPRESSCLUSTER" - "安装EXPRESSCLUSTER Server" - "如何手动设置SNMP联动功能"。
8.2.5. 关于可通过SNMP联动获取的MIB¶
可通过SNMP联动功能获取的MIB用NEC-CLUSTER-MANAGEMENT-MIB定义。
已用NEC-MANAGEMENT-MIB定义的各MIB对象如下所示。
clusterGeneral组
可获取集群联动信息的组。此处已定义的各MIB对象的含义如下。
No. |
SNMP OID |
表示集群名。 |
---|---|---|
clusterName |
表示集群名。 |
|
clusterComment |
表示集群的注释。 |
|
clusterStatus |
表示目前集群的状态。 以下是MIB的获取值与Cluster WebUI状态的对应。 MIB值 状态
----------------------
normal [正常]
caution [警告]
error [异常]
unknown -
|
clusterServer组
可获取服务器整合信息的组。获取clusterServerTable时的索引按服务器优先顺序排列。此处已定义的各MIB对象的含义如下。
No. |
SNMP OID |
描述 |
---|---|---|
clusterServerLocalServerIndex |
表示目前接受SNMP信息获取要求的服务器索引(clusterServerIndex)。 |
|
clusterServerTable |
表示服务器信息表。 |
|
clusterServerEntry |
表示服务器的信息列表。
此列表的索引是clusterServerIndex。
|
|
clusterServerIndex |
表示唯一一个能识别各服务器的索引。 |
|
clusterServerName |
表示服务器名。 |
|
clusterServerComment |
表示服务器的注释。 |
|
clusterServerStatus |
表示目前的服务器状态。 以下是MIB的获取值与Cluster WebUI状态的对应。 MIB值 状态
--------------------------------------
online [已启动]
caution [保留(网络分区未解决)]
isolated [保留(宕机后重新启动)]
offline [已停止]
unknown [不明]
|
|
clusterServerPriority |
表示服务器的优先顺序。 |
|
clusterServerProductName |
表示服务器中已安装的EXPRESSCLUSTER产品名称。 |
|
clusterServerProductVersion |
表示服务器中已安装的EXPRESSCLUSTER产品版本。 |
|
clusterServerProductInstallPath |
表示服务器已安装的EXPRESSCLUSTER之安装路径。
*返回值是ASCII 字符以外时,可执行发生乱码。
|
|
clusterServerPlatformName |
表示服务器的平台名称。 |
clusterGroup组
可获取组整合信息的组。此处已定义的各MIB对象的含义如下。
No. |
SNMP OID |
描述 |
---|---|---|
clusterGroupTable |
表示组信息表。 |
|
clusterGroupEntry |
表示服务器的信息列表。
此列表的索引是clusterGroupIndex。
|
|
clusterGroupIndex |
表示唯一一个能识别各组的索引。 |
|
clusterGroupName |
表示组名。 |
|
clusterGroupComment |
表示组的注释。 |
|
clusterGroupType |
表示组的类型。
以下是MIB的获取值与组类型的对应。
MIB值 组的类型
--------------------------------
failover 失效切换组
cluster 管理组
|
|
clusterGroupStatus |
表示目前的组状态。
以下是MIB的获取值与Cluster WebUI状态的对应。
MIB值 状态
---------------------------------
online [已启动]
onlineFailure [启动失败]
offlineFailure [停止失败]
offline [已停止]
unknown [不明]
onlinePending [启动中]
offlinePending [停止中]
|
|
clusterGroupCurrentServerIndex |
表示目前组正在启动的服务器索引(clusterServerIndex)。
组停止时,返回值为"-1"。
|
8.3. 服务器组间自动失效切换时的等待宽限时间¶
8.3.1. 何谓等待宽限时间?¶
服务器间的自动失效切换时,只在指定的时间内等待失效切换的开始。从检测到服务器宕机开始,到过了宽限时间后,开始执行失效切换。
8.3.2. 等待宽限时间条件¶
等待下述设定的组的失效切换。
选中[信息]标签页- [使用服务器组设置]
在[启动服务器]标签页- [可启动的服务器组]中多个服务器组被指定
选中[属性]标签页- [失效切换属性] - [自动失效切换] - [优先服务器组内的失效切换政策],且选中[在服务器组之间只有手动失效切换有效]
在以下情况下,不进行宽限时间的等待。
对同一个服务器组中的服务器进行失效切换时
通过服务器宕机通知查出服务器宕机时
选中[执行强制停止脚本],成功执行强制停止脚本时,以及当满足不执行强制停止脚本的条件时
强制停止类型设置为[不使用]以外,执行强制停止成功时,以及满足不执行强制停止条件时
NP解决资源被设置时
8.3.4. 宽限时间等待的注意事项¶
在宽限时间等待中,对失效切换对象的组进行操作时,取消宽限时间等待,不执行失效切换。
在宽限时间等待中,在可以确认宕机的服务器的生存时,取消宽限时间,不执行失效切换。
在宽限时间等待中,失效切换目标服务器宕机时,失效切换开始可执行会比宽限时间等待长。
8.4. Witness 服务器服务¶
8.4.2. Witness 服务器服务相关的注意事项¶
Witness 服务器服务在Node.js 环境中运行。因此在安装Witness服务器服务之前,需要先安装Node.js。
请参阅《开始指南》的"EXPRESSCLUSTER的运行环境" - "Witness服务器的运行环境"。
8.4.3. 安装Witness 服务器服务的方法¶
使用Node.js 环境的npm 命令进行安装。将Witness服务器服务模块存放在任意的文件夹内,执行以下命令。
> npm install --global clpwitnessd-<version>.tgz
请从安装盘 DVD-ROM中的以下路径获取Witness服务器的服务模块。
Common\<version>\common\tools\witnessd\clpwitnessd-<version>.tgz
8.4.4. Witness 服务器的设置方法¶
要变更Witness服务器服务设置时,直接编辑设置文件。以下命令执行结果的第1行中打开显示的文件夹。
> npm list --global clpwitnessd
(执行结果示例)
C:\Users\Administrator\AppData\Roaming\npm
-- clpwitnessd@4.1.0
将保存在打开的文件夹下的node_modules\clpwitnessd中的clpwitnessd.conf.js用记事本等文本编辑器进行编辑。
设置项目如下。
项目 |
默认值 |
说明 |
---|---|---|
http.enable |
True |
指定是否执行HTTP服务器。
true: 执行
false: 不执行
|
http.port |
80 |
指定HTTP服务器的通信端口号。 |
http.keepalive |
10000 |
指定HTTP服务器的keepalive时间。
[毫秒]
|
https.enable |
False |
指定是否执行HTTPS服务器。
true: 执行
false: 不执行
|
https.port |
443 |
指定HTTPS服务器的通信端口号。 |
https.keepalive |
10000 |
指定HTTPS服务器的keepalive时间。
[毫秒]
|
https.ssl.key |
server_key.pem |
指定在HTTPS服务器中使用的秘钥文件。 |
https.ssl.crt |
server_crt.pem |
指定在HTTPS服务器中使用的证书文件。 |
log.directory |
. |
指定日志输出目标文件夹。 |
log.level |
info |
指定日志输出级别。
error: 只进行错误日志输出
warn: 输出error + 警告日志
info: 输出warn + 信息日志
debug:输出 info + 详细日志
|
log.size |
1024 * 1024 * 512 |
指定日志的轮循大小。
[字节]
|
data.available |
10000 |
指定集群服务器的通信状况数据的默认有效期限。
[毫秒]
|
8.4.5. Witness 服务器服务的执行方法¶
执行以下命令,在前台启动Witness服务器服务。Windows服务或者作为Linux后台的执行方法请参考下面"Witness 服务器服务的OS服务化"。
> clpwitnessd
8.4.6. Witness 服务器服务的OS服务化¶
想要在OS启动时开始Witness 服务器服务,需要作为OS服务进行注册。
Witness 服务器服务作为OS服务的注册方法(Windows 服务控制管理器,Linux systemd 时) 如示例所示。此外,OS服务的注册方法因环境不同而不同,因此请根据使用的环境参考以下信息进行设置。
Windows 服务控制管理器的注册
以下是使用npm package winser 进行注册的步骤。
使用npm 命令,安装winser。执行以下命令, winser package从npm存储库中下载后,进行安装。
> npm install --global winser
在任意的场所创建执行服务用的文件夹。在默认设置中,该文件夹用于保存日志文件,SSL秘钥文件,SSL证书文件。
在用于执行服务的文件夹的根目录下,创建一个使用winser的用于服务注册用的package.json 文件。路径的分隔符中请输入两个 \ 。此外,虽然会因字符数的原因被换行,但是 "start" 中指定的路径实际上是1行。
{ "name": "clpwitnessd-service", "version": "1.0.0", "license": "UNLICENSED", "private": true, "scripts": { "start": "C:\\Users\\Administrator\\AppData\\Roaming\\npm\\clpwitnessd.cmd" } }执行winser命令,注册和启动服务。
> winser -i -a
从[控制面板]-[管理工具]-[服务]中确认在package.json的"name"里指定名称的服务(ex. clpwitnessd-service)已被注册。
Linux systemd 的注册
创建systemd 的Unit文件,进行注册的步骤如下。
在任意的场所创建执行服务用的目录。在默认设置中,该文件夹用于保存日志文件,SSL秘钥文件,SSL证书文件。(ex. /opt/clpwitnessd) /etc/systemd/system 中创建 Witness服务器服务的Unit文件。(ex. clpwitnessd.service)[Unit] Description=EXPRESSCLUSTER Witness Server After=syslog.target network.target [Service] Type=simple ExecStart=/usr/bin/clpwitnessd WorkingDirectory=/opt/clpwitnessd KillMode=process Restart= always [Install] WantedBy=multi-user.target执行systemctl 命令注册,启动服务。
# systemctl enable clpwitnessd # systemctl start clpwitnessd