Sun Management Center 3.6 使用者指南

延伸 CLI 指令

以下小節將說明在 CLI 中可用的數種類型的延伸指令:

模組延伸指令

有七個延伸指令可用來管理模組。

模組指令參數

模組指令可以使用以下參數。如需關於 am 參數的詳細資訊,請參閱預先定義的參數和旗標

moduleName

模組的國際化名稱

moduleDesc

模組的文字說明

moduleParams

以逗號分隔之模組參數清單

-default

模組的預設設定

模組指令

disableModule

說明

disableModule 指令會停用代理程式中的模組。

語法

disableModule a=host[:port][,host[:port]]* m=module[+instance][,module[+instance]]*

參數

am

enableModule

說明

enableModule 指令可啟用代理程式中的模組。

語法

enableModule a=host[:port][,host[:port]]* m=module[+instance][,module[+instance]]*

參數

am

getLoadedModules

說明

getLoadedModules 指令可取得代理程式中已載入的模組清單。

語法

getLoadedModules a=host[:port][,host[:port]]*

參數

a

getModule

說明

getModule 指令可取得代理程式中特定模組的資訊。

語法

getModule a=host[:port][,host[:port]]* m=module[+instance]

參數

am

getModules

說明

getModules 指令可取得代理程式中所有可用的模組清單。

語法

getModules a=host[:port][,host[:port]]*

參數

a

loadModule

說明

loadModule 指令會在代理程式中載入模組。

語法

loadModule a=host[:port][,host[:port]]* m=module[+instance] [moduleName= name] [moduleDesc=description] [moduleParams= key=value[,key=value]*] [-default]

參數

ammoduleName moduleDescmoduleParams-default

unloadModule

說明

unloadModule 指令會卸載代理程式中的模組。

語法

unloadModule a=host[:port][,host[:port]]* m=module[+instance][,module[+instance]]*

參數

am

模組指令範例

若要決定將哪個模組載入到 agentHost 名稱為 seattle 的主機,您應在 CLI 提示符號處鍵入以下指令:


> getLoadedModules a=seattle

若要將 kernel-reader 模組載入在連接埠 1776 的主機 seattle ,您應該鍵入以下指令:


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

物件屬性延伸指令

有四個延伸指令可用來管理物件屬性及屬性值。

物件屬性指令的參數

下列參數可被物件屬性指令所用:如需關於 am 參數的詳細資訊,請參閱預先定義的參數和旗標

mgtObj

mgtObj 參數的值是已設定或擷取其屬性與特性之受管理物件的名稱。

property

property 參數的值是已設定或擷取其屬性與值之特性的名稱。

propInst

propInst 參數的值是已設定或擷取其屬性和值之特性的實例名稱。

rowValues

rowValues 參數的值是以逗號分隔之一組名稱值的清單。name 是列中的欄名。value 是該欄中的值。

attribute

attribute 參數的值是以逗號分隔之已設定或擷取其屬性和值之特性的屬性名稱清單。當與 setAttributes 指令配合使用時,attribute 參數中的每個屬性名稱在 value 參數中均必須具有對應的值。

value

value 參數的值是以逗號分隔並對應於 attributes 參數中指定屬性的值清單。當與 setAttributes 指令配合使用時,每個指定的屬性均必須有值。

物件屬性指令

您可以使用下列指令來設定與擷取物件屬性和屬性值:

addRow

說明

addRow 指令會新增指定值的列到表格中。

語法

addRow a=host[:port][,host[:port]]* m=module[+instance] mgtObj=managedObject [property=property] [propInst=propertyInstance] rowValues=name=value[,name=value]

參數

ammgtObjpropertypropInstrowValues

delRow

說明

delRow 指令會從表格刪除指定值的列。

語法

delRow a=host[:port][,host[:port]]* m=module[+instance] mgtObj=managedObject [property=property] [propInst=propertyInstance] rowValues=name=value[,name=value]

參數

ammgtObjpropertypropInstrowValues

getAttributes

說明

getAttributes 指令會擷取特性資訊,或從代理程式或代理程式清單擷取指定屬性。

語法

getAttributes a=host[:port][,host[:port]]* m=module[+instance] mgtObj=managedObject property=property [propInst=propertyInstance] [attribute=attribute[,attribute]*]

參數

ammgtObjpropertypropInstattribute

setAttributes

說明

setAttributes 指令會設定特性,或者為代理程式的指定屬性設定值。

語法

setAttributes a=host[:port][,host[:port]]* m=module[+instance] mgtObj=managedObject property=property [propInst=propertyInstance] [attribute=attribute[,attribute]*] value=value[,value]*

參數

ammgtObjpropertypropInstattributevalue

對於在 attribute 參數中指定的每個屬性,value 參數中必須有對應的值。

物件屬性指令的範例

以下指令可擷取主機 haiku 連接埠 1161 上的 agent-stats 模組中 totalstats 受管理物件之 size 特性的全部屬性:


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

以下指令可將先前範例中指定的 size 特性中的屬性 alarmlimits.error-gt 的值設為 2


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

以下指令可從 mgtObj 中指定的受管理物件中刪除在 rowValues 中指定的列:


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

警示延伸指令

有五個延伸指令可用於管理警示。

警示指令參數

下列參數可被延伸指令用來管理警示。如需關於 am 參數的詳細資訊,請參閱預先定義的參數和旗標

ack

ack 參數的值是以逗號分隔的值清單,指出受管理的警示是否已確認。ack 參數的合法值為 ACK (已確認) 和 NOACK (未確認)。

command

command 參數的值是要執行的警示動作。

domain

domain 參數的值是要管理警示的 Sun Management Center 網域名稱。如果未指定網域,則使用 [預設網域]。

mgtObj

mgtObj 參數的值是要管理警示之受管理物件的名稱。

note

note 參數的值是要執行之指令的文字註釋。

property

property 參數的值是要管理警示的特性名稱。

propInst

propInst 參數的值是要管理警示的特定特性實例名稱。

qualifier

qualifier 參數的值是與要管理警示之受管理特性相關的合格者名稱。

severity

severity 參數的值是以逗號分隔的受管理警示的嚴重性值清單。severity 參數允許使用以下值:

  • ERR — 錯誤

  • WRN — 警告

  • INF — 提供資訊

  • IRR — 不合理

  • DWN — 當機

  • DIS — 已停用

  • OFF — 關閉

state

state 參數是以逗號分隔的受管理警示的狀態值清單。state 參數的合法值為 Open、Closed 和 Fixed。

警示指令

您可以使用以下指令檢驗警示值和警示動作:

ackAlarms

說明

ackAlarms 指令會確認代理程式或代理程式清單中的警示。

語法

ackAlarms a=host[:port][,host[:port]]* [domain=domain] [m=module[+instance][mgtObj=managedObject [property=property [propInst=propertyInstance] [qualifier=qualifier]]]] [severity=DIS|DWN|ERR|INF|IRR|OFF|WRN] [state=OPEN|CLOSED|FIXED] [note=reason]

參數

adomainm mgtObjpropertypropInst qualifierseveritystatenote

若沒有為 state 參數指定值,state 會預設為 Open。

delAlarms

說明

delAlarms 指令會刪除代理程式或代理程式清單中的警示。

語法

delAlarms a=host[:port][,host[:port]]* [domain=domain] [m=module[+instance][mgtObj=managedObject [property=property [propInst=propertyInstance] [qualifier=qualifier]]]] [severity=DIS|DWN|ERR|INF|IRR|OFF|WRN] [state=OPEN|CLOSED|FIXED] [ack=ACK|NOACK] [note=reason]

參數

adomainmmgtObjpropertypropInstqualifierseveritystateacknote

若沒有為 state 參數指定值,state 會預設為 Closed。

getAlarms

說明

getAlarms 指令會擷取代理程式或一組代理程式的警示資訊。

語法

getAlarms a=host[:port][,host[:port]]* [domain=domain] [m=module[+instance][mgtObj=managedObject [property=property [propInst=propertyInstance] [qualifier=qualifier]]]] [severity=DIS|DWN|ERR|INF|IRR|OFF|WRN] [state=OPEN|CLOSED|FIXED] [ack=ACK|NOACK]

參數

adomainmmgtObjpropertypropInstqualifierseveritystateack

若沒有指定任何參數,getAlarms 會傳回所有警示資訊。

runAlarmAction

說明

runAlarmAction 指令會為代理程式或代理程式清單中之網域下的所有警示執行手動或延遲警示動作。

語法

runAlarmAction a=host[:port][,host[:port]]* [domain=domain] [m=module[+instance][mgtObj=managedObject [property=property [propInst=propertyInstance] [qualifier=qualifier]]]] [severity=DIS|DWN|ERR|INF|IRR|OFF|WRN] [state=OPEN|CLOSED|FIXED] [ack=ACK|NOACK]

參數

adomainmmgtObjpropertypropInstqualifierseveritystateack

setAlarmAction

說明

setAlarmAction 指令會為代理程式或代理程式清單中之網域下的所有警示設定手動或延遲警示動作。

語法

setAlarmAction a=host[:port][,host[:port]]* command=command [domain=domain] [m=module[+instance][mgtObj=managedObject [property=property [propInst=propertyInstance] [qualifier=qualifier]]]] [severity=DIS|DWN|ERR|INF|IRR|OFF|WRN] [state=OPEN|CLOSED|FIXED] [ack=ACK|NOACK]

參數

acommanddomainmmgtObjpropertypropInstqualifierseveritystateack

警示指令範例

以下指令可從主機 haiku 中擷取所有嚴重性為 ERRDWN 的警示:


> getAlarms a=haiku severity=ERR,DWN

拓樸延伸指令

有九個延伸指令可用於管理拓樸。

拓樸指令參數

下列參數可被延伸指令用來管理拓樸:如需關於 at 參數的詳細資訊,請參閱預先定義的參數和旗標

agentPort

agentPort 參數的值是代理程式的連接埠號。如果未指定 agentPort,將使用預設值 161。agentPort 參數為可選。僅在未指定 url 參數並且您不想使用預設連接埠時,才需要指定此參數。

arch

arch 參數的值是拓樸物件的架構。

domain

domain 參數的值是您必須為 setCurrentDomain 指令指定的 Sun Management Center 網域名稱。

domainmode

domainmode 參數的值可以是 followignore。若值為 followimport 指令則會從檔案將群組和網域資訊匯入到指定的目標網域。若值為 ignore,則 import 指令會忽略網域資訊。

family

family 參數的值是拓樸物件的物件系列。若未指定,則將會自動取得。

filename

filename 參數的值是檔案名稱。此參數是被 exportimport 指令用來匯出和匯入拓樸資料。

fullDesc

fullDesc 參數的值是要建立的實體或群組的文字說明。

isPolled

isPolled 參數的值可以是 truefalse。如果值為 true,實體可根據輪詢類型 (pollType) 輪詢狀況資訊。預設值為 true

mode

mode 參數的值可以是 appendoverwrite。若值為 appendexport 指令會將拓樸資料加到檔案末端。若值為 overwriteexport 指令會使用拓樸資料覆寫檔案。

nodemode

nodemode 參數的值可以是 replaceignore。若在檔案和網域中有資料不相符,replace 值會以檔案中的資料取代網域中的資料。ignore 值會忽略資料的不相符。

pollType

pollType 參數的值是該實體的輪詢類型。pollType 參數允許使用以下值:

  • agroup – 識別使用中代理程式安裝並執行的群組

  • 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
validity

validity 參數的值是您要匯出之拓樸資料有效的期間 (以日為單位)。 validity 參數的值可以為 Unlimited7153090

writeInfo

writeInfo 參數的值是 SNMP 輪詢物件的 SNMPv1 寫入社群名稱。

拓樸指令

有九個延伸指令可用來管理拓樸。

createEntity

說明

createEntity 指令可以建立受管理實體。

語法

createEntity t=topoObject pollType=ahost|amod|aprox|dummy|ping|snmp [fullDesc=text] [targetHost=host] [agentPort=port] [targetIp=ip] [family=family] [isPolled=true|false] [topoType=text] [topoCfg=text] [readInfo=text] [writeInfo=text] [url=url]

參數

tpollTypefullDesctargetHostagentPorttargetIpfamilyisPolledtopoTypetopoCfgreadInfowriteInfourl

若已指定urlagentPort 參數,就不會使用預設連接埠 161

createGroup

說明

createGroup 指令可建立拓樸網域或群組。

語法

createGroup t=topoObject [family=base|building-view|campus-view|network-view|subnetwork-view] [fullDesc=desc]

參數

tfamilyfullDesc

若建立的實體為群組,family 參數就是必要的。

若建立的實體是網域,就會忽略 family fullDesc 參數。

delTopoObject

說明

delTopoObject 指令會刪除受管理拓樸階層結構中的受管理拓樸物件。同時將刪除指定拓樸物件下面的所有物件。

語法

delTopoObject t=topoObject

參數

t

export

說明

export 指令會將網域的拓樸資料匯出到檔案中。

語法

export filename=filename domain=domain|"All Domains" mode=append|overwrite validity=Unlimited|7|15|30|90 [comment=text]

參數

filenamedomain modevaliditycomment

getAgentPort

說明

getAgentPort 指令會傳回正在拓樸網域中指定的主機上執行的 Sun Management Center 代理程式的連接埠號。如果有多個代理程式,將會傳回連接埠號清單。

語法

getAgentPort a=host[,host]* [t=topoObject]

參數

at

若未指定 t 參數,就會使用預設網域。

getAllTopoObjects

說明

getAllTopoObjects 指令會傳回符合 archfamily pollType 參數指定之情況的受管理拓樸階層結構中的所有受管理物件清單。

語法

getAllTopoObjects t=topoObject [arch=os] [family=platform] [pollType=aview|ahost|amod|aprox|dummy|ping|snmp]

參數

tarchfamilypollType

getCurrentDomain

說明

getCurrentDomain 指令會傳回目前網域名稱。

語法

getCurrentDomain

參數

getDomains

說明

getDomains 指令會傳回目前伺服器環境中所有受管理網域的清單。

語法

getDomains

參數

getTopoObject

說明

getTopoObject 指令會直接傳回由 t 參數指定之符合 arch familypollType 參數指定情況的拓樸物件下的受管理拓樸物件清單。

語法

getTopoObject t=topoObject [arch=os] [family=platform] [pollType=aview|ahost|amod|aprox|dummy|ping|snmp]

參數

tarchfamilypollType

import

說明

export 指令可以從檔案將拓樸資料匯入到網域。

語法

import filename=filename domainmode=follow|ignore nodemode=replace|ignore [domain=domain]

參數

filenamedomainmode nodemodedomain

setCurrentDomain

說明

setCurrentDomain 指令可將主網域設定為 domain 參數中指定的值。

語法

setCurrentDomain domain=domainName

參數

domain

拓樸指令範例

以下指令可傳回執行 SunOS 5.7 軟體的 menlo_park 網域 building12 群組內 sun4u 家族中所有 Sun Management Center 代理程式主機的清單:


> 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

以下指令可在 test_domain 網域的 building12 群組中建立名為 myHost 的受管理實體。該拓樸物件為在連接埠 1161 上執行代理程式的主機。


> 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