本附录描述的几个过程并不完全适用于本文档中的其它各节。具体来说,本附录包括下列信息:
服务器层包含五个组件。
除服务器以外,其它四种组件均为 Sun Management Center 代理,与专用模块一起加载。
拓扑管理器和事件管理器以及其它所有 Sun Management Center 代理的默认配置均由代理统计模块定义。此模块包含的一些功能可以防止发生导致主机崩溃的错误。默认操作是软件在超过预定义的阈值时终止拓扑管理器进程。有关代理统计模块的更多信息,请参见代理统计模块版本 2.0。
您可能需要监视拓扑管理器、陷阱处理程序、配置管理器和事件管理器以确定它们的状态。配置管理器和陷阱处理程序已经过配置,因此用户无需执行任何维护工作。此外,拓扑管理器和事件管理器的默认配置对于多数用户环境都适用。用户也可以修改这些默认配置,以满足某些特殊环境的要求。
在主控制台窗口中,从“编辑”菜单中选择“创建对象”。
将显示“创建对象”窗口。默认情况下,将显示“节点”选项卡。有关更多信息,请参见创建节点。
从“监视方式”菜单中选择“Sun Management Center 代理 - 主机”。
在“节点标签”字段中键入服务器组件的名称。
(可选的)键入服务器组件的说明。
在“主机名”字段中键入 Sun Management Center 服务器名。
在“端口”字段中键入服务器组件的端口号。
Sun Management Center 软件使用以下默认端口值:
代理组件:端口 161
服务器陷阱处理程序:端口 162
服务器事件管理器:端口 163
服务器拓扑管理器:端口 164
服务器配置管理器:端口 165
默认情况下,服务器组件使用端口 2099。但是,用户不能在此更改服务器组件端口号。
执行下列某一操作来完成此步骤:
单击“确定”创建服务器组件对象,然后关闭此窗口。
单击“应用”按钮创建服务器组件对象,但不关闭此窗口。
Sun Management Center 服务器包括注册表特性,可以向服务器注册增值产品(例如 Hardware Diagnostics Suite)。注册表特性默认情况下使用端口 5600。如果其他应用程序正使用该端口,则该应用程序将失败。要更改注册表端口,请执行下列步骤:
在 /var/opt/SUNWsymon/cfg/javaserver.properties 文件中更改 ServiceRegistryPort 的值。
在 /var/opt/SUNWsymon/cfg/javaservice.properties 文件中,更改 ServiceRegistryPort 的值,以匹配在上一个步骤中提供的值。
重新启动 Sun Management Center 服务器。
设置 Sun Management Center 服务器时,如果默认端口号已被使用,安装程序将提示用户为注册表服务提供其它端口号。
拓扑管理器使主控制台窗口能够以拓扑视图显示逻辑对象。拓扑管理器还提供创建逻辑对象(例如组)的功能,其状态概括了多个被管理对象的状态。
被管理对象包括网络、主机、硬件组件和软件组件。对象总数及这些对象的内容决定了系统资源要求,例如用于拓扑管理器的虚拟大小。此要求必须小于拓扑管理器的默认设置。
如果拓扑管理器的虚拟大小超过其默认值,拓扑管理器将退出并显示下列错误信息:
error excessive virtual memory use |
要解决此问题,请按下列步骤增加默认虚拟大小。
慎重地评估情况。
创建由拓扑管理器监视的对象。
请参见创建服务器组件作为被监视的对象。
使用下列任一方法打开“细节”窗口:
在“拓扑管理器对象”图标上单击鼠标按钮 3。在分层结构视图或拓扑视图上,从弹出菜单中选择“细节”。
双击“拓扑管理器”图标。
在主控制台窗口中,选择“拓扑管理器”图标,然后从“工具”菜单中选择“细节”。
在“浏览器细节”窗口中,双击分层结构(树)视图的“本地应用程序”图标。
双击内容视图的“代理统计”图标,或者单击分层结构视图中“代理统计”图标旁边的扩展图标。
显示“代理统计”文件夹。
双击“PA 进程统计”的文件夹图标。
被监视属性显示在属性表中。
选择“虚拟大小”单元格,然后通过下列任一方法打开“属性编辑器”:
在表行中单击鼠标按钮 3,从弹出菜单上选择“属性编辑器”。
单击“属性”按钮。
单击“报警”选项卡按钮。
将显示报警行。
在“紧急阈值 (>)”字段键入所需的值。
执行下列某一操作来完成此步骤:
单击“确定”创建新的临界阈值,然后关闭此窗口。
单击“应用”按钮创建新的临界阈值,但不关闭此窗口。
事件管理器使用默认端口 163,通过 SNMP 与其他服务器组件通信。与拓扑管理器相似,事件管理器也加载了代理统计模块。此外,事件管理器也自动与专用事件管理模块一起加载。事件管理模块显示在“本地应用程序”类别的“浏览器细节”窗口中。
事件管理模块负责事件数据库的全面维护工作。其职责包括清除已删除的事件、重命名废弃文件以及智能化删除。
智能化删除意味着 Sun Management Center 软件在设置的时段后,自动从事件数据库中删除已关闭的、已修复的和打开的事件。默认情况下,已关闭或已修复的事件将在 7 天后从数据库中删除,已打开的事件将在 30 天后删除。要更改这些默认值,请执行下列步骤。
创建由事件管理器监视的对象。
请参见创建服务器组件作为被监视的对象。
通过下列方法之一打开“细节”窗口:
在“事件管理器”图标上单击鼠标按钮 3。在分层结构视图或拓扑视图上,从弹出菜单中选择“细节”。
双击分层结构视图或拓扑视图中的“事件管理器”图标。
选择主控制台窗口中的“事件管理器”图标,然后从“工具”菜单中选择“细节”。
在“浏览器细节”窗口中,双击分层结构(树)视图的“本地应用程序”图标。
通过下列某一方式打开模块编辑器:
在事件管理模块上单击鼠标按钮 3。在分层结构视图或内容视图上,从弹出菜单中选择“编辑模块”。
在“细节”窗口中选择“事件管理”模块,然后从“模块”菜单中选择“编辑模块”。
将显示“模块参数编辑器”。有关更多信息,请参见修改模块参数。
在可编辑字段中键入新的时间值。
默认情况下,已关闭或已修复的事件将在 7 天后从数据库中删除。已打开的事件将在 30 天后删除。
要关闭智能化删除,请从“智能化删除启用开关”菜单中选择“禁用”。
单击“确定”接受所做的更改并关闭此窗口。
Sun Management Center 服务器和代理将写入 /var/opt/SUNWsymon/log 目录下的相应日志文件中。
这些文件是循环日志文件。循环日志文件达到一定限制后,文件的大小将不再增加。新信息继续记录到该文件中,而最早的信息将被删除。
可以在 es-run 界面上使用 ctail 和 ccat 命令查看这些日志文件。es-run 界面设置适当的环境以运行 Sun Management Center 实用程序。实用程序 ccat 和 ctail 按时间顺列数据后,仅显示相关的数据。ccat 和 ctail 命令类似于 UNIX cat 和 tail 命令,但通常与 Sun Management Center 循环日志文件一起使用。
ccat 命令读取指定的日志文件,按时间顺序(升序)对信息排序,然后将其写入标准输出。ccat 命令调用一个参数,即循环日志文件的完整路径。
要在 es-run 界面上使用 ccat 命令,请键入:
# /opt/SUNWsymon/sbin/es-run ccat path_to_file/filename |
ctail 命令读取循环日志文件,默认情况下,将日志文件的最后 15 行内容写入标准输出。
ctail 调用四个参数:
文件名参数是循环日志文件的完整路径名。文件名参数是必不可少的。
-f 选项用于监视日志文件的增长情况。当日志文件增长时,添加到文件中的信息也将写入标准输出。ctail -f 选项类似于 UNIX tail 命令的 -f 选项。
-l 选项用于在每条信息的开头打印其绝对行号。
-n NumOfLines 选项用于更改显示的行数。默认情况下,仅打印最后 15 行。
要在 es-run 界面上使用 ctail 命令,请键入:
# /opt/SUNWsymon/sbin/es-run ctail [-f, -l, -n NumOfLines] path_to_file_filename |
使用 Sun Management Center 软件,您可以通过添加外部的独立应用程序(可以从主控制台窗口启动)来自定义“工具”菜单。此类应用程序必须是用 Java 编程语言编写的。非 Java 应用程序可以包含在 ExampleSystemCommand Java 包装类(在单独的进程中执行另外的程序或 shell 脚本)内。这类应用程序不需要使用选定的主机对象,并且启动之后也不会与 Sun Management Center 进一步交互。
应用程序名称可以在 console-tools.cfg 文件中指定。应用程序名称将添加到主控制台窗口的“工具”菜单上,该菜单位于标准 Sun Management Center 菜单项之下。应用程序在单独的窗口中启动。
console-tools.cfg 文件是一个纯文本文件,位于 Sun Management Center 服务器主机上。可以随时(包括控制台正在运行时)修改该文件,但是,因编辑而产生的更改只有在执行 es-tool 脚本且重新启动控制台后才生效。该文件由多行组成,每行说明一个应用程序;空行和以井号 (#) 开头的行将被忽略。行中的字段用逗号 (,) 分隔。
作为 shell 脚本或可执行的二进制文件执行的应用程序根据以下格式的行定义:
menu_label,class [args] |
其中:
menu_label 是显示在“工具”菜单中的字符串。该字符串既可以是本地化的文本,也可以是未本地化的文本。未本地化的文本中可以包含空格。本地化的文本必须指定为 property-file:key对,其中:
property-file 是包含适用于特定语言环境、可本地化信息的文件的名称
key 是用来在属性文件中定位“工具”菜单中显示的字符串的标识符
注意,密钥中不能包含空格。
class 是全限定的 Java 类名称。
args 是该类使用的变量列表。
例如,下面的文件显示了要添加到“工具”菜单中的三个应用程序的项,这三个应用程序为:Example GUI、rlogin 和 ftp。
# Format: # menu_label, class arguments Example GUI,exampleApp.ExampleGUITool Rlogin,com.sun.symon.base.client.console.SMSystemCommand "/usr/openwin/bin/xterm -e rlogin $host" "start rlogin $host" exampleApp.ExampleSystemCommand:ftp,exampleApp.ExampleSystemCommand "/usr/openwin/bin/xterm -e ftp $host" "start ftp $host"
每项必须在一行中说明,尽管示例中显示的文本是换行的。
Java 包装类 SMSystemCommand 允许用户执行任何 shell 命令。此类调用两个参数。第一个参数是要执行的 shell 命令。
如果指定了程序名,则需要给出完整的路径名。
如果命令包括空格,则需要用双引号将整个 shell 命令引起来。
第二个参数是要在 Microsoft Windows 客户机上运行的命令。下面一行是此命令的示例:
com.sun.symon.base.client.console.SystemCommand "<shell command>" "<windows command>"
在这种情况下,将忽略第一个参数。如果存在特殊的变量引用,将对参数执行变量替换。可以使用以下两个变量:
$host,用当前选定的代理主机名替换
$port,用当前选定的端口号替换
使用标准文本编辑器在 /var/opt/SUNWsymon/cfg/console-tools.cfg 文件中添加一行。
该行指定下列内容:
在“工具”菜单上显示的名称
程序的全限定 Java 类名
任何需要的类变量
详细信息,请参见相应章节介绍中的详细说明。
将应用程序的 Java 类文件置于 /opt/SUNWsymon/apps/classes 目录中。
在 Sun Management Center 服务器主机上运行 es-tool 以更新脚本。
# /opt/SUNWsymon/sbin/es-tool /var/opt/SUNWsymon/cfg/console-tools.cfg |
从主控制台窗口的“文件”菜单中选择“退出”,停止控制台。
单击“退出”按钮退出应用程序。
重新启动要将该应用程序添加到“工具”菜单上的控制台。
# /opt/SUNWsymon/sbin/es-start -c |
根据您的站点配置,可能还需要重新启动 Sun Management Center 服务器。
Sun Management Center 软件发布了模块的简单网络管理协议管理信息库 (SNMP MIB)。MIB 文件是已模块化数据(在此情况下,由 Sun Management Center 模块进行模块化)的抽象语法表示法 (ASN.1) 规范。这些 MIB 可以被基于 SNMP 的第三方管理站(例如 HP OpenView 和 UnicenterTM)用作数据定义。Sun Management Center 包含下列模块的 MIB:
file-scan.mib
health-monitor-mib.mib
kernel-reader-mib.mib
nfsmon-mib.mib
nfsstat-mib.mib
print-spool-mib.mib
process-details-mib.mib
process-monitor.mib
trap-mib.mib
默认情况下,上述 MIB 由 Sun Management Center 软件在安装代理层期间安装到 /opt/SUNWsymon/util/cfg 目录下。在安装过程中,用户的基准目录可能有所不同。
预处理 MIB。
某些 SNMP 管理站可以读取 ASN.1 MIB。其它管理站则需要将 ASN.1 MIB 转换为其它格式才能读取。例如,可能需要将 MIB 转换为说明管理对象指南 (GDMO) 格式或使用 MIB 编译器生成其它的中间格式。
加载 MIB。
将 ASN.1 MIB 或预处理格式的 MIB 加载到第三方管理站中。此操作将通知第三方管理站有关由 MIB 模块化的数据的布局和组成。
使用 MIB 信息与 Sun Management Center 代理进行对话。
成功将 MIB 加载到第三方 SNMP 代理以后,就可以使用它与 Sun Management Center 代理通讯并从 MIB 中获取数据。必须在 Sun Management Center 代理中加载且启用 MIB-II 代理监视模块。
例如,可以对 MIB 中的某些变量发布 SNMP 的 Get 命令。
默认情况下,使用 SNMPv1 团体 public 和 SNMPv2 用户名 public 为 SNMP Get 命令启用 Sun Management Center 模块。但是,如果 Sun Management Center 模块具有不同的设置,则需要使用正确的团体名和用户名与 Sun Management Center 代理通信。
由于 Sun Management Center 代理要基于 SNMPv2 usec 的安全性进行操作,因此也会涉及到代理上的 SNMP Set 命令。详细信息,请参见与 SNMPv2 usec 有关的 Request For Comments (RFC) 。
SNMPv2 使用术语环境表示在代理上加载了多个模块实例的 MIB。如果使用基于 SNMPv2 的第三方管理站与此类型的代理进行通讯,请确保使用了正确的环境信息。但是,如果使用基于 SNMPv1 的管理站,则应按如下方式将环境信息添加到 SNMP 团体中:
community:context |
通过添加此环境信息,可以访问运行在一个代理上相同模块的多个实例中的数据。
Sun Management Center 代理能够监视自己并限制自己内存的使用情况。已为代理进程的内存使用情况设置一些预定义的限制。这些限制取决于下列条件:
加载的模块数
加载的模块类型
正在管理的系统类型
个别情况下,代理启动过程中或代理停止运行时会超过默认的内存使用限制值。如果超过此限制值,代理内存大小设置的默认限制将不能满足用户的配置。
要确认内存使用是否超出了限制,请查看 /var/opt/SUNWsymon/log/agent.log 文件中是否有下列任一信息:
Excessive Virtual Memory Use Excessive Physical Memory Use |
如果在代理启动过程中看到了这些信息的任意一条,可使用下列步骤重新配置代理主机上的内存使用限制。
在代理主机上成为高级用户。
# su - |
将 agent-stats-d.def 文件复制到 /var/opt/SUNWsymon 目录下。
# cp /opt/SUNWsymon/modules/cfg/agent-stats-d.def /var/opt/SUNWsymon/cfg/ |
在 /var/opt/SUNWsymon/cfg/agent-stats-d.def 文件中,将 alarmlimit:error-gt 增加到所需的值,如以下代码段所示。
该值以 KB 为单位。
procstats = { size = { statusActions(error-gt) = abort statusService(abort) = _internal statusCommand(abort) = abort "Excessive Virtual Memory Use" alarmlimit:error-gt = 70000 alarmlimit:warning-gt = 60000 alarmlimit:info-gt = } ..... } |
保存文件并重新启动代理。
本节讲述如何在特定环境下对控制台窗口挂起做出响应。在这种情况下,当用户试图启动新控制台窗口并连接到 Sun Management Center 服务器时,主控制台窗口将挂起。但是,现有控制台窗口的连接不会出现问题。
主控制台窗口可能因为下列原因挂起:
服务器内存耗尽。当套接字任一端的读写速度相差太大时,从套接字中读取的线程会挂起。Sun Management Center 服务器中有大量的缓冲数据等待发送至客户机时,会发生内存问题。缓存数据过大,导致服务器在试图将数据写入套接字时内存不足。一旦服务器内存不足,将无法恢复。
如果正在监视服务器日志文件,可以使用下列命令检查是否存在服务器内存不足的信息:/opt/SUNWsymon/sbin/es-run ctail -f /var/opt/SUNWsymon/log/server.log
用于控制台进程的控制台内存已耗尽。可以确认控制台进程是否已经耗尽内存。从主控制台窗口的“文件”菜单中选择“Sun Management Center 控制台消信息”。“Sun Management Center 控制台信息”窗口可能显示一条或多条控制台内存已耗尽的信息。
解决主控制台窗口挂起的方式取决于哪个内存已满:
如果服务器内存已耗尽,则需要增加可用于服务器进程的内存。默认大小是 64 MB。
例如,要将默认内存从 64 MB 增加到 128 MB,可以使用下面的命令:
# es-start -s -- -Xmx128m |
如果经常使用 es-start -A 命令或通过重新引导来启动服务器,则可以自动设置内存大小。要自定义默认内存大小,请在 /opt/SUNWsymon/classes/base/server/bin/es-server.sh 文件中将 -Xmx64m 改为所需大小。
如果控制台内存耗尽,则使用更大的内存大小重新启动控制台。
例如,要将内存增加到 100 MB,可以使用下面的命令:
# es-start -c -- -Xmx100m |
此操作将为控制台分配更多的内存以完成当前会话。
要自动分配更多内存,请在 /opt/SUNWsymon/classes/base/console/bin/es-console.sh 文件中将默认内存从 -Xmx64m 改为所需大小。
有时需要备份 Sun Management Center 数据库以防止数据丢失。例如,应在升级硬件或操作系统之前备份数据库。您可以使用以下方法之一备份 Sun Management Center 数据库:
关闭本产品然后进行备份(冷备份)
在本产品运行过程中进行备份(联机备份)
在冷备份过程中,先关闭本产品然后进行备份。在设置联机备份特性之前,请先进行冷备份作为防范措施。
成为超级用户。
# /opt/SUNWsymon/sbin/es-backup |
由于该脚本将关闭 Sun Management Center,因此会提示您进行确认。
键入 y,然后按 Enter 键。
系统将提示您输入存储备份数据文件的完整目录路径。
按 Enter 键接受默认的目录或者键入一个新路径。
脚本将创建备份文件,然后重新启动本软件。
该过程指导您完成以下任务:
运行冷备份防范意外
启用 ARCHIVELOGMODE 来关闭 Sun Management Center 和设置归档
联机备份数据库
使用联机备份具有以下好处:不用停止本产品即可备份数据库使其具有最新内容。您可以随时禁用或启用 ARCHIVELOG 模式。
执行联机备份不需要关闭产品。
(可选)执行冷备份。请参见执行冷备份。
启用 ARCHIVELOGMODE。
成为超级用户。
# /opt/SUNWsymon/sbin/es-config -a enable |
系统将提示您确认是否启用归档。
键入 y,然后按 Enter 键。
由于该脚本将关闭 Sun Management Center,因此会提示您进行确认。
键入 y,然后按 Enter 键。
脚本关闭本产品,然后建议进行冷备份。系统将提示您确认是否要以 ARCHIVELOGMODE 模式设置数据库。
键入 y,然后按 Enter 键。
系统将提示您输入存储归档日志文件的完整目录路径。
键入完整路径,例如:
Enter full directory path to store the archive log files: |
/var/opt/SUNWsymon/archives |
如果该目录不存在,则脚本会创建它并启用 ARCHIVELOGMODE。系统将提示您启动代理和服务器组件。
键入 y,然后按 Enter 键。
运行联机备份。
如果您不想继续进行归档,则可以禁用归档。
要禁用 ARCHIVELOGMODE,请键入以下命令:
# /opt/SUNWsymon/sbin/es-config -a disable |
将关闭 Sun Management Center,删除归档日志文件,并重新启动本产品。
如果您想在进行备份之前关闭本产品,则有两种选择:
交互地运行备份,键入以下命令:
# /opt/SUNWsymon/sbin/es-backup |
在静态模式下运行备份并使用默认的答案回答脚本提示问题,键入以下命令:
# /opt/SUNWsymon/sbin/es-backup -y |
数据库文件保存在 /var/opt/SUNWsymon/backup 目录下。
如果需要定期运行 es-backup 脚本,则可以设置 cron 程序,使脚本定时运行。在这种情况下,可以使用 es-backup 脚本的 -y 选项,这样即不需要与系统进行任何交互。
两个脚本都在开始恢复或备份之前关闭 Sun Management Center 进程,并在恢复或备份结束时重新启动进程。
如果 Sun Management Center 数据库由于系统故障而意外损坏,则可以以高级用户身份运行以下交互式脚本恢复数据库:
# /opt/SUNWsymon/sbin/es-restore |
例如,如果由于文件系统问题而导致系统故障,则可能希望执行此操作。