Fehlerbehebung bei der Verwaltung und der Administrationskonsole

Anmerkung: Dieser Artikel referenziert eine oder mehrere Protokolldateien des Anwendungsservers. Alternativ dazu wird empfohlen, den Server so zu konfigurieren, dass er die HPEL-Protokoll- und -Traceinfrastruktur (High Performance Extensible Logging) verwendet und nicht die Dateien SystemOut.log , SystemErr.log, trace.log und activity.log auf verteilten oder IBM® i-Systemen. Sie können HPEL auch in Verbindung mit Ihren nativen z/OS-Protokolleinrichtungen verwenden. Wenn Sie HPEL verwenden, können Sie mit dem Befehlszeilentool LogViewer im Verzeichnis "bin" des Serverprofils auf alle Ihre Protokoll- und Tracedaten zugreifen. Weitere Informationen zur Verwendung von HPEL finden Sie in der Dokumentation zum Einsatz von HPEL für die Fehlerbehebung in Anwendungen.
Die Verwaltungsfunktionen in den Produkten von WebSphere Application Server werden von folgenden Komponenten unterstützt:
  • Anwendungsserverprozess (z. B. server1)
  • Deployment-Manager-Prozess im Produkt WebSphere Application Server Network Deployment

Zur Verwendung der Administrationskonsole muss der Prozess aktiv sein. Das Befehlszeilendienstprogramm wsadmin kann im lokalen Modus ausgeführt werden, in dem Sie die Verwaltungsfunktionen auch dann ausführen können, wenn der Serverprozess nicht aktiv ist.

Serverstatus und Nachrichten in der Konsolansicht sind nicht aktuell

Wenn Sie eine Verbindung zu einem Anwendungsserver herstellen, der eine SOAP-Verbindung über einen längeren Zeitraum hinweg verwendet, treten die folgenden Probleme auf:
  • Der in der Administrationskonsole in der Statusspalte in der Serversicht angezeigte Serverstatus wird nicht aktualisiert.
  • Die in der Administrationskonsole angezeigten Servernachrichten werden nicht aktualisiert.
  • Es ist ein Rückgang der Systemressourcen zu bemerken, wenn viele Ports erstellt werden und im Status TIME_WAIT verbleiben.
Dieses Problem bleibt auch nach einem Neustart des Servers oder nach dem Starten eines weiteren Servers, der den Port der SOAP-Verbindung verwendet, bestehen.

Dieses Problem tritt auf, weil der SOAP-Connector die Bündelung von Verbindungen (Verbindungspooling) nicht unterstützt. Wenn in dem Anwendungsserver viele Operationen ausgeführt werden, die den SOAP-Connector verwenden, öffnet und schließt der Anwendungsserver viele Ports schnell hintereinander. Aufgrund des Charakters des zugrunde liegenden TCP/IP-Protokolls bleiben diese Ports einige Zeit im Status TIME_WAIT, bevor das Betriebssystem sie zurückfordern kann. Die Anzahl der Ports, die WebSphere Application Server öffnet, kann den Grenzwert des Betriebssystems überschreiten. Unter derartigen Bedingungen scheitert das Öffnen weiterer Ports über den SOAP-Connector so lange, bis das Betriebssystem die Ports zurückgefordert hat.

Sie können dieses Problem mit den folgenden Optionen umgehen:
  • Erhöhen Sie den Betriebssystemgrenzwert für die Portanzahl.
  • Führen Sie für Rational Application Developer, das Dienstprogramm "wsadmin" und Java™-Anwendungen, die JMX-Connector (Java Management Extension) verwenden, eine Umstellung auf den RMI-Connector (Remote Method Invocation) durch.
  • Warten Sie, bis nur noch wenige oder gar keine Ports mehr im Status TIME_WAIT sind, bevor Sie neue Operationen über Rational Application Developer oder über die Administrationskonsole ausführen.

Rollenbasierte Berechtigung scheitert

Wenn Sie einen JMX-Aufruf (Java Management Extension) wie getAttribute, setAttribute, invoke usw. in Ihrer Anwendung absetzen, muss der Caller (Aufrufende) eine Verwaltungsrolle mit ausreichenden Berechtigungen haben. Welche Rolle erforderlich ist, richtet sich nach dem MBean-Attribut bzw. der Methode, das bzw. die aufgerufen wird. Die gültigen Rollen sind "Administrator" (Verwaltung), "Configurator" (Konfiguration), "Monitor" (Überwachung) und "Operator" (Bedienung). Wenn dem Caller keine der Verwaltungsrollen zugeordnet ist oder dem Caller zwar eine Rolle zugeordnet ist, aber der Caller nicht die erforderlichen Berechtigungen besitzt, empfängt die Anwendung einen rollenbasierten Berechtigungsfehler. Beispiel:
SECJ0305I: Fehler bei der rollenbasierten Berechtigungsprüfung für securityname server.domain.name:3890/user.id,
accessId user:server.domain.name:3890/uid=user.id,ou=xxxx,dc=yyy,dc=zzz beim Aufrufen der Methode
getNodeName für Ressource Server und Modul Server.
Wenn der Aufrufende der Anwendung keiner der Rollen zugeordnet werden kann, hat die Anwendung die Möglichkeit, sich mit einer der Rollen für den Aufrufenden anzumelden. Beispiel:
	try 
	{
				// LoginContext für die Authentifizierung einer Benutzer-ID und eines Kennworts erstellen.
    javax.security.auth.login.LoginContext
    lc = new javax.security.auth.login.LoginContext("WSLogin",
	  	  new com.ibm.websphere.security.auth.callback.WSCallbackHandlerImpl("adminuser",
    "adminpassword"));

				// Anmeldung durchführen
		lc.login(); 

				// Authentifiziertes Subjekt abrufen.
				javax.security.auth.Subject adminSubject = lc.getSubject();

				// Aktion definieren, die für das authentifizierte Subjekt ausgeführt wird.
				// Sie können diese Aktion an beliebiger Stelle im Code definieren. Die Aktion
	  // wird im folgenden WSSubject.doAs referenziert.
				java.security.PrivilegedAction adminAction = new java.security.PrivilegedAction() 
		{
								public Object run() 
			{
				try 
				{
										// WebSphere-Verwaltungsservice abrufen. 										AdminService adminservice = AdminServiceFactory.getAdminService();      

										// MBean-Instanz des lokalen Servers für WebSphere-Verwaltung abrufen.										ObjectName objectname = adminservice.getLocalServer();                  

										// Knotennamen abrufen. 										String nodeName = (String)adminservice.getAttribute(objectname, "nodeName");

										// Namen des Anwendungsservers abrufen. 										String serverName = (String)adminservice.getAttribute(objectname, "name");
				
										// ID des Anwendungsserverprozesses abrufen. 										String serverPid = (String)adminservice.getAttribute(objectname, "pid");

										// Ergebnis zurückgeben. Für dieses Beispiel nur PID des Servers zurückgeben.
										return serverPid;
				} 
				catch (Exception e) 
				{
					e.printStackTrace();
				}
				return null;
			}
		});

				// Mit dem authentifizierten Objekt eine AdminClient-Ressource abrufen.
     // Dieses Beispiel veranschaulicht, wie ein Verwaltungsclient erstellt und
     // ein Zeichenfolgewert zurückgegeben wird, der außerhalb des
     // doAs-Blocks verwendet wird.
				String myData = (String) 
     com.ibm.websphere.security.auth.WSSubject.doAs(adminSubject, adminAction);

				// "myData" später verwenden...
	} 
	catch (javax.security.auth.login.LoginException e) 
	{
		e.printStackTrace();
	}

Wird ein Server in einer interaktiven wsadmin-Scripting-Sitzung gestartet oder gestoppt, wird eine Ausnahme zurückgegeben, die "read timed out" anzeigt.

Wird ein Server in einer interaktiven wsadmin-Scripting-Sitzung gestartet oder gestoppt, wird eine Ausnahme zurückgegeben, die "read timed out" anzeigt. Beispiel:
WASX7015E: Beim Ausführen des Befehls: "$AdminControl startServer server1 Node1;" ist eine Ausnahme eingetreten.
Informationen zur Ausnahme:  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]Diese Ausnahme tritt auf, weil der Zeitlimitwert zu klein ist. Erhöhen Sie das Zeitlimit, das mit der Eigenschaft "com.ibm.SOAP.requestTimeout" in der Datei soap.client.props im Verzeichnis Profilstammverzeichnis/properties für eine Einzelserveredition bzw. im Verzeichnis Profilstammverzeichnis/properties für eine Network-Deployment-Installation angegeben ist. Der Wert, den Sie auswählen, ist von einer Reihe von Faktoren, z. B. der Größe und der Anzahl der im Server installierten Anwendungen, der Geschwindigkeit der Maschine und der Verwendungsebene der Maschine abhängig. Der Standardwert der Eigenschaft "com.ibm.SOAP.requestTimeout" sind 180 Sekunden.

[IBM i]Diese Ausnahme tritt auf, weil der Zeitlimitwert zu klein ist. Erhöhen Sie das Zeitlimit, das mit der Eigenschaft "com.ibm.SOAP.requestTimeout" in der Datei soap.client.props im Verzeichnis Profilstammverzeichnis/properties für eine Einzelserveredition bzw. im Verzeichnis Profilstammverzeichnis/properties für eine Network-Deployment-Installation angegeben ist. Der Wert, den Sie auswählen, ist von einer Reihe von Faktoren, z. B. der Größe und der Anzahl der im Server installierten Anwendungen, der Geschwindigkeit der Maschine und der Verwendungsebene der Maschine abhängig. Der Standardwert der Eigenschaft "com.ibm.SOAP.requestTimeout" sind 180 Sekunden.

Probleme beim Starten oder beim Verwenden der Administrationskonsole oder des Dienstprogramms wsadmin

Sollten Sie beim Starten oder Verwenden der Administrationskonsole oder des Tools wsadmin Probleme haben, vergewissern Sie sich, dass der Serverprozess gestartet ist und stabil läuft.
  • Suchen Sie hinsichtlich des Anwendungsserverprozesses nach den folgenden Dateien:
    • [AIX Solaris HP-UX Linux Windows][z/OS]Suchen Sie in der Datei Profilstammverzeichnis/logs/server_name/startServer.log nach der Nachricht, die anzeigt, dass der Server gestartet wurde: ADMU3000I: Der Server server1 ist für e-business bereit. Die Prozess-ID ist nnnn.
    • [IBM i]Suchen Sie in der Datei Profilstammverzeichnis/logs/server_name/startServer.log nach der Nachricht, die anzeigt, dass der Server gestartet wurde: ADMU3000I: Der Server server1 ist für e-business bereit. Die Prozess-ID ist nnnn.
    • [AIX Solaris HP-UX Linux Windows]Profilstammverzeichnis/logs/server_name/SystemOut.log
    • [IBM i]Profilstammverzeichnis/logs/server_name/SystemOut.log
    • [z/OS]Suchen Sie in den Serverprotokolldateien nach der Nachricht, die anzeigt, dass der Server gestartet wurde: WSVR0001I: Server "server" ist für e-business bereit.
  • Suchen Sie im Produkt WebSphere Application Server Network Deployment nach den folgenden Dateien:
    • [AIX Solaris HP-UX Linux Windows][z/OS]Suchen Sie in der Datei Profilstammverzeichnis/logs/dmgr/startServer.log nach der Nachricht, die anzeigt, dass der Server gestartet wurde: ADMU3000I: Der Server dmgr ist für e-business bereit. Die Prozess-ID ist nnnn.
    • [IBM i]Suchen Sie in der Datei Profilstammverzeichnis/logs/dmgr/startServer.log nach der Nachricht, die anzeigt, dass der Server gestartet wurde: ADMU3000I: Der Server dmgr ist für e-business bereit. Die Prozess-ID ist nnnn.
    • [AIX Solaris HP-UX Linux Windows]Suchen Sie in der Datei Profilstammverzeichnis/logs/dmgr/SystemOut.log nach der Nachricht, die anzeigt, dass der Server gestartet wurde: ADMU3000I: Der Server dmgr ist für e-business bereit. Die Prozess-ID ist nnnn.
    • [IBM i]Suchen Sie in der Datei Profilstammverzeichnis/logs/dmgr/SystemOut.log nach der Nachricht, die anzeigt, dass der Server gestartet wurde: ADMU3000I: Der Server dmgr ist für e-business bereit. Die Prozess-ID ist nnnn.
    • [z/OS]Suchen Sie in den Serverprotokolldateien nach der folgenden Nachrichten, die anzeigt, dass der Server gestartet wurde: WSVR0001I: Server dmgr ist für e-business bereit.
  • [z/OS]Für das z/OS-Produkt müssen Sie die Jobausgabe prüfen.
  • Prüfen Sie alle Fehlernachrichten in diesen Dateien in der Nachrichtenreferenztabelle. Wählen Sie im InfoCenter die Ansicht Referenz aus, und klicken Sie anschließend auf Nachrichten. Wird beim Versuch, wsadmin zu starten, eine Nachricht wie WASX7213I: Dieser Scripting-Client ist mit keinem Serverprozess verbunden. angezeigt, ist das ein Hinweis darauf, dass der Serverprozess nicht aktiv ist, der Zugriff auf die Hostmaschine, auf der der Server ausgeführt wird, nicht möglich bzw. der von wsadmin verwendet Port oder Servername ungültig ist.
  • Vergewissern Sie sich, dass Sie die richtige Portnummer verwenden, um mit der Administrationskonsole oder dem wsadmin-Server zu kommunizieren:
    • [AIX Solaris HP-UX Linux Windows][IBM i]Überprüfen Sie die Datei SystemOut.log.

      [z/OS]Überprüfen Sie die Datei joblogs.

      • Die Zeile ADMC0013I: Der SOAP-Connector ist an Port nnnn verfügbar weist auf den Port hin, den der Server für die Überwachung von wsadmin-Funktionen verwendet.
      • [AIX Solaris HP-UX Linux Windows][z/OS]Die Eigenschaft "com.ibm.ws.scripting.port" in der Datei Profilstammverzeichnis/properties/wsadmin.properties steuert den Port, den das Dienstprogramm "wsadmin" zum Senden von Anforderungen an den Server verwendet.
      • [IBM i]Die Eigenschaft "com.ibm.ws.scripting.port" in der Datei Profilstammverzeichnis/properties/wsadmin.properties steuert den Port, den das Dienstprogramm "wsadmin" zum Senden von Anforderungen an den Server verwendet.
    • [AIX Solaris HP-UX Linux Windows][z/OS]Falls dieser Port von dem in der Datei SystemOut.log angezeigten Wert abweicht, ändern Sie die Portnummer in der Datei wsadmin.properties, oder geben Sie die richtige Portnummer an, wenn Sie das Dienstprogramm "wsadmin" mit der Eigenschaft "-port Portnummer" über die Befehlszeile starten.

      Die Eigenschaft "com.ibm.ws.scripting.port" in der Datei Profilstammverzeichnis/properties/wsadmin.properties steuert den Port, den das Dienstprogramm "wsadmin" zum Senden von Anforderungen an den Server verwendet.

    • [IBM i]Falls dieser Port von dem in der Datei SystemOut.log angezeigtem Wert abweicht, ändern Sie die Portnummer in der Datei wsadmin.properties, oder geben Sie die richtige Portnummer an, wenn Sie das Dienstprogramm "wsadmin" mit der Eigenschaft "-port Portnummer" über die Befehlszeile starten.

      Die Eigenschaft "com.ibm.ws.scripting.port" in der Datei Profilstammverzeichnis/properties/wsadmin.properties steuert den Port, den das Dienstprogramm "wsadmin" zum Senden von Anforderungen an den Server verwendet.

    • [IBM i]Falls dieser Port von dem in den Serverprotokolldateien angezeigtem Wert abweicht, ändern Sie die Portnummer in der Datei wsadmin.properties, oder geben Sie die richtige Portnummer an, wenn Sie das Dienstprogramm "wsadmin" mit der Eigenschaft "-port Portnummer" über die Befehlszeile starten.

      Die Nachricht SRVE0171I: Der Transport http ist empfangsbereit an Port nnnn (Standardwert: 9060) zeigt den Port an, den der Server verwendet, um Anforderungen der Administrationskonsole zu empfangen.

    • Weicht der Portwert von dem in der Webadresse für die Administrationskonsole angezeigten Wert ab, müssen Sie für die Webadresse im Browser den richtigen Wert angeben. Der Standardwert ist http://localhost:9060/ibm/console.
  • Verwenden Sie den Befehl telnet, um sicherzustellen, dass der Host, auf dem der Anwendungsserver oder Deployment Manager ausgeführt wird, von dem System, auf dem der Browser oder das Programm wsadmin ausgeführt wird, erreichbar ist. Wenn die an den Host abgesetzten Pingsignale erfolgreich sind, liegen keine Firewall- oder Konnektivitätsprobleme vor.
  • Wenn der Host, auf dem der Anwendungsserver oder Deployment Manager ausgeführt wird, nicht die Maschine ist, auf der der Client-Browser oder der Befehl wsadmin ausgeführt wird, vergewissern Sie sich, dass der Hostname richtig angegeben wurde. Überprüfen Sie Folgendes:
    • den Hostnamen in der im Browser für die Konsole angegebene Webadresse
    • die Option -host "Hostname" des Befehls wsadmin, die verwendet wird, um das Dienstprogramm wsadmin an den richtigen Server zu verweisen
  • [AIX Solaris HP-UX Linux Windows][IBM i] Die technische Unterstützung von WebSphere Application Server fordert Sie für eine detaillierte Fehlerbestimmung möglicherweise dazu auf, einen Trace für die Administrationskomponente durchzuführen. Die Tracespezifikation für diese Komponente ist com.ibm.websphere.management.*=all=enabled:com.ibm.ws.management.*=all=enabled"

Methode "AdminConfig.parents" kann nicht zum Abrufen der gültigen übergeordneten Typen einiger Konfigurationstypen verwendet werden

Wenn Sie die Methode AdminConfig.parents verwenden, um die zulässigen übergeordneten Typen für einen bestimmten Konfigurationstyp, z. B. "JavaVirtualMachine", abzurufen, kann stattdessen anstelle des gewünschten Werts eine Informationsnachricht zurückgegeben werden.
wsadmin>print AdminConfig.parents( "JavaVirtualMachine")
Die folgende Informationsnachricht wird angezeigt:
WASX7351I: Mit dem Befehl "parents" können keine übergeordneten Objekte des Typs "JavaVirtualMachine" gesucht werden.
Die folgende Funktion veranschaulicht eine mögliche Umgehung der Methode AdminConfig.parents(), die das zuvor beschriebene Problem behandelt:
#---------------------------------------------------------------------
# Name: parentTypes()
# Rolle: Sucht nach Konfigurationstypen, die möglicherweise Objekte des angegebenen Typs enthalten,
#        falls beim Aufrufen von "AdminConfig.parents( Type )" folgendes Ergebnis angezeigt wird:
#       WASX7351I: Mit dem Befehl "parents" können keine übergeordneten Objekte des Typs .... gesucht werden.
# Anmerkung: Im Gegensatz zum Befehl "AdminConfig.list()" löst diese Routine keine InvalidConfigDataTypeException
#            aufgrund eines unbekannten Datentyps aus.
#---------------------------------------------------------------------
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]Sollten Sie den Fehler auf die beschriebenen Arten nicht beheben können, schlagen Sie im Abschnitt Installation ist abgeschlossen, aber die Administrationskonsole kann nicht gestartet werden nach, ob der Fehler dort beschrieben wird. Stellen Sie fest, ob der Fehler erkannt und dokumentiert wurde. Verwenden Sie dazu die Links im Abschnitt Fehlerdiagnose und -behebung: Lernmaterial. Wenn der angezeigte Fehler nicht in ähnlicher Form dokumentiert ist oder wenn Sie den Fehler anhand der bereitgestellten Informationen nicht beheben können, wenden Sie sich an den IBM Support, um Unterstützung zu erhalten.

[IBM i]Sollten Sie den Fehler auf die beschriebenen Arten nicht beheben können, schlagen Sie im Abschnitt Installation ist abgeschlossen, aber die Administrationskonsole kann nicht gestartet werden nach, ob der Fehler dort beschrieben wird. Stellen Sie fest, ob der Fehler bekannt ist und dokumentiert wurde. Verwenden Sie dazu die Links im Artikel Fehlerdiagnose und -behebung: Lernmaterial.

Aktuelle Informationen des IBM Support zu bekannten Fehlern und zur Fehlerbehebung finden Sie unter den folgenden Themen auf der Webseite des IBM Support:
Der IBM Support stellt Dokumente bereit, mit denen Sie Zeit bei der Erfassung der für die Lösung des Problems erforderlichen Informationen einsparen können. Lesen Sie vor dem Öffnen eines PMR die folgenden Artikel auf der Webseite des IBM Support:

Symbol, das den Typ des Artikels anzeigt. Referenzartikel



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