使用 wsadmin Scripting 之 AdminTask 物件的 PropertiesBased配置指令群組

您可以使用 Scripting ,利用內容檔來自訂部分系統配置。 WebSphere 配置儲存庫儲存許多不同類型的配置。 您可以使用內容檔來自訂其中一些配置。 您可以自訂 WebSphere 共用配置模型 (WCCM) 所建立的部分配置,或部署為 Java EE 應用程式的配置。

在 Scripting 中使用 AdminConfig 指令來配置 WebSphere 共用配置模型。 AdminConfig.types() 列出 WCCM 中的類型, AdminConfig.attributes("type") 列出特定類型的屬性。 使用內容檔自訂這些類型通常比撰寫 Script 來進行相同變更更容易。 在正式作業環境中,通常會在 Scripting 中透過 AdminApp 指令來部署 Java EE 應用程式。 對於開發環境,在建構管理應用程式所需的參數時,使用內容檔可讓您更容易瞭解語法。 請注意,應用程式部署會使用它自己的一組 WCCM 類型。

您無法透過內容檔直接配置的配置範例包括:
  • SIBus
  • 商業層級應用程式
  • 金鑰和信任儲存庫檔案
  • Web 服務原則集檔案
  • 檔案型使用者登錄
這些配置是透過其自己的 AdminTask 指令來管理。 請注意,內容檔型配置中有一個跳出,可用來呼叫 AdminTask 指令。 但這只是呼叫指令的替代語法。 內容檔中未提供實際配置。
使用內容檔,如下所示:
  1. 請檢查使用內容檔管理特定配置物件中所記載的範例。
  2. 複製適當的範例並貼到文字檔中,視需要編輯範例,然後使用適當的變數替代將範例套用至您的環境。 有許多範例可涵蓋廣泛的常用配置。
  3. 對於支援的 WCCM 類型,您可以從現有資料格中擷取該類型作為起始點,編輯所擷取的檔案,並將它套用回現有的資料格。

    如果支援的 WCCM 類型不是 Cell、節點、伺服器或 ServerCluster,請利用 -options [[PortablePropertiesFile true]] 選項從現有 Cell 中擷取特定類型,以建立可攜式檔案格式。 然後,編輯內容檔,並將它套用至具有適當變數替代的不同資料格。 您可以使用此方法,將常用的配置子集 (例如資源定義及 Java 虛擬機器 (JVM) 設定) 從一個環境移至另一個環境。

避免麻煩: 使用內容檔來自訂,而不是抄寫或合併環境。 請勿擷取整個 Cell、節點、伺服器或 ServerCluster 來套用至不同的環境。 只會套用 WCCM 類型的子集,所擷取的資訊不會以有意義的方式與新環境合併。
支援下列 WCCM 類型:
表 1. 支援的 WCCM 類型 您可以使用內容檔來配置此表格中列出的 WCCM 類型。
AccessPoint群組 ActivationSpec ActivationSpecTemplateProps ActivitySession服務
AdminObject AdminObjectTemplateProps AdminServer鑑別 AdminService
AllActive原則 AllAuthenticatedUserExt AllAuthenticatedUsersInTrustedRealmsExt ApplicationProfile服務
ApplicationServer 審核 AuditEventFactory AuditNotification監視器
AuditPolicy AuditService提供者 AuditSpecification AuthenticationMechanism
AuthenticationTarget AuthorizationConfig AuthorizationGroup AuthorizationGroup成員
AuthorizationProvider AuthorizationTableExt AuthorizationTableImpl BackupCluster
BridgeInterface CACertifertificate CAClient CMPConnectorFactory
CacheProvider 儲存格 憑證
類別載入器 ClusterMember CommonSecureInterop CompensationService
ConfigSynchronization服務 ConnectionDefTemplateProps ConnectionDefinition ConnectionPool
ConnectionTest 連接器 Cookie CoreGroup
CoreGroupAccessPoint CoreGroupBridgeService CoreGroupBridgeSettings CoreGroup伺服器
CryptoHardware記號 CustomAuth機制 CustomService CustomUserRegistry
DCSInboundChannel DPClonableDevice設定 DPClonableDeviceSettingsVersion DPDevice
DPDomain DPDomainVersion DPFirmware DPFirmwareVersion
DPManagedSet DPManager DRSConnectionPool DRSPartition
DataReplication網域 DataSource DebugService DiagnosticProvider服務
DigestAuthentication DiskCacheCustomPerformance設定 DiskCacheEvictionPolicy DistributionQueue
DynamicCache EJBCache EJBContainer EJBTimer
EndPoint ExternalCache群組 EveryoneExt ExtensionMBean
ExtensionMBean提供者 GenericChannelFactory ExternalCacheGroupMember FileTransfer服務
過濾器 GenericOutbound通道 GenericInbound通道 GenericJMSConnectionFactory
GenericJMSDestination HTTPOutboundChannel HAManagerService HTTPConnector
HTTPInboundChannel HostAlias HTTP 傳輸 HTTPTunnelInbound通道
HTTPTunnelOutbound通道 IconType I18NService IIOPSecurityProtocol
IIOPTransport InvalidationSchedule IdentityAssertion層 IdentityAssertionQOP
IdentityAssertionTypeAssociation J2EEResourcePropertySet J2CActivationSpec J2CAdminObject
J2CResourceAdapter JAASLoginModule JAASAuthData JAASConfiguration
JAASConfigurationEntry JFAPOutboundChannel JDBCProvider JFAPFactory
JFAPInboundChannel JavaVirtual機器 JMSProvider JMSTransport
JavaProcess定義 KeyReference KRB 金鑰
KeyManager KeyStore檔案 KeySet KeySet群組
KeyStore 程式庫 LDAPSearchFilter LDAPUserRegistry
LTPA MOfNPolicy LibraryRef ListenerPort
LocalOSUserRegistry MQQUEUE MQConnectionFactory MQFAPInboundChannel
MQFAPOutboundChannel MailProvider MQQueueConnectionFactory MQTopic
MQTopicConnectionFactory MemoryCacheEvictionPolicy MailSession ManagementScope
MappingModule MessageQOP MessageLayer MessageListener
MessageListener服務 NoOp原則 MimeEntry MonitoringPolicy
NameServer ObjectCache實例 節點 NodeGroup
ORBInboundChannel ObjectPool服務 ObjectPool ObjectPoolManagerInfo
ObjectPool提供者 OutputRedirect ObjectRequest分配管理系統 OneOfNPolicy
OutboundResource配接器 PMIService PME51ServerExtension PMEServerExtension
PMIModule PluginConfig服務 PMRClusterExtension PeerAccess點
PeerCore群組 PreferredServer原則 PluginProperties PluginServerClusterProperties
PortletContainer ProxyInbound通道 PrimaryAdmin延伸 ProcessExecution
ProtocolProvider RMQOutboundChannel RASLoggingService RMIConnector
RMQChannelFactory ResourceAdapter RSAToken 可參照
RepositoryService ServerEntry ResourceEnvironment提供者 RoleAssignment延伸
SecurityRoleExt SIPContainerInbound通道 ServerExt ServerIndex
sipContainer SOAPConnector SIPInboundChannel SIPOutboundChannel
SIPProxyInbound通道 SSLInboundChannel SPNEGO SSLConfig
SSLConfigGroup SchedulerProvider SSLOutboundChannel SWAMAuthentication
SchedulerConfiguration 安全 SchedulerService SecureAssociation服務
SecureSocket層 伺服器 SecurityDomain SecurityPermission
SecurityProtocolQOP ServletCache實例 ServerCluster ServerIdentity
ServiceLog SingleSignon SessionBean配置 SessionDatabase持續性
SessionManager StaticPolicy StartupBeans服務 StateManageable
StatefulSessionBeanConfig SystemMessage伺服器 StatisticsProvider StreamRedirect
StringNameSpaceBinding TCPOutboundChannel TAInterceptor TCPFactory
TCPInboundChannel TimerManager資訊 TPVService TaskProvider
ThreadPool TransactionService TimerManager提供者 TraceLog
TraceService TransportQOP TransportChannelFactory TransportChannel服務
TransportLayer TuningParams TrustAssociation TrustManager
TrustedAuthentication領域 UDPInboundChannel TunnelAccessPointGroup TunnelPeerAccessPoint
TunnelTemplate UserExt UDPOutboundChannel URL
URLProvider WAS40DataSource VariableMap VirtualHost
WAS40ConnectionPool WASTopicConnectionFactory WASQueue WASQueueConnectionFactory
WASTopic WSSchedule WIMUserRegistry WLMCoreGroupBridgePlugin
WSNotification WebModule部署 WebContainer WebContainerInboundChannel
WebModule配置 WorkArea分割區 WebServer WebserverPlugin設定
WeightAdvisor WorkManager提供者 WorkAreaPartitionService WorkArea服務
WorkManager資訊   WorkManager服務  

applyConfig內容

applyConfigProperties 指令會將特定內容檔中的內容套用至配置。 如果特定的內容不存在,系統會將屬性或配置資料新增至配置。 如果內容存在於配置中,系統會設定屬性的新值。

目標物件

無。

必要參數

-propertiesFileName
指定要套用的內容檔名稱。 (字串,必要)

選用參數

-variablesMapFileName
指定變數對映檔的名稱。 此檔案包含系統從內容檔使用的變數值。 (字串,選用)
-variablesMap
指定要與內容檔搭配使用的變數值。 (內容,選用)
-reportFileName
指定包含 applyConfigProperties 指令輸出的報告檔名稱。 (字串,選用)
-reportFilterMechanism
指定報告過濾器機制的類型。 指定 All 以顯示所有報告資訊。 指定 Errors 以顯示錯誤資訊。 指定 Errors_And_Changes 以顯示錯誤及變更資訊。 (字串,選用)
-validate
指定在套用變更之前是否先驗證內容檔。 如果已驗證內容檔,且未報告任何錯誤,則停用內容檔驗證會減少整體指令執行時間。 依預設,指令會驗證內容檔。 指定 false 以停用驗證。 (Boolean,選用)
-zipFileName
指定壓縮檔的名稱,該壓縮檔包含您要套用至 Cell 的原則集。 (字串,選用)

回覆值

指令不傳回輸出。

批次模式用法範例

  • 使用 Jython 字串:
    AdminTask.applyConfigProperties('-propertiesFileName myPropFile.props -zipFileName myZipFile.zip 
    -validate true')
  • 使用 Jython 清單:
    AdminTask.applyConfigProperties(['-propertiesFileName', 'myPropFile.props', '-zipFileName', 
    'myZipFile.zip', '-validate', 'true'])

互動模式用法範例

  • 使用 Jython:
    AdminTask.applyConfigProperties('-interactive')

createPropertiesFileTemplates

createPropertiesFileTemplates 指令會建立範本內容檔,以用來建立或刪除特定的物件類型。 該指令會將範本內容檔儲存在 propertiesFileName 參數指定的內容檔中。

目標物件

無。

必要參數

-propertiesFileName
指定儲存範本的內容檔名稱。 (字串,必要)
-configType
指定要建立之範本的資源類型。 (字串,必要)
  • 指定 Server 以建立伺服器類型內容檔範本。
  • 指定 ServerCluster 以建立伺服器叢集類型內容檔範本。
  • 指定 Application 以建立應用程式類型內容檔範本。
  • 指定 AuthorizationGroup 以建立授權群組類型內容檔範本。

選用參數

回覆值

指令不傳回輸出。

批次模式用法範例

  • 使用 Jython 字串:
    AdminTask.createPropertiesFileTemplates('-propertiesFileName serverTemplate.props -configType Server')
  • 使用 Jython 清單:
    AdminTask.createPropertiesFileTemplates(['-propertiesFileName', 'serverTemplate.props', 
    '-configType', 'Server'])

互動模式用法範例

  • 使用 Jython:
    AdminTask.createPropertiesFileTemplates('-interactive')

deleteConfig內容

deleteConfigProperties 指令會刪除配置中的內容,如內容檔中所指定。 系統會移除對應於內容檔中每一個內容的屬性或配置資料。

目標物件

無。

必要參數

-propertiesFileName
指定要刪除的內容檔名稱。 (字串,必要)

選用參數

-variablesMapFileName
指定變數對映檔的名稱。 此檔案包含系統從內容檔使用的變數值。 (字串,選用)
-variablesMap
指定要與內容檔搭配使用的變數值。 (內容,選用)
-reportFileName
指定包含指令輸出的報告檔案名稱。 (字串,選用)
-reportFilterMechanism
指定報告過濾器機制的類型。 指定 All 以顯示所有報告資訊。 指定 Errors 以顯示錯誤資訊。 指定 Errors_And_Changes 以顯示錯誤及變更資訊。 (字串,選用)
-validate
指定在套用變更之前是否先驗證內容檔。 依預設,指令會驗證內容檔。 指定 false 以停用驗證。 (Boolean,選用)

回覆值

指令不傳回輸出。

批次模式用法範例

  • 使用 Jython 字串:
    AdminTask.deleteConfigProperties('-propertiesFileName myPropFile.props')
  • 使用 Jython 清單:
    AdminTask.deleteConfigProperties(['-propertiesFileName', 'myPropFile.props'])

互動模式用法範例

  • 使用 Jython:
    AdminTask.deleteConfigProperties('-interactive')
    

extractConfig內容

extractConfigProperties 指令會以內容檔的形式擷取配置資料。 系統會匯出最常用的配置資料及屬性,將屬性轉換為內容,並將資料儲存至檔案。 您可以使用目標物件或 configData 參數來指定感興趣的資源。 使用 configData 參數來指定伺服器、節點、叢集、原則集或應用程式實例。 如果未指定配置物件,則指令會擷取設定檔配置資料。

目標物件

以下列格式指定相關配置物件的物件名稱: Node=nodeName:Server=serverName

必要參數

-propertiesFileName
指定要擷取的內容檔名稱。 (字串,必要)

選用參數

-configData
以格式 Node=node1指定配置物件實例。 (字串,選用)
-options
指定其他配置選項,例如 GENERATETEMPLATE=true。 (內容,選用)
-filterMechanism
指定用來擷取配置內容的過濾器資訊。 (字串,選用)
  • 指定 All 以擷取所有配置內容。
  • 指定 SELECTED_SUBTYPES ,以擷取使用 selectedSubTypes 參數指定的特定配置物件子類型。 這可以包括配置物件的任何子類型,或存在於物件類型階層下的任何 WCCM 類型。
-selectedSubTypes
指定當指令擷取內容時要包含的配置內容。 如果您設定 filterMechanism 參數 SELECTED_SUBTYPES,請指定此參數。 下列字串是子類型的範例: ApplicationServer、EJBContainer。 (字串,選用)
表 2. extractConfig內容-selectedSub類型子類型和延伸 您可以配置物件類型和子類型的內容。
配置物件類型 子類型 副檔名(X)
AdminService
部署 ApplicationName
ApplicationServer TransactionService、 DynamicCache、 WebContainer、EJBContainer、 PortletContainer、SIPContainer、 WebserverPlugin設定
AuthorizationGroup
AuthorizationTableExt
儲存格 VirtualHost、 DataReplication網域、 ServerCluster、 CoreGroup、 NodeGroup、 AuthorizationGroup、 AuthorizationTableExt、Security、 J2CResourceAdapter、JDBCProvider、JMSProvider、 MailProvider、URLProvider、 EventInfrastructureProvider、 ObjectPoolProvider、 WorkManagerProvider、 TimerManagerProvider , SchedulerProvider,節點, VariableMap
CoreGroup
CoreGroupBridgeService
DynamicCache
EJBContainer
EventInfrastructure提供者
EventInfrastructure服務
HAManagerService
J2CResourceAdapter
JDBCProvider
JMSProvider
JavaVirtual機器
程式庫
MailProvider
NameServer
節點 伺服器、 J2CResourceAdapter、JDBCProvider、JMSProvider、 MailProvider、URLProvider、 EventInfrastructureProvider、 ObjectPoolProvider、 WorkManagerProvider、 TimerManagerProvider、 SchedulerProvider、 VariableMap 「 NodeMetadata 延伸」會擷取節點 meta 資料內容。
NodeGroup
ObjectPool提供者
ObjectRequest分配管理系統
PMEServerExtension
PMIModule
PMIService
PortletContainer
sipContainer
SchedulerProvider
安全 JAASAuthData
伺服器 PMIService、 AdminService、 CoreGroupBridgeService、TPVService、 ObjectRequestBroker、 ApplicationServer、 NameServer、 J2CResourceAdapter、JDBCProvider、JMSProvider、 MailProvider、URLProvider、 EventInfrastructureProvider、 ObjectPoolProvider、 WorkManagerProvider、 TimerManagerProvider、 SchedulerProvider, VariableMap, EventInfrastructure服務, PMEServerExtension,程式庫, HAManagerService, PMIModule ,安全 延伸會列出特定伺服器的已部署應用程式。
ServerCluster J2CResourceAdapter、JDBCProvider、JMSProvider、 MailProvider、URLProvider、 ObjectPoolProvider、 WorkManagerProvider、 TimerManagerProvider、 SchedulerProvider、 VariableMap 延伸會列出特定叢集的已部署應用程式。
TPVService
TimerManager提供者
TransactionService
URLProvider
VariableMap
VirtualHost
WebContainer
WebserverPlugin設定
WorkManager提供者
-zipFileName
指定您要在其中擷取原則集的壓縮檔名稱。 (字串,選用)

回覆值

指令會傳回系統所建立的內容檔名稱。

批次模式用法範例

  • 使用 Jython 字串:
    AdminTask.extractConfigProperties('-configData Node=myNode -propertiesFileName myNodeProperties.props 
    -zipFileName myZipFile.zip')
  • 使用 Jython 清單:
    AdminTask.extractConfigProperties(['-configData', 'Node=myNode', '-propertiesFileName', 
    'myNodeProperties.props', '-zipFileName', 'myZipFile.zip'])

互動模式用法範例

  • 使用 Jython 字串:
    AdminTask.extractConfigProperties('-interactive')
附註: 由於過濾的運作方式,當您使用 SELECTED_SUBTYPE 從大型 Cell 或節點範圍中擷取許多非階層式相關的物件時,系統會掃描 Cell 或節點中可能不包含目標物件類型實例的部分。 您可以反覆地擷取每一個項目,然後明確將它設為目標,以達到更好的效能。 例如,如果目標是擷取 Cell 中的所有虛擬主機 (相較於將整個 Cell 設為目標,以在虛擬主機子類型上進行擷取及過濾) ,則透過查詢所有虛擬主機作為一項作業,然後將迴圈中的每一個虛擬主機設為目標,來改善效能,如下列範例所示:
for vhost in AdminConfig.list( 'VirtualHost' ).splitlines() : 
   name = AdminConfig.showAttribute( vhost, 'name' ) 
   parms = '[-propertiesFileName ' + name + '.properties -configData VirtualHost=' + name + ' 
   -options [[PortablePropertiesFile true]] ]'
   AdminTask.extractConfigProperties(parms)
This example produces a &ltVIRTUALHOSTNAME>.properties file for each virtualHost in the cell.

validateConfig內容

validateConfigProperties 指令會驗證內容檔中的內容是否有效,且可以順利套用至新配置。

目標物件

無。

必要參數

-propertiesFileName
指定要驗證的內容檔名稱。 (字串,必要)

選用參數

-variablesMapFileName
指定變數對映檔的名稱。 此檔案包含系統從內容檔使用的變數值。 (字串,選用)
-variablesMap
指定要與內容檔搭配使用的變數值。 (內容,選用)
-reportFileName
指定包含 applyConfigProperties 指令輸出的報告檔名稱。 (字串,選用)
-reportFilterMechanism
指定報告過濾器機制的類型。 指定 All 以顯示所有報告資訊。 指定 Errors 以顯示錯誤資訊。 指定 Errors_And_Changes 以顯示錯誤及變更資訊。 (字串,選用)
-zipFileName
指定壓縮檔的名稱,該壓縮檔包含您要套用至 Cell 的原則集。 (字串,選用)

回覆值

如果系統驗證內容檔或原則集 .zip 檔,則指令會傳回值 true

批次模式用法範例

  • 使用 Jython 字串:
    AdminTask.validateConfigProperties('-propertiesFileName myNodeProperties.props -zipFileName
     myZipFile.zip -reportFileName report.txt')
  • 使用 Jython 清單:
    AdminTask.validateConfigProperties(['-propertiesFileName', 'myNodeProperties.props', '-zipFileName', 
    'myZipFile.zip', '-reportFileName', 'report.txt'])

互動模式用法範例

  • 使用 Jython:
    AdminTask.validateConfigProperties('-interactive')