2010-01-22 21 views
10

Estoy intentando implementar de forma remota un archivo war en un servidor de aplicaciones websphere. Entiendo que esto es posible hacerlo con wsadmin, pero soy un newb de Websphere.Despliegue remoto en Websphere 6.1.x usando wsadmin

Sé que puedo ejecutar wsadmin y conectarme con SOAP al servidor de aplicaciones remoto, pero ahí es donde estoy.

Parece que debería ser un caso de uso común, ¿alguien me puede ayudar?

supongo que el caso de uso sigue: 1. Actualización de la aplicación 2. Guarde todos los cambios 3. Reinicie el servidor de aplicaciones remoto

voy a hacer el despliegue utilizando Hudson fue Builder o Maven, lo que funcione

Gracias por su ayuda

Respuesta

3

Desde el WAS Constructor plugin es relativamente nuevo, no he probado (La evaluación ya está en la lista de tareas pendientes). Para ejecutar implementaciones desde la línea de comando usamos jython-scripts y wsadmin. Tengo entendido que necesito estar en la máquina donde quiero implementar. Puede implementar en una id. De máquina diferente su wsadmin local está en el nivel que su máquina de destino (la misma versión y mismos paquetes de características).

para más información sobre wsadmin ver http://publib.boulder.ibm.com/infocenter/wsdoc400/v6r0/index.jsp?topic=/com.ibm.websphere.iseries.doc/info/ae/ae/rxml_commandline.html

Por cierto, cuando se implementa utilizando la consola de administración basada en web, hay un enlace en algún lugar al final del proceso de implementación que muestra el comando jython. No use jacl, ya que WAS 7 solo usa jython.

+0

Gracias por la respuesta. Veo que tengo que crear un script, así que soy nuevo aquí. Quiero 1) actualizar la aplicación 2) AdminConfig.save 4) esperar hasta que la aplicación esté lista 4) apagar el servidor y 5) iniciar el servidor en la secuencia de comandos. Lo único que no sé hacer es la secuencia de comandos 4) anterior: espere hasta que la aplicación esté lista devuelve verdadera – noplay

+0

Cuando AdminConfig.save() devuelve el servidor está listo para reiniciarse. Solo puede reiniciar el servidor utilizando la secuencia de comandos si tiene WAS Network Deployment. De lo contrario, debe usar los scripts Stopserver y startserver (el mismo directorio que wsadmin). Si tiene WAS instalado como un servicio de Windows, necesita usar 'net start ' en lugar del script sartserver, de lo contrario comenzará como un proceso de usuario en lugar de un servicio. –

+1

Encontré que después de AdminConfig.save(), hice AdminApp.isAppReady y me devolvió falso. Hice un getDeployStatus (o algo así) y devolvió el "procesamiento", donde todavía estaba extrayendo los binarios y demás. Según tengo entendido, tengo que esperar hasta que esté listo antes de reiniciar el servidor. Estoy haciendo una implementación de red WAS. WAS se ejecuta en Linux. Acabo de encontrar algunos scripts de muestra que voy a probar en http://www.ibm.com/developerworks/websphere/library/samples/SampleScripts.html – noplay

5

Esta pregunta es bastante viejo, pero Id como para mostrar cómo hacemos esto remotly. En este caso con Ant

<target name="postbuild"> 
    <exec executable="C:\MyThinClient\wsadmin.bat" failonerror="true"> 
     <arg line="-conntype SOAP -host ${deployServer} -port ${deployPort} -user ${deployUser} -password ${deployPassword} -c" /> 
     <arg value="$AdminApp update ${projectName}EAR app {-operation update -contents {${artifactsDir}/${projectName}-${buildVersion}.ear}}" /> 
    </exec> 
</target> 

Dada la configuración correcta de la wsadmin.bat puede ejecutar esto desde cualquier servidor (sin se instaló) Por lo menos en la era de 6,1/7,0 ND esto sólo va a reiniciar la aplicación con el nuevo binarios, no todo el servidor

+0

¿Qué tienes que hacer para que wsadmin.bat se ejecute sin WAS instalado? –

+0

No importa, encontró documentación: [link] (http://pic.dhe.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=/com.ibm.websphere.nd.doc/info/ae/ ae/txml_adminclient.html) –

Cuestiones relacionadas