Portierbare Eigenschaftendateien auf mehrere Umgebungen anwenden

Verwenden Sie das Tool "wsadmin", um eine Eigenschaftendatei aus einer Zelle zu extrahieren, ändern Sie umgebungsspezifische Variablen am Ende der extrahierten Eigenschaftendatei, und wenden Sie anschließend die geänderte Eigenschaftendatei auf eine andere Zelle an. Die Änderung umgebungsspezifischer Variablen macht eine Eigenschaftendatei portierbar.

Vorbereitende Schritte

Wenn die Eigenschaftendatei, die Sie bearbeiten möchten, vor Version 7.0.0.7 des Produkts erstellt wurde, untersuchen Sie die Eigenschaftendatei, und stellen Sie fest, ob sie eine XMI-ID wie die folgende enthält:

#
# Unterabschnitt 1.0 # Virtuelle Hosts
#
ResourceType=VirtualHost
ImplementingResourceType=VirtualHost
ResourceId=Cell=!{cellName}:VirtualHost=ID#VirtualHost_1
#
#Eigenschaften
#
name=default_host

EnvironmentVariablesSection
#Umgebungsvariablen
cellName=myNode04Cell

Eine XMI-ID ist eine eindeutige Kennung, die ein Produkt vor Version 7.0.0.7 beim Erstellen eines Konfigurationsobjekts generiert. In einer anderen Umgebung kann die XMI-ID für dasselbe Objekt anders sein. In diesem Beispiel hat eine VirtualHost-Ressource für den Standardhost in einer Umgebung die XMI-ID VirtualHost_1. In einer anderen Umgebung kann die XMI-ID ein anderer Wert sein, z. B. VirtualHost_2. Eigenschaftendateien, die XMI-IDs haben, sind nicht portierbar. Extrahierte Eigenschaften, die XMI-IDs haben, können nicht auf eine andere Umgebung angewendet werden, ohne zuerst die Ressourcen-IDs zu ändern.

Derselbe Abschnitt für einen virtuellen Host in einer Eigenschaftendatei mit portierbaren Ressourcen-IDs gleicht dem folgenden Abschnitt:

#
# Unterabschnitt 1.0 # Virtuelle Hosts
#
ResourceType=VirtualHost
ImplementingResourceType=VirtualHost
ResourceId=Cell=!{cellName}:VirtualHost=default_host
#
#Eigenschaften
#
name=default_host

EnvironmentVariablesSection
#Umgebungsvariablen
cellName=myNode04Cell

In diesem Beispiel wird name als Schlüsselattribut für die eindeutige Identifizierung des VirtualHost-Objekts in einer Umgebung verwendet. Ein Objekt kann mehrere Schlüsselattribute haben, um das Objekt unter verschiedenen Instanzen desselben Typs eindeutig zu identifizieren.

Informationen zu diesem Vorgang

Sie können Eigenschaftendateien mit portierbaren Ressourcen-IDs auf eine andere Umgebung anwenden.

Wenn Sie eine Eigenschaftendatei so extrahieren möchten, dass sie portierbare Ressourcen-IDs hat, verwenden Sie den Befehl extractConfigProperties mit der Option "PortablePropertiesFile", die auf den Wert true gesetzt wird. Mit dieser Option extrahierte Eigenschaftendateien sind portierbar. Die extrahierten Eigenschaftendateien identifizieren die einzelnen Ressourcen nicht eindeutig. Eine Ressourcen-ID kann ein oder mehrere Attributname/Attributwert-Paare haben. So gibt das Attribut nodeName beispielsweise einen Knoten und das Attribut serverName einen Server an.

Standardmäßig ist eine extrahierte Eigenschaftendatei nicht portierbar. Eine Eigenschaftendatei hingegen, die mit der Option "PortablePropertiesFile", die auf true gesetzt ist, extrahiert wird, ist portierbar.

Nachdem Sie eine Eigenschaftendatei mit der auf true gesetzten Option "PortablePropertiesFile" extrahiert haben, ändern Sie den EnvironmentVariablesSection am Ende der Eigenschaftendatei, kopieren Sie die Eigenschaftendatei in die Zielumgebung, und führen Sie anschließend den Befehl applyConfigProperties aus, um die Eigenschaftendatei auf eine andere Zelle anzuwenden.

Sie können diese Befehle auch im Dialogmodus ausführen. Verwenden Sie dazu die folgende Syntax:
AdminTask.Befehlsname('-interactive')

Vorgehensweise

  1. Starten Sie das Scripting-Tool "wsadmin".
    Zum Starten von "wsadmin" in der Sprache Jython führen Sie im Verzeichnis bin des Serverprofils den folgenden Befehl aus:
    wsadmin -lang jython
  2. Extrahieren Sie eine Eigenschaftendatei mit dem Befehl extractConfigProperties und der auf true gesetzten Option "extractConfigProperties".

    Um beispielsweise Eigenschaften eines Servers mit dem Namen server1 in die Datei server.props in einem portierbaren Format zu extrahieren, führen Sie den folgenden wsadmin-Befehl aus:

    AdminTask.extractConfigProperties('[-propertiesFileName server.props -configData Server=server1 
    -options [[PortablePropertiesFile true]] ]')

    Wenn eine Eigenschaftendatei auf eine Ressource des Typs Server, Node, Application, Cluster oder AuthorizationGroup verweist, die nicht in der Zielumgebung vorhanden ist, sollten Sie die Option "GenerateTemplates" auf true setzen:

    AdminTask.extractConfigProperties('[-propertiesFileName server.props -configData Server= 
    -options [[GenerateTemplates true][PortablePropertiesFile true]] ]')

    Wenn die Option "GenerateTemplates" verwendet wird, enthält die extrahierte Eigenschaftendatei Eigenschaftenabschnitte, die die Erstellung eines weiteren Objekts desselben Typs unterstützt. Diese Option ist standardmäßig nicht ausgewählt.

  3. Optional: Öffnen Sie die extrahierte Eigenschaftendatei in einem Editor, und überprüfen Sie die Ressourcen-IDs, um sicherzustellen, dass diese portierbar sind.

    Portierbare IDs identifizieren die einzelnen Ressourcen nicht eindeutig. Die folgenden Beispiele zeigen portierbare IDs in verschiedenen Unterabschnitten der Eigenschaftendateien.

    Beispiel 1: Verwendung eines Attributnamens und eines Attributwerts für eine Ressourcen-ID

    In diesem Beispiel ist jndiName eine portierbare Ressourcen-ID, die eine Datenquelle identifiziert:

    #
    # Unterabschnitt 1.0.1.0 # DataSource-Attribute
    #
    Resou:rceType=DataSource
    ImplementingResourceType=JDBCProvider
    ResourceId=Cell=!{cellName}:Node=!{nodeName}:Server=!{serverName}:JDBCProvider=Derby JDBC
     Provider(XA):DataSource=jndiName#jdbc/DefaultEJBTimerDataSource
    Beispiel 2: Verwendung mehrerer Attributname/Attributwert-Paare für eine Ressourcen-ID

    In diesem Beispiel identifizieren die Attribute nodeName und serverName gemeinsam die Ressource coreGroupServer.

    #
    # Unterabschnitt 1.0.8.0 # CoreGroupServer-Abschnitt
    #
    ResourceType=CoreGroupServer
    ImplementingResourceType=CoreGroup
    ResourceId=Cell=!{cellName}:CoreGroup=!{coreGroup}:CoreGroupServer=nodeName#myNode04,serverName#server1
    AttributeInfo=coreGroupServers
    Beispiel 3: Singleton-Ressourcen-ID

    In diesem Beispiel gibt es nur ein einziges Security-Objekt in der Zelle. Da das Security-Objekt als Singleton-Objekt betrachtet wird, ist kein Attribut erforderlich, um diese Ressource eindeutig zu identifizieren.

    #
    # Unterabschnitt 1.0 # Security-Abschnitt
    #
    ResourceType=Security
    ImplementingResourceType=Security
    ResourceId=Cell=!{cellName}:Security=
    Fehler vermeiden Fehler vermeiden: Einige Ressourcen, wie z. B. JDBCProvider und ThreadPool, können mehrfach mit demselben Namen erstellt werden. Der Namenswert ist das Schlüsselattribut für diese Objekte. Erstellen Sie nicht mehrere Instanzen dieser Objekte mit demselben Namen in einem bestimmten Bereich.gotcha
  4. Ändern Sie die extrahierte Eigenschaftendatei nach Bedarf.
    • Wenn die extrahierte portierbare Eigenschaftendatei auf eine Ressource des Typs Server, Node, Application, Cluster oder AuthorizationGroup verweist, die nicht in einer anderen Umgebung vorhanden ist, und wenn der Befehl Befehl extractConfigProperties mit der auf true gesetzten Option "extractConfigProperties" ausgeführt wurde, editieren Sie die Eigenschaftendatei, um die Erstellung der Ressource zu aktivieren.

      Die Option "GenerateTemplates" ermöglicht Ihnen, einen weiteren Server zu erstellen, der einem vorhandenen Server gleicht. Wenn die Servereigenschaften beispielsweise mit dieser Option extrahiert werden, enthält die extrahierte Eigenschaftendatei eine Schablone oben in der Datei, mit der Sie einen weiteren Server erstellen können. Der Abschnitt mit der Schablone wird standardmäßig übersprungen. wenn Sie SKIP=false setzen und anschließend die erforderlichen Eigenschaften so definieren, dass ein neues Objekt erstellt wird, erstellt das Produkt ein neues Objekt, wenn der Befehl applyConfigProperties ausgeführt wird, und stellt die bearbeitete Eigenschaftendatei bereit. Da die folgenden Abschnitte Konfigurationseigenschaften eines vorhandenen Servers enthalten und diese Abschnitte verarbeitet werden, wenn der Befehl applyConfigProperties ausgeführt wird, hat der neu erstellte Server dieselbe Konfiguration wie der alte Server, aus dem die Eigenschaftendatei extrahiert wurde.

      Sie müssen den Abschnitt für die Umgebung so ändern, dass er den neuen erstellten Server widerspiegelt, indem Sie die Variablen nodeName, cellName und serverName ändern.

      Diese Option generiert einen Abschnitt mit Schabloneneigenschaften vor jedem Abschnitt für einen Server, einen Cluster, eine Anwendung und eine Berechtigungsgruppe. Die Abschnitte sind standardmäßig inaktiviert.

      Bearbeiten Sie für jedes Objekt, das in der Zielumgebung nicht vorhanden ist, den diesem Objekt entsprechenden Abschnitt. Fügen Sie die richtigen Eigenschaftswerte ein, und entfernen Sie SKIP=true. Setzen Sie die umgebungsspezifischen Variablen am Ende der Eigenschaftendatei so, dass sie die neue Zielumgebung widerspiegeln.

    • Ändern oder löschen Sie keine Eigenschaften, die als Schlüssel für die Identifizierung eines Objekts verwendet werden.

      Wenn Sie ein Schlüsselattribut in einem Objekt ändern oder löschen, dürfen nachfolgende Abschnitte in der Eigenschaftendatei nicht erneut auf das Objekt verweisen. Die in den nachfolgenden Abschnitten angegebene Ressource wird nicht gefunden.

      Sehen Sie sich beispielsweise die Eigenschaften für den virtuellen Host in den folgenden Abschnitten an:

      ResourceType=VirtualHost
      ImplementingResourceType=VirtualHost
      ResourceId=Cell=!{cellName}:VirtualHost=admin_host
      #
      #Eigenschaften
      #
      name=admin_host #required
      #
      # Unterabschnitt 1.0.1 # MimeTypes-Abschnitt
      #
      ResourceType=VirtualHost
      ImplementingResourceType=VirtualHost
      ResourceId=Cell=!{cellName}:VirtualHost=admin_host
      AttributeInfo=mimeTypes(type,extensions)

      Wenn name=admin_host in name=my_host geändert geändert wird, kann der Abschnitt zu den MIME-Typen, der ResourceId==!{cellName}:VirtualHost=admin_host enthält, die mit ResourceId angegeben Ressource nicht finden, weil der Name im vorherigen Abschnitt geändert wurde. Wird name=admin_host gelöscht, kann der Abschnitt zu den MIME-Typen die mit ResourceId angegebene Ressource ebenfalls nicht finden.

  5. Validieren Sie die Eigenschaftendatei.

    Führen Sie den Befehl validateConfigProperties aus. Weitere Informationen finden Sie im Artikel zur Validierung von Eigenschaftendateien.

  6. Kopieren sie die portierbare extrahierte Eigenschaftendatei in eine andere Umgebung.
  7. Wenn die extrahierte portierbare Eigenschaftendatei auf eine Ressource des Typs Server, Node, Application, Cluster oder AuthorizationGroup verweist, die nicht in einer anderen Umgebung vorhanden ist, und wenn der Befehl Befehl extractConfigProperties nicht mit der auf true gesetzten Option "extractConfigProperties" ausgeführt wurde, erstellen Sie die Ressource in der anderen Umgebung.

    Da die Eigenschaftendatei ursprünglich auf eine andere Umgebung angewendet wurde, kann eine Ressourcen-ID in der Eigenschaftendatei auf eine Ressource verweisen, die nicht in der Zielumgebung vorhanden ist. Wenn keine Ressource des Typs Server, Node, Application, Cluster oder AuthorizationGroup in der Zielumgebung vorhanden ist und die Eigenschaftendatei die Erstellung der Ressource nicht unterstützt, erstellen Sie die Ressource in der Zielumgebung, bevor Sie die Eigenschaften für diese Ressource anwenden. Außerdem kann ein Attribut auf eine andere Ressource verweisen. Stellen Sie sicher, dass alle referenzierten Ressourcen vorhanden sind, und erstellen Sie gegebenenfalls Ressourcen des Typs Server, Node, Application, Cluster oder AuthorizationGroup, die fehlen.

  8. Wenden Sie die portierbare extrahierte Eigenschaftendatei mit dem Befehl applyConfigProperties in einer anderen Umgebung an.

    Wenn Sie beispielsweise die Eigenschaftendatei server.props anwenden und einen Bericht mit dem Namen rep.txt generieren möchten, führen Sie den folgenden wsadmin-Befehl aus:

    AdminTask.applyConfigProperties('[-propertiesFileName server.props -reportFileName rep.txt]')

    Wenn eine in der Eigenschaftendatei angegebene Ressource in der Zielumgebung vorhanden ist und der in der Eigenschaftendatei angegebene Eigenschaftwert mit dem Wert identisch ist, der bereits in der Zielumgebung definiert ist, wird diese Eigenschaft übersprungen bzw. nicht in der Zielumgebung gesetzt. Das Produkt wendet nur Eigenschaften an, die sich von den in der Eigenschaftendatei angegebenen unterscheiden.

    Wenn eine in der Eigenschaftendatei angegebene Ressource nicht in der Zielumgebung vorhanden ist, erstellt das Produkt eine neue Ressource und setzt alle Eigenschaften für die neu erstellte Ressource auf die Werte für die Ressource in der Eigenschaftendatei. Das Produkt erstellt keine Ressourcen des Typs Server, Node, Application, Cluster oder AuthorizationGroup, sofern der Befehl extractConfigProperties nicht mit der auf true gesetzten Option "GenerateTemplates" ausgeführt wurde und die Eigenschaftendatei nicht mindestens eine neue Ressource dieser Typen spezifiziert.

    Fehler vermeiden Fehler vermeiden: Wenn das Attribut einer Ressource in der Eigenschaftendatei eine andere Ressource referenziert, die nicht in der Zielumgebung vorhanden ist, wird die referenzierte Ressource vom Befehl applyConfigProperties nicht erstellt. Beispiel: In der folgenden Eigenschaftendatei ist coreGroupName ein Attribut einer HAManagerService-Ressource und referenziert eine Stammgruppenressource (coregroup) über den Namen. Wenn die Stammgruppe mit dem Namen myCoreGroup in der Zielumgebung nicht vorhanden ist und Sie die Eigenschaftendatei mit dem Befehl applyConfigProperties anwenden, wird die Stammgruppenressource nicht erstellt.
    #                                                                           
    # Unterabschnitt 1.0 # HAManagerService-Abschnitt
    #                                                                           
    ResourceType=HAManagerService                                               
    ImplementingResourceType=HAManagerService                                   
    ResourceId=Cell=!{cellName}:Node=!{nodeName}:Server=!{serverName}:HAMana    
    gerService=                                                                 
    AttributeInfo=hamanagerservice                                              
    #                                                                           
                                                                                
    #                                                                           
    #Eigenschaften
    #                                                                           
    isAlivePeriodSec=120 #integer,required,default(120)                         
    transportBufferSize=10 #integer,required,default(1)                         
    enable=true #boolean,default(false)
    context=null
    activateEnabled=true #boolean,default(false)                                
    description=Template version of HAManager service.                          
    coreGroupName=myCoreGroup
    gotcha

Ergebnisse

Die Zielumgebung wird über die angewendete Eigenschaftendatei aktualisiert.

Nächste Schritte

Speichern Sie die Änderungen in Ihrer Konfiguration.


Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_portable_prop
Dateiname:txml_portable_prop.html