Saturday, 17 March 2012

WebSphere Portal -> DB2 UDB - It's The Firewall, Stupid :-)

I saw this error: -



and: -

Attempting to connect to database: jdbc:db2://db2.uk.ibm.com:60000/release:returnAlias=0; using com.ibm.db2.jcc.DB2Driver, db2inst1, PASSWORD_REMOVED
Level.SEVERE, Error Connecting db
com.ibm.db2.jcc.am.ro: [jcc][t4][2043][11550][4.8.87] Exception java.net.NoRouteToHostException: Error opening socket to server db2.uk.ibm.com/192.168.1.73 on port 60,000 with message: No route to host. ERRORCODE=-4499, SQLSTATE=08001
99
RETURN_CODE_FOR_THIS_TASK: 99

in: -

/opt/IBM/WebSphere/wp_profile/ConfigEngine/log/configwizard.log

whilst trying to hook my newly minted WebSphere Portal 7 instance up to another VM ( VirtualBox on CentOS ) running DB2 UDB.

Having already checked that DB2 was listening on port 60,000: -

$ tail /etc/services

blp5            48129/udp               # Bloomberg locator
com-bardac-dw   48556/tcp               # com-bardac-dw
com-bardac-dw   48556/udp               # com-bardac-dw
iqobject        48619/tcp               # iqobject
iqobject        48619/udp               # iqobject
DB2_db2inst1    60000/tcp
DB2_db2inst1_1    60001/tcp
DB2_db2inst1_2    60002/tcp
DB2_db2inst1_END    60003/tcp
db2c_db2inst1    50001/tcp


$ netstat -aon | grep LISTEN

tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      off (0.00/0/0)
tcp        0      0 0.0.0.0:6000                0.0.0.0:*                   LISTEN      off (0.00/0/0)
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      off (0.00/0/0)
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      off (0.00/0/0)
tcp        0      0 0.0.0.0:48248               0.0.0.0:*                   LISTEN      off (0.00/0/0)
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      off (0.00/0/0)
tcp        0      0 0.0.0.0:60000               0.0.0.0:*                   LISTEN      off (0.00/0/0)
tcp        0      0 :::111                      :::*                        LISTEN      off (0.00/0/0)
tcp        0      0 :::6000                     :::*                        LISTEN      off (0.00/0/0)


I knew that DB2 was up and running and listening.

I conducted another basic test with Telnet: -

$ telnet db2.uk.ibm.com 60000

Trying 192.168.1.73...
telnet: connect to address 192.168.1.73: No route to host

At this point, I thought ..... "Ah ha, what about the firewall?"

I went to the DB2 box, and ran the firewall configuration programme: -

$ /usr/bin/python /usr/bin/system-config-firewall

and, lo and behold, we have: -



Now this is a demo environment, so the firewall is superfluous to my requirements.

I disabled it ... and now my TELNET test works: -

$ telnet db2.uk.ibm.com 60000

Trying 192.168.1.73...
Connected to db2.uk.ibm.com.
Escape character is '^]'.
^]quit

telnet> quit
Connection closed.

Job done, case closed, back to work :-)

No comments:

Note to self - use kubectl to query images in a pod or deployment

In both cases, we use JSON ... For a deployment, we can do this: - kubectl get deployment foobar --namespace snafu --output jsonpath="{...