2013-07-08 7 views
6

Vorrei clonare un profilo esistente, avviare il server e modificarlo tramite l'Admin Console.Come clonare un profilo WebSphere 8

ho già letto la documentazione di IBM su

manageprofiles.bat 

ma lo strumento manageprofiles non contiene qualcosa di simile:

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

Questo è quello che ho bisogno e non vedo un modo per raggiungere Questo. Lo strumento può creare, eliminare, eseguire il backup e ripristinare un profilo.

Quello che ho già provato

  1. copiato nella directory del profilo e la rinominò
  2. A cura i percorsi nel bidone/setupCmdLine.bat
  3. Aggiunto il profilo agli AppServer/proprietà/profileRegistry. xml
  4. manageprofile Eseguiti -validateAndUpdateRegistry

Ma il profilo non è ancora riconosciuto da WAS. Posso verificare questo eseguendo

manageprofiles -listProfiles 

Come clonare o copiare i profili?

Esiste un modo manuale?

In tal caso, quali file nella dir del profilo devono essere modificati?

risposta

6

Risolto

Ecco i passaggi manuali che ho fatto per clonare un profilo esistente.

  1. Verificare che il server sia spento.
  2. copiare il profilo esistente Profiles/<oldProfile>-Profiles/<newProfile>
  3. Aggiornamento Percorso WAS_USER_SCRIPT in Profiles\<newProfile>\bin\setupCmdLine.bat
  4. Aggiornamento Percorso USER_INSTALL_ROOT in Profiles\<newProfile>\bin\setupCmdLine.bat
  5. proprietà Aggiornamento user.root in Profiles\<newProfile>\properties\ssl.client.props
  6. Sostituire tutte le occorrenze di <oldProfile> con <newProfile> in Profiles\<newProfile>\firststeps\firststeps.bat
  7. Modifica AppServer\properties\profileRegistry.xml. Creare una copia di <oldProfile> e aggiornare i valori dei tag con <newProfile>. Dovrebbe assomigliare a questo: <profile isAReservationTicket="false" isDefault="false" name="newProfile" path=".....\Profiles\newProfile" template=".......\AppServer\profileTemplates\default"/>
  8. Copia AppServer\properties\fsdb\<oldProfile>.bat a AppServer\properties\fsdb\<newProfile>.bat. Questo passaggio renderà il profilo disponibile per "AppServer \ bin \ manageprofiles.bat -listProfiles"
  9. Modifica config/cells/<cell>/nodes/<node>/variables.xml. Aggiorna il percorso USER_INSTALL_ROOT.
  10. aggiornare il percorso di WAS_USER_SCRIPT in AppServer\properties\fsdb\<newProfile>.bat

Questo ha funzionato per me. Si prega di commentare o votare per farmi sapere se ha funzionato anche per te.

+0

dubito IBM sosterrà questo approccio. Sospetto che un approccio migliore sia lo script delle modifiche alla configurazione e quindi apportare le stesse modifiche a più profili (ho capito che non è banale se hai già apportato tutte le modifiche tramite la console di amministrazione e vuoi solo clonarle). –

+3

Il tuo bkail di destra. Ne dubito anch'io, ma volevo documentare l'approccio che ha funzionato per me (WAS 8.0) e speriamo possa aiutare qualcun altro. –

+0

Grazie! Ho codificato questo processo manuale in uno script Python 2. Vedi: https://gist.github.com/bwright2810/37d7d9d8e0e8e3d6d5fa15d82e4dd8ef –

0

Non ho ancora testato il metodo, ma wsadmin ha il seguente comando:

createAppServerTemplate

Questo script crea un nuovo modello di server delle applicazioni nella configurazione . Un modello di server viene utilizzato per definire le impostazioni di configurazione per un nuovo server delle applicazioni. Quando si crea un nuovo server delle applicazioni , si seleziona il modello di server predefinito o un modello creato in precedenza, che si basa su un altro server dell'applicazione esistente già . Il modello predefinito viene utilizzato se si specifica che non specifica un modello diverso durante la creazione del server.

È possibile creare un modello dal proprio profilo iniziale e creare un nuovo profilo utilizzando il modello.

0

Credo che createAppServerTemplate crea il modello e per il server non il profilo. Pertanto, se hai già configurato un profilo, puoi utilizzare il modello per creare server aggiuntivi all'interno di questo profilo.

Si utilizzerà quindi createApplicationServer per creare nuovi server in base al modello creato sopra.

Suppongo che se si desidera copiare un profilo, il metodo migliore è registrare le configurazioni e impostarle in un file di script.

0

Solo per informazioni In MyEclipseBlue versione 10 possiamo esportare la configurazione del profilo del server & importazione nel nuovo profilo; quindi mantenendo tutta la configurazione.

La risposta di René è corretta ma ho riscontrato problemi durante l'esecuzione del server in modalità di debug.

1

Avevo bisogno di farlo oggi su WebSphere 8.5 Network Deployment, quindi l'ho rintracciato e ho scritto uno script. Ecco come lo faccio.

Creare un profilo WebSphere utilizzando lo strumento di gestione profili basato sulla GUI.

Ognuno si crea scriverà un file di log per:

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

Nel registro, cercare l'interruttore -create. Pulire e copiare quella linea in uno script, la modifica o la parametrizzazione dei campi come si desidera:

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% 

Sarà necessario cercare il "C: \ Program Files (x86) \ IBM \ WebSphere \ AppServer \ logs \ manageprofiles * _portdef.props "e copia uno di essi per il tuo uso come ho fatto io.

L'output del mio script era quindi una versione clonata/ottimizzata di un profilo che avevo creato in precedenza.

ho poi corse che alla riga di comando:

"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 

Si noti che le virgole devono essere scappato con doppie barre rovesciate o si ottiene errori criptici.

otterrete qualcosa di simile a quanto segue in caso di successo:

INSTCONFSUCCESS: Successo: Profilo Unica9103 ora esiste. Consultare C: \ Programmi (x86) \ IBM \ WebSphere \ AppServer \ profiles \ Unica9103 \ logs \ AboutThisProfile.txt per ulteriori informazioni su questo profilo.

1

Ecco una soluzione WebSphere integrata. Funziona correttamente su WAS 8.5.5.3.

  1. eseguire il server applicazioni in fonte profilo utility a riga di comando
  2. Run eseguendo lo script <WAS_INSTAL_ROOT>/AppServer/profiles/<YOUR_SOURCE_PROFILE>/bin/wsadmin.sh o <WAS_INSTAL_ROOT>/AppServer/profiles/<YOUR_SOURCE_PROFILE>/bin/wsadmin.bat (sulle macchine Windows)
  3. eseguire il comando in questa utility:

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

  4. Crea nuovo bersaglio profilo o utilizzare esistenti ed eseguire application server su di esso
  5. utility a riga di comando
  6. Run for bersaglio profilo eseguendo lo script <WAS_INSTAL_ROOT>/AppServer/profiles/<YOUR_TARGET_PROFILE>/bin/wsadmin.sh o <WAS_INSTAL_ROOT>/AppServer/profiles/<YOUR_TARGET_PROFILE>/bin/wsadmin.bat (sulle macchine Windows)
  7. Esegui comando per importare le impostazioni del profilo in indirizzare profilo in questa utility:

    $ AdminTask importWasprofile {-Archive <PATH/TO/PROFILE/EXPORT/ARCHIVE> -deleteExistingServers}

  8. Esegui comando per salvare le nuove impostazioni in bersaglio profilo in questa utility:

    $ AdminConfig salvare