Sun Management Center 3.5 用户指南

扩展 CLI 命令

以下各节讲述了 CLI 中可用的几种扩展命令类型:

模块扩展命令

有七个用于管理模块的扩展命令。有关 amfcolumns 参数的详细信息,请参见预定义的参数和标记

模块命令

disableModule

禁用代理中的模块。disableModule 命令使用以下参数: am

enableModule

启用代理中的模块。enableModule 命令使用以下参数: afmcolumns

getLoadedModules

获取代理中已加载模块的列表。getLoadedModules 命令使用以下参数: afcolumns

getModule

获取特定模块的信息。getModule 命令使用以下参数: afmcolumns

getModules

获取代理中的模块列表。getModules 命令使用以下参数: afcolumns

loadModule

加载代理中的模块。loadModule 命令使用以下参数: afmcolumns

loadModule 命令还可以使用两个附加的参数: moduleName(国际化模块名称)和 moduleDesc(模块的文字说明)。

unloadModule

卸载代理中的一个或多个模块。unloadModule 命令使用以下参数: afmcolumns

模块命令示例

要确定在 agentHost 名称为 seattle 的主机上加载的模块,可以在 CLI 提示下键入以下命令:


> getLoadedModules a=seattle

要在主机 seattle 的端口 1776 上加载 kernel-reader 模块,可以键入以下命令:


> loadModule a=seattle:1776 m=kernel-reader

对象属性扩展命令

有四个用于管理对象属性和属性值的扩展命令。

对象属性命令的参数

对象属性命令可以使用以下参数。有关 amfcolumns 参数的详细信息,请参见预定义的参数和标记

mgtObj

mgtObj 参数的值是设置或检索其属性和特性的被管理对象的名称。

property

property 参数的值是已设置或检索了其属性和值的特性的名称。

propInst

propInst 参数的值是设置或检索其属性和值的特性实例的名称。

rowValues

rowValues 参数的值是由逗号分隔的名称-值对列表。name 是行中列的名称。value 是该列中的值。

attributes

attributes 参数的值是由逗号分隔的属性名称的列表,这些属性名称属于已设置或检索了其属性和值的特性。在与 setAttributes 命令一起使用时,attributes 参数中的每个属性名称都必须在 values 参数中有一个相应的值。

values

values 参数的值是由逗号分隔的值的列表,这些值与在 attributes 参数中指定的属性相对应。在与 setAttributes 命令一起使用时,每个指定的属性必须有一个值。

对象属性命令

可以使用以下命令设置和检索对象属性和属性值:

addRow

addRow 命令用于向表中添加一行。addRow 命令使用以下参数: ammgtObjpropertypropInstrowValues

delRow

delRow 命令用于从表中删除行。delRow 命令使用以下参数: ammgtObjpropertypropInstrowValues

getAttributes

getAttributes 命令从代理或代理列表中检索指定的属性。getAttributes 命令使用以下参数: afmcolumnsmgtObjpropertypropInstattributes

setAttributes

setAttributes 命令为代理或代理列表中的指定属性指定值。setAttributes 命令使用以下参数: ammgtObjpropertypropInstattributesvalues

对于在 attributes 参数中指定的每个属性,values 参数中必须有一个相应的值。

对象属性命令的示例

以下命令检索主机 haiku 端口 1161 处 agent-stats 模块中的被管理对象 totalstatssize 特性的所有属性:


> getAttributes a=haiku:1161 m=agent-stats mgtObj=totalstats \
property=size

以下命令将属性 alarmlimits.error-gt 设置为上例指定的 size 特性中的值 2


> setAttributes a=haiku:1161 m=agent-stats mgtObj=totalstats \
property=size attributes=alarmlimits.error-gt values=2

以下命令从 mgtObj 中指定的被管理对象中删除 rowValues 中指定的行:


> delRow a=haiku:1161 \
m=filemon mgtObj=filemonstats/filemonTable/filemonEntry \
rowValues="name=test,desc=this,filename=/etc/passwd"

警报扩展命令

有五个用于管理警报的扩展命令。

警报命令参数

警报扩展命令可以使用以下参数。有关 a 参数和 m 参数的详细信息,请参见预定义的参数和标记

ack

ack 参数的值是由逗号分隔的值的列表,指示所管理的警报是否已经过确认。ack 参数的合法值包括 A (已确认)和 N (未确认)。

command

command 参数的值是要执行的警报操作。

domain

domain 参数的值是要管理其警报的 Sun Management Center 域的名称。如果未指定任何域,将使用缺省域。

managed_object

managed_object 参数的值是要管理其警报的被管理对象的名称。

note

note 参数的值是正在运行的命令的文字注释。

property

property 参数的值是要管理其警报的特性的名称。

property_instance

property_instance 参数的值是要管理其警报的特定特性实例的名称。

qualifier

qualifier 参数的值是与要管理其警报的被管理特性关联的限定词的名称。

severity

severity 参数的值是所管理的警报的严重程度值的列表,此列表中的值由逗号分隔。severity 参数可以使用以下值:

  • ERR — 错误

  • WRN — 警告

  • INF — 信息

  • IRR — 不合理

  • DWN — 关闭

  • DIS — 禁用

  • OFF — 关闭

state

state 参数的值是所管理的警报的状态值列表,其中的状态值由逗号分隔。state 参数的合法值为 O(打开)或 C (关闭)。

警报命令

可以使用以下命令检查警报值和设置警报操作:

ackAlarms

ackAlarms 命令用于确认代理或代理列表中的警报。ackAlarms 命令使用以下参数: aackcolumns domainfm managed_objectnotepropertyproperty_instancequalifierseveritystate

如果没有为 state 参数指定值,则 state 参数缺省设置为 O(打开)。

delAlarms

delAlarms 命令用于删除代理或代理列表中的警报。delAlarms 命令使用以下参数: aackcolumns domainfm managed_objectnotepropertyproperty_instancequalifierseveritystate

如果没有为 state 参数指定值,则 state 参数缺省设置为 C(关闭)。

getAlarms

getAlarms 命令用于检索代理或代理组的警报信息。getAlarms 命令使用以下参数: aackcolumnsdomainfmmanaged_objectpropertyproperty_instancequalifierseveritystate

如果未指定任何参数,则 getAlarms 命令将返回所有警报信息。

runAlarmAction

runAlarmAction 命令用于在代理或代理列表中运行手动或延迟的警报操作。runAlarmAction 命令使用以下参数: adomain

setAlarmAction

setAlarmAction 命令用于在代理或代理列表中为现有的警报设置手动或延迟的警报操作。setAlarmAction 命令使用以下参数:acommanddomain

警报命令示例

以下命令用于从主机 haiku 中检索严重程度为 ERRDWN 的所有警报:


> getAlarms a=haiku severity=ERR,DWN

拓扑扩展命令

有九个用于管理拓扑的扩展命令。

拓扑命令参数

拓扑扩展命令可以使用以下参数。有关 acolumnsft 参数的详细信息,请参见预定义的参数和标记

agentPort

agentPort 参数的值是代理端口号。如果未指定 agentPort 参数,将使用缺省值 161。agentPort 参数是可选的。仅当未指定 url 参数且不需要缺省端口时才指定此参数。

arch

arch 参数的值是拓扑对象的体系结构。

domain

domain 参数的值是 Sun Management Center 域的名称,必须为 setCurrentDomain 命令指定此名称。

family

family 参数的值是拓扑对象的对象族。

fullDesc

fullDesc 参数的值是所创建的实体或组的文字说明。

isPolled

isPolled 参数的值可以是 truefalse。如果是 true,则实体根据巡回检测类型 (pollType) 巡回检测状态信息。

pollType

pollType 参数的值表示此实体的巡回检测类型。pollType 参数可以使用以下值:

  • ahost – 识别安装和运行激活代理的主机

  • amod – 识别包含激活代理的模块

  • aprox – 识别运行 SNMP 代理服务器模块的代理

  • dummy – 识别未被监视的设备

  • ping – 使用 ICMP ping 命令识别要监视的主机

  • snmp — 使用 SNMP ping 命令识别要监视的主机

readInfo

readInfo 参数的值表示 SNMP 巡回检测对象的 SNMPv1 读团体名。

targetHost

targetHost 参数的值表示目标主机的名称。

targetIp

targetIP 参数的值是目标主机的 IP 地址。

topoCfg

topoCfg 参数的值是被管理的实体的拓扑表示方式的配置信息。

topoType

topoType 参数的值是被管理的实体的拓扑表示类型。

url

url 参数的值是要巡回检测的实体的 URL。可以使用以下格式指定 url 参数的值:

ping://hostname
snmp://hostname:port/oid/#.#.#.#
snmp://hostname:port/[mod,sym]/path
writeInfo

writeInfo 参数的值表示 SNMP 巡回检测对象的 SNMPv1 写团体名。

拓扑命令

有九个用于管理拓扑的扩展命令。

createEntity

createEntity 命令用于创建被管理的实体。可以使用以下参数指定被管理实体的特性: agentPortarchfamilyfullDescisPolledpollTypereadInfotargetHosttargetIPtopoCfgtopoTypeurlcolumnsft

如果指定了 urlagentPort 参数,则不使用缺省端口 161

createGroup

createGroup 命令用于创建拓扑域或组。如果要创建的实体是组,则可以使用以下参数指定组特性: familyfullDesccreateGroup 命令还使用以下参数: columnsft

如果要创建的实体是域,则忽略 familyfullDesc 参数。

delTopoObjects

delTopoObjects 命令用于删除被管理拓扑分层结构中的被管理拓扑对象。同时还删除指定拓扑对象下的所有对象。delTopoObjects 命令使用以下参数: columnsft

getAgentPort

getAgentPort 命令用于返回在拓扑域中的指定主机上运行的 Sun Management Center 代理的端口号。如果存在多个代理,则返回端口号列表。getAgentPort 命令使用以下参数: columnsft

如果未指定 t,则使用缺省域。

getAllTopoObjects

getAllTopoObjects 命令返回被管理的拓扑分层结构中所有被管理对象的列表,这些对象满足 archfamilypollType 参数指定的条件。getAllTopoObjects 命令也使用以下参数: columnsft

getCurrentDomain

getCurrentDomain 命令返回当前域的名称。

getDomains

getDomains 命令返回所有被管理域的列表。

getTopoObject

getTopoObject 命令返回直接位于参数 t 指定的拓扑对象下的被管理拓扑对象的列表,这些对象满足由 archfamilypollType 参数指定的条件。getTopoObject 命令还使用以下参数: columnsf

setCurrentDomain

setCurrentDomain 命令用于将主域设置为 domain 参数中指定的值。

有关从 CLI 导出和导入拓扑信息的信息,请参见导入和导出 CLI 界面

拓扑命令示例

以下命令用于返回所有 Sun Management Center 代理主机的列表,这些代理主机位于运行 SunOS 5.7 软件的 menlo_park 域的 building12 组中的 sun4u 族:


> getTopoObject t=/menlo_park/building12 pollType=ahost \
arch="SunOS 5.7" family=sun4u

以下命令将创建一个名为 headquarters_test 的组,该组位于名为 building19 的现有域中:


> createGroup t=/headquarters_test/building19 \
fullDesc="test headquarters domain" family=building-location

以下命令将创建名为 myHost 的被管理实体,该实体位于 test_domain 域的 building12 组中。拓扑对象是一个在端口 1161 中运行代理的 Sun Ultra-2 主机。


> createEntity t=/test_domain/building12/myHost \
fullDesc="my test host" family=ultra-2 topoType="" \
topoCfg="" isPolled=false pollType=ahost readInfo="" \
writeInfo="" targetHost=osftserv targetIp="" agentPort=1161