Behebung eines Fehlers bei der IBM WebSphere 8.5 Installation
Vor kurzem stieß ich bei der Einrichtung von IBM WebSphere 8.5 auf einen unerwarteten Fehler, der mir einige Kopfschmerzen bereitete. Die Fehlermeldung, die ich im Log fand, lautete wie folgt:
[7/1/13 0:21:33:113 SGT] 00000001 P2PBase E ODCF8005E: Bei der Initialisierung des SON-Overlays ist eine unerwartete Ausnahme aufgetreten; die Ausnahme ist java.io.IOException: Die P2P-Schicht konnte nicht an einen UDP-Port gebunden werden. at com.ibm.son.mesh.RawUDPImpl.<init>(RawUDPImpl.java:89) at com.ibm.son.mesh.UDPFactory.getUDP(UDPFactory.java:31) at com.ibm.son.mesh.Peer.<init>(Peer.java:468) at com.ibm.son.mesh.Peer.<init>(Peer.java:411) at com.ibm.ws.p2p.P2POverlayHelper.getPeer(P2POverlayHelper.java:147) at com.ibm.ws.p2p.P2PBase.getPeer(P2PBase.java:31) at com.ibm.ws.bbson.BBFactoryImpl.<init>(BBFactoryImpl.java:632) at java.lang.J9VMInternals.newInstanceImpl(Native Method) at java.lang.Class.newInstance(Class.java:1564)
Tritt dieser Fehler bei Ihnen auch auf?
Die Ursache dieses Problems liegt in der Regel in einem Konflikt oder der fehlenden Definition der `OVERLAY_TCP_LISTENER_ADDRESS`.
Um das Problem zu lösen, sollten Sie sicherstellen, dass diese Adresse korrekt konfiguriert ist und keine Konflikte auftreten.
Hier ist eine detaillierte Anleitung:
- Starten Sie den Deployment Manager (DMGR).
- Falls eine JVM auf dem betroffenen Knoten läuft, stoppen Sie diese.
- Stoppen Sie den Node Agent.
- Melden Sie sich in der Administrationskonsole an und navigieren Sie zu folgendem Bereich:
Systemverwaltung >> Knotenagenten >> Knotenagent >> Ports
Finden Sie hier die Einträge für `OVERLAY_TCP_LISTENER_ADDRESS` und `OVERLAY_UDP_LISTENER_ADDRESS`?
Wenn ja, notieren Sie sich die Portnummern.
Sollten Sie diese Einträge nicht finden, können Sie sie mit den folgenden Schritten hinzufügen:
Für UDP:
- Klicken Sie auf „Neu“.
- Wählen Sie „Benutzerdefinierter Port“.
- Geben Sie als Portnamen `OVERLAY_UDP_LISTENER_ADDRESS` ein.
- Als Hostname verwenden Sie `localhost`.
- Vergeben Sie einen freien Port, z.B. `21001`.
Für TCP:
- Klicken Sie auf „Neu“.
- Wählen Sie „Benutzerdefinierter Port“.
- Geben Sie als Portnamen `OVERLAY_TCP_LISTENER_ADDRESS` ein.
- Als Hostname verwenden Sie `localhost`.
- Vergeben Sie einen freien Port, z.B. `21002`.
Überprüfen Sie nun die Portkonfiguration der betroffenen JVM im Verhältnis zum Node Agent:
Gehen Sie zu Server >> Servertypen >> WebSphere-Anwendungsserver >> server01 >> Ports
Sind hier Einträge für `OVERLAY_TCP_LISTENER_ADDRESS` und `OVERLAY_UDP_LISTENER_ADDRESS` vorhanden?
Wenn ja, stellen Sie sicher, dass diese Ports nicht mit den Ports des Node Agents in Konflikt stehen. Falls die Einträge fehlen, können Sie sie wie folgt hinzufügen:
UDP:
- Klicken Sie auf „Neu“.
- Wählen Sie „Benutzerdefinierter Port“.
- Als Portname tragen Sie `OVERLAY_UDP_LISTENER_ADDRESS` ein.
- Verwenden Sie `localhost` als Hostname.
- Wählen Sie einen verfügbaren Port, z.B. `21003`.
TCP:
- Klicken Sie auf „Neu“.
- Wählen Sie „Benutzerdefinierter Port“.
- Als Portname tragen Sie `OVERLAY_TCP_LISTENER_ADDRESS` ein.
- Verwenden Sie `localhost` als Hostname.
- Wählen Sie einen freien Port, z.B. `21004`.
Speichern Sie die Konfiguration und synchronisieren Sie den Knoten:
./syncNode.sh localhost <soap port number>
Starten Sie nun den Node Agent und die JVM.
Hat diese Vorgehensweise Ihr Problem behoben?
Ich hoffe, dieser Artikel war hilfreich. Wenn Sie ihn nützlich fanden, teilen Sie ihn doch mit anderen!