Hello again. I'm trying to get load balancing working on some cluster access nodes we have, and am hitting a wall right now.<br><br>I've got 3 systems; access01, access02, and access03. <br><br>access01 will be my load balancer, so its node.conf has:<br>
<br>LOAD_BALANCE_SERVERS="access01 access02 access03"<br><br># The following load_balance_algorithms are available at the moment:<br>#<br># "load", "round-robin", "random"<br>#<br>
# For "load" you need a script called nxcheckload in PATH_BIN.<br>
#<br># A sample script, which you can change to your needs it shipped with<br># FreeNX under the name nxcheckload.sample.<br><br>LOAD_BALANCE_ALGORITHM="random"<br><br>access02 and 03 have:<br><br>ENABLE_SERVER_FORWARD="1"<br>
SERVER_FORWARD_HOST="access01"<br>SERVER_FORWARD_PORT=22<br>SERVER_FORWARD_KEY="/usr/NX/share/client.id_dsa.key"<br><br><br>All 3 systems have the key in place. <br><br>Now, if I connect to access01, it correctly tries to load balance randomly. When it wants to balance to itself, my connection works just fine. However, if it tries to load balance to either of the other 2, it timesout. I see nothing on the other 2's nxserver.log, but in secure.log I can see my users getting authenticated. On the load balancer's nxserver.log, I get:<br>
<br>HELLO NXSERVER - Version 3.2.0-73 OS (GPL, using backend: 3.3.0)<br>NX> 105 hello NXCLIENT - Version 3.2.0<br>NX> 134 Accepted protocol: 3.2.0<br>NX> 105 SET SHELL_MODE SHELL<br>NX> 105 SET AUTH_MODE PASSWORD<br>
NX> 105 login<br>NX> 101 User: nichols2<br>NX> 102 Password: <br>Info: Auth method: ssh <br>NX> 103 Welcome to: access01 user: nichols2<br>NX> 105 listsession --user="nichols2" --status="suspended,running" --geometry="1280x1024x24+render" --type="unix-gnome"<br>
NX> 127 Sessions list of user 'nichols2' for reconnect:<br><br>Display Type Session ID Options Depth Screen Status Session Name<br>------- ---------------- -------------------------------- -------- ----- -------------- ----------- ------------------------------<br>
<br><br>NX> 148 Server capacity: not reached for user: nichols2<br>NX> 105 startsession --link="adsl" --backingstore="1" --encryption="1" --cache="16M" --images="64M" --shmem="1" --shpix="1" --strict="0" --composite="1" --media="0" --session="access01" --type="unix-gnome" --geometry="1280x936" --client="linux" --keyboard="pc102/us" --screeninfo="1280x936x24+render" <br>
<br>Info: Load-Balancing (if possible) to access03 ...<br>&link=adsl&backingstore=1&encryption=1&cache=16M&images=64M&shmem=1&shpix=1&strict=0&composite=1&media=0&session=access01&type=unix-gnome&geometry=1280x936&client=linux&keyboard=pc102/us&screeninfo=1280x936x24+render&clientproto=3.2.0&user=nichols2&userip=140.247.105.174&uniqueid=399FA62FA862AC18B9D2FAE9A4813840&display=1001&host=access03 <br>
nichols2@access03's password: <br>NX> 1000 NXNODE - Version 3.2.0-73 OS (GPL, using backend: 3.3.0)<br>server_nxnode_echo: NX> 1000 NXNODE - Version 3.2.0-73 OS (GPL, using backend: 3.3.0)<br>NX> 700 Session id: iliadaccess03-1001-399FA62FA862AC18B9D2FAE9A4813840<br>
NX> 705 Session display: 1001<br>NX> 703 Session type: unix-gnome<br>NX> 701 Proxy cookie: ba8df78ec91e86f436f5bd17382d3155<br>NX> 702 Proxy IP: 10.242.67.13<br>NX> 706 Agent cookie: ba8df78ec91e86f436f5bd17382d3155<br>
NX> 704 Session cache: unix-gnome<br>NX> 707 SSL tunneling: 1<br>server_nxnode_echo: NX> 700 Session id: access03-1001-399FA62FA862AC18B9D2FAE9A4813840<br>server_nxnode_echo: NX> 705 Session display: 1001<br>
server_nxnode_echo: NX> 703 Session type: unix-gnome<br>
server_nxnode_echo: NX> 701 Proxy cookie: ba8df78ec91e86f436f5bd17382d3155<br>server_nxnode_echo: NX> 702 Proxy IP: 10.242.67.13<br>server_nxnode_echo: NX> 706 Agent cookie: ba8df78ec91e86f436f5bd17382d3155<br>server_nxnode_echo: NX> 704 Session cache: unix-gnome<br>
server_nxnode_echo: NX> 707 SSL tunneling: 1<br>NX> 1009 Session status: starting<br>server_nxnode_echo: NX> 1009 Session status: starting<br>NX> 710 Session status: running<br>NX> 1002 Commit<br>NX> 1006 Session status: running<br>
server_nxnode_echo: NX> 710 Session status: running<br>server_nxnode_echo: NX> 1002 Commit<br>session_status 399FA62FA862AC18B9D2FAE9A4813840 Running<br>NX> 105 server_nxnode_echo: NX> 1006 Session status: running<br>
bye<br>Bye<br>NX> 999 Bye<br>NX> 1004 Error: NX Agent exited with exit status 1. To troubleshoot set SESSION_LOG_CLEAN=0 in node.conf and investigate "/n/home/nichols2/.nx/F-C-access03-1001-399FA62FA862AC18B9D2FAE9A4813840/session". You might also want to try: ssh -X myserver; /usr/NX/bin/nxnode --agent to test the basic functionality. Session log follows:<br>
server_nxnode_echo: NX> 596 Session startup failed.<br><br>I check the session file, and it has:<br><br><br>NXAGENT - Version 3.3.0<br><br>Copyright (C) 2001, 2007 NoMachine.<br>See <a href="http://www.nomachine.com/" target="_blank">http://www.nomachine.com/</a> for more information.<br>
<br>Info: Agent running with pid '30440'.<br>Session: Starting session at 'Tue Feb 3 11:44:28 2009'.<br>Info: Proxy running in server mode with pid '30440'.<br>Info: Waiting for connection from '10.242.67.13' on port '5001'.<br>
Info: Aborting the procedure due to signal '1'.<br>Error: Aborting session with 'Unable to open display 'nx/nx,options=/n/home/nichols2/.nx/C-iliadaccess03-1001-399FA62FA862AC18B9D2FAE9A4813840/options:1001''.<br>
Session: Aborting session at 'Tue Feb 3 11:45:29 2009'.<br>Session: Session aborted at 'Tue Feb 3 11:45:29 2009'.<br>XIO: fatal IO error 104 (Connection reset by peer) on X server ":1001.0"<br>
after 0 requests (0 known processed) with 0 events remaining.<br><br>(gnome-session:30860): Gtk-WARNING **: cannot open display: <br><br><br>I can't figure out what the problem might be. All systems are identical (hardware, software, NX versions, etc), and all of them work if i connect directly (after load balancing/forwarding has been disabled, of course). <br>
<br>Also (and this is secondary), as I understood the Forwarding part, I should be able to connect to one of these (02 and 03) systems, and they will forward me back to 01, where i get load balanced, and then sent along back to one of them for a "real" session. Is this right, or an I mistaken?<br>
<br>Any ideas would be a big help! <br><br>Thanks!<br><br><br><br><br><br clear="all">Matthew Nicholson<br><a href="mailto:nicholson@eps.harvard.edu" target="_blank">nicholson@eps.harvard.edu</a><br>Harvard University<br>
FAS IT Research Computing<br>Dept. Of Earth and Planetary Science<br>