ODCF8005E – Warstwa P2P nie mogła nawiązać powiązania z portem UDP w produkcie WebSphere 8.5

Rozwiązywanie problemu z błędem inicjalizacji SON Overlay w IBM WebSphere

Podczas niedawnej konfiguracji IBM WebSphere w wersji 8.5 natknąłem się na pewien kłopotliwy błąd, który chciałbym z Wami omówić.

[7/1/13 0:21:33:113 SGT] 00000001 P2PBase E   ODCF8005E: W trakcie inicjalizacji nakładki SON wystąpił nieoczekiwany wyjątek; wyjątek to java.io.IOException:
Warstwa P2P nie mogła powiązać się z portem UDP.
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)

Czy spotkaliście się z podobną sytuacją?

Ten problem zazwyczaj wynika z konfliktu lub braku konfiguracji parametru OVERLAY_TCP_LISTENER_ADDRESS.

Aby go rozwiązać, należy zweryfikować i upewnić się, że wspomniany parametr jest poprawnie ustawiony i nie powoduje konfliktów.

  • Uruchom menedżera wdrożeń (DMGR).
  • Zatrzymaj wszelkie działające maszyny JVM na problematycznym węźle.
  • Zatrzymaj agenta węzła.
  • Zaloguj się do konsoli administracyjnej i przejdź do:

Administracja systemu >> Agenty węzłów >> agent_węzła >> Porty

Czy widzisz w tym miejscu pozycje OVERLAY_TCP_LISTENER_ADDRESS oraz OVERLAY_UDP_LISTENER_ADDRESS?

Jeśli je widzisz, zanotuj numery portów, z których korzystają.

Jeśli ich nie ma, stwórz je, wykonując poniższe kroki:

Dla protokołu UDP:

  • Kliknij „Nowy”.
  • Zaznacz opcję „Port zdefiniowany przez użytkownika”.
  • Wpisz nazwę portu: OVERLAY_UDP_LISTENER_ADDRESS.
  • Wpisz nazwę hosta: localhost.
  • Wpisz numer portu: 21001 (lub jakikolwiek nieużywany numer portu na serwerze).

Dla protokołu TCP:

  • Kliknij „Nowy”.
  • Zaznacz opcję „Port zdefiniowany przez użytkownika”.
  • Wpisz nazwę portu: OVERLAY_TCP_LISTENER_ADDRESS.
  • Wpisz nazwę hosta: localhost.
  • Wpisz numer portu: 21002 (lub jakikolwiek inny nieużywany numer portu na serwerze).

Następnie należy sprawdzić, czy porty agenta węzła nie kolidują z ustawieniami problematycznej maszyny JVM.

Przejdź do: Serwery >> Typy serwerów >> Serwery aplikacji Websphere >> serwer01 >> Porty

Czy w tym miejscu również widoczne są porty OVERLAY_TCP_LISTENER_ADDRESS i OVERLAY_UDP_LISTENER_ADDRESS?

Jeśli tak, sprawdź, czy nie ma konfliktu z portami agenta węzła. Jeśli ich nie ma, dodaj je, postępując analogicznie do wcześniejszych instrukcji.

Dla UDP:

  • Kliknij „Nowy”.
  • Zaznacz opcję „Port zdefiniowany przez użytkownika”.
  • Wpisz nazwę portu: OVERLAY_UDP_LISTENER_ADDRESS.
  • Wpisz nazwę hosta: localhost.
  • Wpisz numer portu: 21003 (lub inny nieużywany numer portu).

Dla TCP:

  • Kliknij „Nowy”.
  • Zaznacz opcję „Port zdefiniowany przez użytkownika”.
  • Wpisz nazwę portu: OVERLAY_TCP_LISTENER_ADDRESS.
  • Wpisz nazwę hosta: localhost.
  • Wpisz numer portu: 21004 (lub jakikolwiek wolny numer portu na serwerze).

Zapisz zmiany w konfiguracji i przeprowadź synchronizację węzła.

./syncNode.sh localhost <numer portu SOAP>

Uruchom agenta węzła oraz maszynę JVM.

Czy to rozwiązanie okazało się pomocne?

Czy podobał Ci się ten artykuł? Zachęcam do podzielenia się nim z innymi!


newsblog.pl