2013-07-08 10 views
6

Ich möchte ein vorhandenes Profil klonen, den Server starten und über die Admin-Konsole ändern.So klonen Sie ein WebSphere 8-Profil

Ich las bereits die IBM-Dokumentation über

manageprofiles.bat 

aber das manage Tool enthält nicht so etwas wie:

# would be nice if a clone action exists 
manageprofiles.bat -clone -profileName base -targetProfileName base1 

Das ist, was ich brauche und ich sehe keinen Weg zu erreichen Dies. Das Tool kann ein Profil erstellen, löschen, sichern und wiederherstellen.

Was ich bereits versucht

  1. das Profilverzeichnis kopiert und umbenannt es
  2. Edited die Pfade in der bin/setupCmdLine.bat
  3. hinzugefügt, um das Profil zu den AppServer/Eigenschaften/profileRegistry. xml
  4. ausgeführt managt -validateAndUpdateRegistry

Aber das Profil wird immer noch nicht von WAS erkannt. Ich kann dies überprüfen, indem Sie

Wie können Sie Profile klonen oder kopieren?

Gibt es einen manuellen Weg?

Wenn ja, welche Dateien im Profilverzeichnis müssen bearbeitet werden?

Antwort

6

Gelöst

Hier sind die manuellen Schritte, die ich ein vorhandenes Profil zu klonen tat.

  1. Stellen Sie sicher, dass der Server heruntergefahren wird.
  2. Kopieren Sie das vorhandene Profil Profiles/<oldProfile>-Profiles/<newProfile>
  3. Aktualisierungspfad WAS_USER_SCRIPT in Profiles\<newProfile>\bin\setupCmdLine.bat
  4. Aktualisierungspfad USER_INSTALL_ROOT in Profiles\<newProfile>\bin\setupCmdLine.bat
  5. aktualisieren user.root in Profiles\<newProfile>\properties\ssl.client.props
  6. Ersetzen Sie alle Vorkommen von <oldProfile> mit <newProfile> in Profiles\<newProfile>\firststeps\firststeps.bat
  7. Bearbeiten Sie AppServer\properties\profileRegistry.xml. Erstellen Sie eine Kopie der <oldProfile> und aktualisieren Sie die Tag-Werte mit der <newProfile>. Sollte in etwa so aussehen: <profile isAReservationTicket="false" isDefault="false" name="newProfile" path=".....\Profiles\newProfile" template=".......\AppServer\profileTemplates\default"/>
  8. Kopieren AppServer\properties\fsdb\<oldProfile>.bat zu AppServer\properties\fsdb\<newProfile>.bat. Mit diesem Schritt wird das Profil für "AppServer \ bin \ manageprofiles.bat -listProfiles"
  9. Edit config/cells/<cell>/nodes/<node>/variables.xml freigegeben. Aktualisieren Sie den Pfad USER_INSTALL_ROOT.
  10. Aktualisieren Sie den Pfad von WAS_USER_SCRIPT in AppServer\properties\fsdb\<newProfile>.bat

Das ist für mich gearbeitet. Bitte kommentiere oder stimme ab, um mich wissen zu lassen, ob es auch für dich funktioniert hat.

+0

speichert Ich bezweifle, IBM wird diesen Ansatz unterstützen. Ich vermute, ein besserer Ansatz besteht darin, Ihre Konfigurationsänderungen zu skripten und dann die gleichen Änderungen an mehreren Profilen vorzunehmen (ich verstehe, dass das nicht trivial ist, wenn Sie alle Änderungen bereits über die Admin-Konsole vorgenommen haben und sie nur klonen wollen). –

+3

Ihr Recht bkail. Ich bezweifle es auch, aber ich wollte den Ansatz, der für mich funktionierte (WAS 8.0), dokumentieren und hoffentlich anderen helfen. –

+0

Danke! Ich kodifizierte diesen manuellen Prozess in ein Python 2-Skript. Siehe: https://gist.github.com/bwright2810/37d7d9d8e0e8e3d6d5fa15d82e4dd8ef –

0

Ich habe nicht die Methode getestet, aber wsadmin hat den folgenden Befehl ein:

createAppServerTemplate

Dieses Skript erstellt eine neue Anwendungsserver-Vorlage in Ihrer Konfiguration. Eine Servervorlage wird verwendet, um die Konfiguration Einstellungen für einen neuen Anwendungsserver zu definieren. Wenn Sie einen neuen Anwendungsserver erstellen, wählen Sie entweder die Standardservervorlage oder eine zuvor erstellte Vorlage aus, die auf einem anderen, bereits vorhandenen Anwendungsserver basiert. Die Standardvorlage wird verwendet, wenn Sie beim Erstellen des Servers keine andere Vorlage angeben.

Sie könnten eine Vorlage aus Ihrem ursprünglichen Profil erstellen und mithilfe der Vorlage ein neues Profil erstellen.

0

Ich glaube, dass createAppServerTemplate erstellt e Vorlage für den Server nicht das Profil. Wenn Sie also bereits ein Profil konfiguriert haben, können Sie die Vorlage verwenden, um weitere Server innerhalb dieses Profils zu erstellen.

Sie würden dann createApplicationServer verwenden, um neue Server basierend auf der oben erstellten Vorlage zu erstellen.

Ich denke, wenn Sie ein Profil kopieren möchten, ist die beste Methode, die Konfigurationen aufzuzeichnen und sie in eine Skriptdatei zu setzen.

0

Nur zur Information In MyEclipseBlue Version 10 können wir Server Profilkonfiguration exportieren & importieren in neues Profil; daher die gesamte Konfiguration beibehalten.

René Antwort ist korrekt, aber ich habe Probleme beim Ausführen des Servers im Debug-Modus.

1

Ich musste dies heute in WebSphere 8.5 Network Deployment tun, also habe ich es aufgespürt und ein Skript geschrieben. Hier ist, wie ich es mache.

Erstellen Sie ein WebSphere-Profil mit dem GUI-basierten Profile Management Tool.

Jeder Sie erstellen, wird in eine Protokolldatei schreiben:

C:\Program Files (x86)\IBM\WebSphere\AppServer\logs\manageprofiles\XXXX_create.log 

Im Protokoll suchen die -create Schalter. Aufzuräumen und diese Zeile in einem Skript kopieren, zu modifizieren oder Parametrisierung der Felder, wie Sie wollen:

SET PROFILENAME=Profile2 
SET HOSTNAME=MyHostName 
SET WAS_BIN=C:\Program Files (x86)\IBM\WebSphere\AppServer\bin 
SET PROFILE_PATH=C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\%PROFILENAME% 
SET WAS_TEMPLATE=C:\Program Files (x86)\IBM\WebSphere\AppServer\profileTemplates\default 
SET WAS_CELL=%HOSTNAME%%PROFILENAME%Cell 

SET WAS_PORTS_FILE=C:\Program Files (x86)\IBM\WebSphere\AppServer\logs\manageprofiles\was_default_portdef.props 

SET A1=-create -serverName %PROFILENAME% -profileName %PROFILENAME% -cellName %WAS_CELL% -nodeName %PROFILENAME% -hostName %HOSTNAME% 
SET A2=-profilePath "%PROFILE_PATH%" -templatePath "%WAS_TEMPLATE%" 
SET A3=-applyPerfTuningSetting development -enableAdminSecurity false -winserviceCheck false -omitAction defaultAppDeployAndConfig 
SET A4=-portsFile "%WAS_PORTS_FILE%" 
SET A5=-signingCertDN "cn=10.0.2.15\\,ou=Root Certificate\\,ou=%WAS_CELL%\\,ou=%PROFILENAME%\\,o=IBM\\,c=US" -personalCertDN "cn=10.0.2.15\\,ou=%WAS_CELL%\\,ou=%PROFILENAME%\\,o=IBM\\,c=US" 
SET A6=-personalCertValidityPeriod 10 -signingCertValidityPeriod 15 

SET WAS_ARGS=%A1% %A2% %A3% %A4% %A5% %A6% 

call "%WAS_BIN%\manageprofiles.bat" %WAS_ARGS% 

Sie müssen für die „C aussehen: \ Program Files (x86) \ IBM \ WebSphere \ AppServer \ logs \ manageprofiles * _portdef.props "Dateien und kopieren Sie eine davon für Ihre Verwendung, so wie ich es getan habe.

Die Ausgabe meines Skripts war also eine geklonte/optimierte Version eines Profils, das ich zuvor erstellt hatte.

Ich lief es dann auf der Kommandozeile:

"C:\Program Files (x86)\IBM\WebSphere\AppServer\bin\manageprofiles.bat" -create -serverName Unica9103 -profileName Unica9103 -cellName UnicaVMUnica9103Cell -nodeName Unica9103 -hostName UnicaVM -profilePat 
h "C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\Unica9103" -templatePath "C:\Program Files (x86)\IBM\WebSphere\AppServer\profileTemplates\default" -a 
pplyPerfTuningSetting development -enableAdminSecurity false -winserviceCheck false -omitAction defaultAppDeployAndConfig -portsFile "C:\Program Files (x86)\IB 
M\WebSphere\AppServer\logs\manageprofiles\was_default_portdef.props" -signingCertDN "cn=10.0.2.15\\,ou=Root Certificate\\,ou=UnicaVMUnica9103Cell\\,ou=Unica9103 
\\,o=IBM\\,c=US" -personalCertDN "cn=10.0.2.15\\,ou=UnicaVMUnica9103Cell\\,ou=Unica9103\\,o=IBM\\,c=US" -personalCertValidityPeriod 10 -signingCertValidityPeri 
od 15 

Beachten Sie, dass die Kommas mit Doppelschrägstriche oder Sie kryptische Fehlermeldungen erhalten entkommen werden müssen.

INSTCONFSUCCESS:

Sie werden in etwa wie folgt auf Erfolg erhalten Erfolg: Profil Unica9103 existiert jetzt. Weitere Informationen zu diesem Profil finden Sie in C: \ Programme (x86) \ IBM \ WebSphere \ AppServer \ profiles \ Unica9103 \ logs \ AboutThisProfile.txt.

1

Hier ist eine integrierte WebSphere-Lösung. Dies funktioniert gut mit WAS 8.5.5.3.

  1. Führen Sie Ihren Anwendungsserver in Quelle Profil
  2. Run Kommandozeilenprogramm von Skript <WAS_INSTAL_ROOT>/AppServer/profiles/<YOUR_SOURCE_PROFILE>/bin/wsadmin.sh oder <WAS_INSTAL_ROOT>/AppServer/profiles/<YOUR_SOURCE_PROFILE>/bin/wsadmin.bat (auf Windows-Rechnern)
  3. Execute Befehl in diesem Programm ausgeführt wird:

    $ Admintask exportWasprofile {-archive <PATH/TO/PROFILE/EXPORT/ARCHIVE>}

  4. Erstellen neues Ziel Profil oder verwenden Sie bestehende und Applikationsserver läuft auf es
  5. Run Kommandozeilenprogramm für Ziel Profil von Skript ausgeführt <WAS_INSTAL_ROOT>/AppServer/profiles/<YOUR_TARGET_PROFILE>/bin/wsadmin.sh oder <WAS_INSTAL_ROOT>/AppServer/profiles/<YOUR_TARGET_PROFILE>/bin/wsadmin.bat (auf Windows-Rechnern)
  6. Befehl ausführen, um Profileinstellungen in zu importieren Ziel Profil in diesem Programm:

    $ Admintask importWasprofile {-Archiv <PATH/TO/PROFILE/EXPORT/ARCHIVE> -deleteExistingServers}

  7. Befehl ausführen neue Einstellungen in Ziel Profil in diesem Programm zu speichern:

    $ AdminConfig

Verwandte Themen