Resolución de problemas de administración y de la consola de administración

Nota: En este tema se hace referencia a uno o más de los archivos de registro del servidor de aplicaciones. Como alternativa recomendada, puede configurar el servidor para utilizar la infraestructura de registro y rastreo HPEL en lugar de utilizar los archivos SystemOut.log , SystemErr.log, trace.log y activity.log en sistemas distribuidos y de IBM® i. Puede también utilizar HPEL junto con sus recursos de registro nativos de z/OS. Si utiliza HPEL, puede acceder a toda la información de registro y rastreo utilizando la herramienta de línea de mandatos LogViewer desde el directorio bin de perfil de servidor. Consulte la información sobre la utilización de HPEL para resolver problemas de aplicaciones para obtener más información sobre la utilización de HPEL.
En los productos WebSphere Application Server, se da soporte a las funciones administrativas mediante:
  • El proceso servidor de aplicaciones (como server1)
  • El proceso del gestor de despliegue del producto WebSphere Application Server, Network Deployment

El proceso debe estar ejecutándose para poder utilizar la consola administrativa. El programa de utilidad de línea de mandatos wsadmin tiene una modalidad local que se puede utilizar para realizar algunas funciones administrativas, incluso cuando el proceso servidor no está ejecutándose.

El estado del servidor y los mensajes de la vista de la consola no son actuales

Cuando se conecta a un servidor de aplicaciones que utiliza la conexión SOAP (Simple Object Access Protocol) durante un largo período de tiempo, empiezan a producirse los problemas siguientes:
  • Bajo la columna de estado de la vista Servidores de un panel de la consola administrativa, el estado del servidor no se renueva.
  • Los mensajes del servidor no se actualizan en la consola de administración.
  • Se produce un descenso de los recursos del sistema ya que se crean varios puertos y se dejan en estado TIME_WAIT.
Este problema persiste incluso después de reiniciar el servidor o de iniciar otro servidor que utiliza el puerto de conexiones SOAP.

El problema se produce porque el conector SOAP no da soporte a la agrupación de conexiones. Si el servidor de aplicaciones tiene muchas operaciones en curso que utilizan el conector SOAP, el servidor de aplicaciones abre y cierra rápidamente muchos puertos. Debido a la naturaleza del protocolo TCP/IP subyacente, estos puertos permanecen en estado TIME_WAIT durante algún tiempo antes de que el sistema operativo pueda reclamarlos. El número de puertos que WebSphere Application Server abre puede superar el límite impuesto por el sistema operativo. En este estado, la apertura de puertos adicionales falla mediante el conector SOAP hasta que el sistema operativo reclama los puertos.

Utilice las opciones siguientes para solucionar el problema:
  • Aumente los límites del sistema operativo en relación con el número de puertos
  • Para Rational Application Developer, el programa de utilidad wsadmin o las aplicaciones Java™ que utilicen los conectores de JMX (Java Management Extension), pase al conector RMI (Remote Method Invocation).
  • Espere hasta que haya pocos o ningún puerto en estado TIME_WAIT antes de realizar nuevas operaciones mediante Rational Application Developer o la consola administrativa.

Falla la autorización basada en roles

Cuando efectúa una llamada JMX (Java Management Extension) como, por ejemplo, getAttribute, setAttribute, invoke, etc., en la aplicación, para emitir la llamada es necesario un rol administrativo con suficientes permisos. El rol necesario depende del atributo o método MBean al que llama el emisor de la llamada JMX y puede ser de administrador, configurador, monitor u operador. Si no se asigna uno de los roles administrativos al emisor o si se asigna el rol pero el emisor no tiene los permisos necesarios, la aplicación recibe un error de autorización basado en roles, por ejemplo:
SECJ0305I: Ha fallado la comprobación de autorizaciones basada en roles para el nombre de seguridad server.domain.name:3890/user.id, 
accessId user:server.domain.name:3890/uid=user.id,ou=xxxx,dc=yyy,dc=zzz mientras invoca el método
getNodeName en el servidor de recursos y en el servidor del módulo.
Si no se puede asignar al emisor de la aplicación uno de los roles administrativos, la aplicación puede iniciar la sesión con uno de los roles en nombre del emisor. Por ejemplo:
	try
	{
				// Crear un LoginContext para autenticar un ID de usuario y una contraseña.
    javax.security.auth.login.LoginContext 
    lc = new javax.security.auth.login.LoginContext("WSLogin", 
	  	  new com.ibm.websphere.security.auth.callback.WSCallbackHandlerImpl("usuarioAdmin",
    "contraseñaAdmin"));

				// efectuar el inicio de sesión
		lc.login(); 

				// Obtener el sujeto autenticado.
				javax.security.auth.Subject adminSubject = lc.getSubject();

				// Definir la acción que se llevará a cabo utilizando el sujeto autenticado
				// Puede definir esta acción en cualquier lugar del código, la acción
	  	  // es la referencia en WSSubject.doAs que se indica a continuación.
				java.security.PrivilegedAction adminAction = new java.security.PrivilegedAction() 
		{
						public Object run() 
			{
				try 
				{
										// Obtener el servicio administrativo de WebSphere. 										AdminService adminservice = AdminServiceFactory.getAdminService();      

										// Obtener la instancia del MBean local de admnistración de WebSphere. 										ObjectName objectname = adminservice.getLocalServer();                  

										// Obtener el nombre de nodo. 										String nodeName = (String)adminservice.getAttribute(objectname, "nombreNodo");

										// Obtener el nombre del servidor de aplicaciones. 										String serverName = (String)adminservice.getAttribute(objectname, "nombre");
				
										// Obtener el ID de proceso del servidor de aplicaciones. 										String serverPid = (String)adminservice.getAttribute(objectname, "pid");       

										// Devolver un resultado, para este ejemplo, devolver simplemente el serverPid.
										return serverPid;
				} 
				catch (Exception e) 
				{
					e.printStackTrace();
				}
				return null;
			}
		});

				// Invocar un recurso de cliente administrativo mediante el sujeto autenticado.  
     // Este ejemplo muestra la acción de crear un cliente 
     // administrativo y devolver un valor de serie para utilizar fuera del 
     // bloque doAs.
				String myData = (String) 
     com.ibm.websphere.security.auth.WSSubject.doAs(adminSubject, adminAction);

				// utilizar "myData" posteriormente....
	} 
		catch (javax.security.auth.login.LoginException e) 
	{
		e.printStackTrace();
	}

Cuando se inicia o se detiene un servidor utilizando una sesión de scripts interactiva de wsadmin, se recibe una excepción indicando que se ha excedido el tiempo de espera de lectura.

Cuando se inicia o se detiene un servidor utilizando una sesión de scripts interactiva de wsadmin, se recibe una excepción indicando que se ha excedido el tiempo de espera de lectura, por ejemplo:
WASX7015E: Excepción al ejecutar el mandato: "$AdminControl startServer server1 Node1;"
información de excepción: com.ibm.websphere.management.exception.ConnectorException 
org.apache.soap.SOAPException: [SOAPException: faultCode=SOAP-ENV:Client; msg=Read 
timed out; targetException=java.net.SocketTimeoutException: Read timed out]

[AIX Solaris HP-UX Linux Windows][z/OS]Esta excepción se produce porque el valor del tiempo de espera es demasiado pequeño. Aumente el valor de tiempo excedido especificado mediante la propiedad com.ibm.SOAP.requestTimeout en el archivo soap.client.props del directorio raíz_perfil/properties para una edición de un solo servidor o en el directorio raíz_perfil/properties para una instalación Network Deployment. El valor que elija dependerá de diversos factores como, por ejemplo, el tamaño y el número de las aplicaciones que están instaladas en el servidor, la velocidad de la máquina y el nivel de utilización de la máquina. El valor predeterminado de la propiedad com.ibm.SOAP.requestTimeout es de 180 segundos.

[IBM i]Esta excepción se produce porque el valor del tiempo de espera es demasiado pequeño. Para solucionar este problema, aumente el valor de tiempo excedido especificado mediante la propiedad com.ibm.SOAP.requestTimeout en el archivo soap.client.props en el directorio raíz_perfil/properties para una edición de un solo servidor o en el directorio raíz_perfil/properties para una instalación de Network Deployment. El valor que debe elegir dependerá de diversos factores como, por ejemplo, el tamaño y el número de las aplicaciones que están instaladas en el servidor, la velocidad de la máquina y el nivel de utilización de la máquina. El valor predeterminado de la propiedad com.ibm.SOAP.requestTimeout es de 180 segundos.

Problemas al iniciar o utilizar la consola administrativa o el programa de utilidad wsadmin

Si tiene algún problema al iniciar o utilizar la consola administrativa o el programa de utilidad wsadmin, compruebe que el proceso servidor de soporte se haya iniciado y su estado sea el correcto.
  • En el proceso de servidor de aplicaciones, consulte estos archivos:
    • [AIX Solaris HP-UX Linux Windows][z/OS]raíz_perfil/logs/server_name/startServer.log para el mensaje que indica que se ha iniciado correctamente el servidor: ADMU3000I: Servidor server1 abierto para e-business; el ID de proceso es nnnn..
    • [IBM i]raíz_perfil/logs/server_name/startServer.log para el mensaje que indica que se ha iniciado correctamente el servidor: ADMU3000I: Servidor server1 abierto para e-business; el ID de proceso es nnnn..
    • [AIX Solaris HP-UX Linux Windows]raíz_perfil/logs/nombre_servidor/SystemOut.log
    • [IBM i]raíz_perfil/logs/nombre_servidor/SystemOut.log
    • [z/OS]Los archivos de anotaciones cronológicas del servidor para el mensaje que indica que el servidor se ha iniciado correctamente: WSVR0001I: Servidor server abierto para e-business.
  • En el producto WebSphere Application Server, Network Deployment, consulte estos archivos:
    • [AIX Solaris HP-UX Linux Windows][z/OS]raíz_perfil/logs/dmgr/startServer.log para el mensaje que indica que se ha iniciado correctamente el servidor: ADMU3000I: Servidor dmgr abierto para e-business; el ID de proceso es nnnn.
    • [IBM i]raíz_perfil/logs/dmgr/startServer.log para el mensaje que indica que se ha iniciado correctamente el servidor: ADMU3000I: Servidor dmgr abierto para e-business; el ID de proceso es nnnn.
    • [AIX Solaris HP-UX Linux Windows]raíz_perfil/logs/dmgr/SystemOut.log para el mensaje que indica que se ha iniciado correctamente el servidor: ADMU3000I: Servidor dmgr abierto para e-business; el ID de proceso es nnnn.
    • [IBM i]raíz_perfil/logs/dmgr/SystemOut.log para el mensaje que indica que se ha iniciado correctamente el servidor: ADMU3000I: Servidor dmgr abierto para e-business; el ID de proceso es nnnn.
    • [z/OS]Los archivos de registro del servidor para este mensaje que indican que el servidor se ha iniciado correctamente: WSVR0001I: Servidor dmgr abierto para e-business.
  • [z/OS]Para el producto z/OS, compruebe la salida del trabajo.
  • Consulte los mensajes de error que pueden aparecer en la tabla de referencia de mensajes para estos archivos. Seleccione la vista Referencia en la navegación del centro de información y luego pulse Mensajes. Un mensaje similar a WASX7213I: Este cliente de script no está conectado a un proceso de servidor cuando intenta iniciar wsadmin indicará que el proceso de servidor no está ejecutándose, o bien que la máquina en la que está ejecutándose no está accesible o bien que el nombre de puerto o de servidor que ha utilizado wsadmin no son correctos.
  • Compruebe que esté utilizando el número de puerto correcto para comunicarse con la consola administrativa o con el servidor wsadmin:
    • [AIX Solaris HP-UX Linux Windows][IBM i]Busque el archivo SystemOut.log.

      [z/OS]Busque el archivo joblogs.

      • La línea ADMC0013I: El conector SOAP está disponible en el puerto nnnn indica el puerto que está utilizando el servidor para escuchar las funciones de wsadmin.
      • [AIX Solaris HP-UX Linux Windows][z/OS]La propiedad com.ibm.ws.scripting.port del archivo raíz_perfil/properties/wsadmin.properties controla el puerto que utiliza el programa de utilidad wsadmin para enviar solicitudes al servidor.
      • [IBM i]La propiedad com.ibm.ws.scripting.port del archivo raíz_perfil/properties/wsadmin.properties controla el puerto que utiliza el programa de utilidad wsadmin para enviar solicitudes al servidor.
    • [AIX Solaris HP-UX Linux Windows][z/OS]Si el valor de puerto es diferente del valor que aparece en el archivo SystemOut.log, cambie el número de puerto del archivo wsadmin.properties o especifique el número de puerto correcto cuando inicie el programa de utilidad wsadmin utilizando la propiedad -port número_puerto en la línea de mandatos.

      La propiedad com.ibm.ws.scripting.port del archivo raíz_perfil/properties/wsadmin.properties controla el puerto que utiliza el programa de utilidad wsadmin para enviar solicitudes al servidor.

    • [IBM i]Si el valor del puerto es diferente del valor que aparece en el archivo SystemOut.log, cambie el número de puerto en el archivo wsadmin.properties o especifique el número de puerto correcto cuando inicie el programa de utilidad wsadmin mediante la propiedad -port número_puerto en la línea de mandatos.

      La propiedad com.ibm.ws.scripting.port del archivo raíz_perfil/properties/wsadmin.properties controla el puerto que utiliza el programa de utilidad wsadmin para enviar solicitudes al servidor.

    • [IBM i]Si el valor del puerto es diferente del valor que aparece en los archivos de registro del servidor, cambie el número de puerto en el archivo wsadmin.properties o especifique el número de puerto correcto cuando inicie el programa de utilidad wsadmin mediante la propiedad -port número_puerto en la línea de mandatos.

      El mensaje SRVE0171I: El transporte http está atendiendo al puerto nnnn (valor predeterminado 9060) indica el puerto que utiliza el servidor para escuchar las solicitudes de la consola de administración.

    • Si el valor del puerto es diferente del que se especifica en la dirección web de la consola de administración, cambie la dirección web del navegador por el valor correcto. El valor predeterminado es http://localhost:9060/ibm/console.
  • Utilice el mandato telnet para comprobar si el nombre de host en el que se ejecuta el servidor de aplicaciones o el gestor de despliegue se puede alcanzar desde el sistema en el que se está utilizando el navegador o el programa wsadmin. Si puede ejecutar ping para el nombre de host, no existe ningún problema de cortafuegos o conectividad.
  • Si el host en que está ejecutándose el servidor de aplicaciones o el gestor de despliegue es remoto en relación con la máquina en la que está ejecutándose el navegador del cliente o el mandato wsadmin, asegúrese de que sea correcto el parámetro nombre_host adecuado. Compruebe:
    • El nombre de host de la dirección web del navegador de la consola.
    • La opción -host nombre_host del mandato wsadmin que se utiliza para dirigir wsadmin al servidor correcto.
  • [AIX Solaris HP-UX Linux Windows][IBM i] Es posible que el soporte técnico de WebSphere Application Server le solicite que efectúe un rastreo del componente administrativo para determinar mejor el problema. La especificación de rastreo para este componente es com.ibm.websphere.management.*=all=enabled:com.ibm.ws.management.*=all=enabled"

El método AdminConfig.parents no se puede utilizar para obtener los tipos de padre válidos de algunos tipos de configuración

Cuando se utiliza el método AdminConfig.parents para obtener los tipos padre permitidos para un tipo de configuración específica, por ejemplo, "JavaVirtualMachine", es posible que se devuelva un mensaje informativo en lugar del valor deseado.
wsadmin>print AdminConfig.parents( "JavaVirtualMachine")
Se devuelve el siguiente mensaje informativo:
WASX7351I: El mandato parents no se puede utilizar para buscar los padres de tipo "JavaVirtualMachine" 
La función siguiente muestra una posible método alternativo para el método AdminConfig.parents() que se ocupa del problema mencionado anteriormente:
#---------------------------------------------------------------------
# Name: parentTypes()
# Role: To search for configuration types that may contain objects of
#       the specified type should the result of calling
#       AdminConfig.parents( Type )
#       be:
#       WASX7351I: The parents command cannot be used to find the parents of type ...
# Note: Unlike the AdminConfig.list() command, this routine will not
#       raise an InvalidConfigDataTypeException for an unknow datatype
#---------------------------------------------------------------------
def parentTypes( Type ) :
    import os
    WSAStypes = AdminConfig.types().splitlines() 
    if Type in  WSAStypes :
        result = AdminConfig.parents( Type )
        if result.startswith( 'WASX7351I' ) :
            result = []
            for thisType in WSAStypes :
                if AdminConfig.attributes( thisType ).find( Type ) > -1 :
                    result.append( thisType )
            result = (os.linesep).join( result )
    else:
        print 'parentTypes error: unknown / unrecognized type:', Type
        result = None
    return result

[AIX Solaris HP-UX Linux Windows][z/OS]Si ninguno de estos pasos resuelve el problema, compruebe si el problema específico que está tratando queda cubierto en el tema La instalación se completa pero la consola de administración no se inicia. Compruebe si el problema se ha identificado y documentado utilizando los enlaces de Diagnóstico y solución de problemas: recursos de aprendizaje. Si no encuentra ningún problema parecido al suyo o si la información proporcionada no resuelve el problema, póngase en contacto con el servicio de soporte de IBM para obtener más ayuda.

[IBM i]Si ninguno de estos pasos resuelve el problema, compruebe si el problema específico que está tratando queda cubierto en el tema La instalación se completa pero la consola de administración no se inicia. Compruebe si el problema se ha identificado y documentado utilizando los enlaces de Diagnóstico y solución de problemas: recursos de aprendizaje.

Si desea obtener información actualizada sobre el servicio de soporte de IBM sobre los problemas conocidos y su resolución, consulte los siguientes temas en la página de soporte de IBM:
El servicio de soporte de IBM tiene documentos que pueden ahorrarle tiempo en la recopilación de la información necesaria para resolver este problema. Antes de abrir un PMR, consulte los siguientes temas sobre la recopilación de información en la página de soporte de IBM:

Icon that indicates the type of topic Reference topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rtrb_admincomp
File name: rtrb_admincomp.html