[FreeNX-kNX] FreeNX and LVS (Linux virtual Server - cluster)
Ben Voigt
bvoigt at kas.com
Tue Jul 12 05:19:51 UTC 2005
I think this can be easily accomplished as follows:
Use one nxserver, run sessions on the nxserver. If the nxserver fails
existing sessions will be lost of course, but you can redirect incoming
connections to a new server.
Inside the nx session, distribute applications (including the window
manager) over LVS. Each application will establish a X TCP/IP connection to
the nxserver, which will compress the data and send it to the thinclient.
This TCP/IP connection lasts as long as the application is running -- the nx
over ssh connection drops during suspend, but all X clients are still
connected to the X endpoint (nxagent I think this is). I assume the LVS
servers are co-located with a very fast connection (gigabit ethernet
perhaps), but if this is not the case, nxclient could be run inside the nx
session to connect to a random LVS server.
It's a matter of setting the windowmanager to something like "ssh -X
lvs-server /usr/bin/startkde"
You'd have something like this:
client A -> server 1 unique IP via NX
A's DISPLAY is set and windowmanager is started on LVS shared IP *random
server*... LVS picks server 3
A can spawn application locally (on same server as windowmanager) or via
rexec/rsh/ssh to LVS shared IP.
client B -> server 1 unique IP via NX
B's DISPLAY is set and windowmanager is started on LVS shared IP *random
server*... LVS picks server 2
B can spawn application locally (on same server as windowmanager) or via
rexec/rsh/ssh to LVS shared IP.
client C -> server 1 unique IP via NX
C's DISPLAY is set and windowmanager is started on LVS shared IP *random
server*... LVS picks server 3
C can spawn application locally (on same server as windowmanager) or via
rexec/rsh/ssh to LVS shared IP.
client D -> server 1 unique IP via NX
D's DISPLAY is set and windowmanager is started on LVS shared IP *random
server*... LVS picks server 1
D can spawn application locally (on same server as windowmanager) or via
rexec/rsh/ssh to LVS shared IP.
All nxagent processes run on server 1 unless it fails, but window managers
and applications are distributed via LVS.
When B resumes, B connects back to server 1, finding the suspended nx
session. Since nxagent is still connected to KDE (or Gnome) running on
server 2, B sees the existing apps still running on server 2.
****************************
Ben Voigt
University of Pennsylvania
Electrical Engineering PhD Candidate
voigt at seas.upenn.edu <mailto:voigt at seas.upenn.edu>
BVoigt at kas.com <mailto:BVoigt at kas.com>
Support a Constitutional Amendment to protect the Pledge of Allegiance and
National Motto.
Click here for more information. <http://www.wepledge.com/>
****************************
> -----Original Message-----
> From: Daniel Schwager [mailto:Daniel.Schwager at dtnet.de]
> Sent: Monday, July 11, 2005 7:11 AM
> To: Daniel Schwager; freenx-knx at kde.org
> Cc: danny at dtnet.de
> Subject: Re: [FreeNX-kNX] FreeNX and LVS (Linux virtual Server -
> cluster)
>
>
> Hi Fabian,
>
> sorry for the intransparent email. So again:
>
> - Requirements
> - 70 User should work with KDE
> - ThinClients should be use
> - nx-technologie should be use
> - the clients should suspend/resume nx-session
> (permantent session)
> - It should be able to play KDE-sound on the thinclient
> - It should be able to transfer files between
> thinclient (laptop)
> and
> die KDE-Session (Samba ?)
> - the system should not have a SPOF (single point of failture)
>
> ** Parts of the concept:
>
> Please have a look to http://www.dtnet.de/48747632/nx-kde-cluster.jpg
> (picture)
>
> - 3 Applicationservers for the 70 users
> - acting as a NFSv4-client for importing data home/data from
> an NFSv4 Fileserver
> - all 3 applicationservers are identical (cloned),
> that means they
> will have all the same programs installed
>
> - Cluster
> - the user does not know, on with app-srv he works
> - we do not use openSSI nor beowulf for clustering
> - we want to use LVS (linuxvirtualserver.org) for clustering
> - for the Clients, an LVS-Cluster has _one_ public IP
> (the LVS routes internaly to the "best" app-srv)
> - establised TCP sessions (like ssh,
> nxproxy?, nxshell?,
> nxtunnel?)
> will always route to the same App-Srv
> - there's a feature for redundance/failover
> (http://www.ultramonkey.org/3/topologies/)
> - Its scalable to x backendservers
>
> - FreeNX
> - we want to use the following features
> - use thinclients (http://pxes.sf.net/) and nomachine
> nxclient
> - sound should redirect to the thinclient
> - local ("thinclient", e.g. notbook)
> filesystem sould be
> mounted
> to the backend
> - persistent sessions (reconnect to a sessions after
> suspending them)
>
> - Architecture (concept / idea)
> - the nxserver has to be outside the cluster because of
> persistent sessions-handling
> - if the clients suspend the session, the
> nxserver has to
> hold/keep the TCP session to the AppSrv
> (via LVS-Server).
> It
> the nxserver discontinue the session to the
> AppSrv, a
> later
> reconnect will be routed via LVS to another
> AppSrv ->
> session
> broken.
> - the nxserver creates a tunnsels betwwen nxserver and
> applicationsever
> - the tunnel should be created via nxshell/nxtunnel
> - the tunnel have to use a TCP-session (this
> is because of
> the
> Loadbalancer LVS should redirect the tunnel
> always to the
> same AppSrv ;-)
> - the tunnel should redirect display/multimedia
> - the tunnel should redirect samba (this ist
> not important,
> because i can
> mount the samba on the Nomachineserver in a
> NFS-Share.
> This means, the
> Applicationserver (nfs-client) has access
> to the "share")
>
> Problems (no ideas ;-)
> - does the sound redirect will work, if we use
> nxshell/nxtunnel for
> connection from nxserver to AppSrv ?
> - does the sound will be forward to the
> thinclient ? Or do
> i have to instance a new artd at the
> nxserver ? or ...
> - could i replace the nxshell/nxtunnel in the
> architekture with
> nxservers instances
> at the 3 app-servers ? If so, does the first
> nx-server handels the
> permanent session ?
> - does the nxshell/nxtunnel use a TCP-session ?
>
> Does somebody has other ideas for the concept ? Does my
> concept will work
> for the
> requirements ? (sound, permanent sessions, ...)
>
> regards
>
> Danny
>
>
>
>
> _______________________________________________
> FreeNX-kNX mailing list
> FreeNX-kNX at kde.org
> https://mail.kde.org/mailman/listinfo/freenx-knx
> --
> No virus found in this incoming message.
> Checked by AVG Anti-Virus.
> Version: 7.0.323 / Virus Database: 267.8.11/45 - Release
> Date: 7/9/2005
>
More information about the FreeNX-kNX
mailing list