X2Go Bug report logs - #684
add exclude-hosts parameter to selectsession task

version graph

Package: python-x2gobroker; Maintainer for python-x2gobroker is (unknown); Source for python-x2gobroker is src:x2gobroker.

Reported by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>

Date: Tue, 2 Dec 2014 12:35:01 UTC

Severity: wishlist

Found in version 0.0.3.0-preview

Blocking fix for 690: request another server from broker provided server is down

Reply or subscribe to this bug.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to x2go-dev@lists.x2go.org, X2Go Developers <x2go-dev@lists.x2go.org>:
Bug#684; Package python-x2gobroker. (Tue, 02 Dec 2014 12:35:01 GMT) (full text, mbox, link).


Acknowledgement sent to Mike Gabriel <mike.gabriel@das-netzwerkteam.de>:
New Bug report received and forwarded. Copy sent to X2Go Developers <x2go-dev@lists.x2go.org>. (Tue, 02 Dec 2014 12:35:01 GMT) (full text, mbox, link).


Message #5 received at submit@bugs.x2go.org (full text, mbox, reply):

From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
To: submit@bugs.x2go.org
Subject: select_session offers offline servers to X2Go Client
Date: Tue, 02 Dec 2014 12:33:41 +0000
[Message part 1 (text/plain, inline)]
Package: python-x2gobroker
Severity: important
Version: 0.0.3.0-preview

The X2Go Session Broker should be able to detect offline X2Go Servers.

It should not offer session via the select_session() method to X2Go  
Client, if a server is offline.

Mike

-- 

DAS-NETZWERKTEAM
mike gabriel, herweg 7, 24357 fleckeby
fon: +49 (1520) 1976 148

GnuPG Key ID 0x25771B31
mail: mike.gabriel@das-netzwerkteam.de, http://das-netzwerkteam.de

freeBusy:
https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to x2go-dev@lists.x2go.org, X2Go Developers <x2go-dev@lists.x2go.org>:
Bug#684; Package python-x2gobroker. (Fri, 05 Dec 2014 16:25:01 GMT) (full text, mbox, link).


Acknowledgement sent to Sergey Savko <savko@tophouse.ru>:
Extra info received and forwarded to list. Copy sent to X2Go Developers <x2go-dev@lists.x2go.org>. (Fri, 05 Dec 2014 16:25:01 GMT) (full text, mbox, link).


Message #10 received at 684@bugs.x2go.org (full text, mbox, reply):

From: Sergey Savko <savko@tophouse.ru>
To: 684@bugs.x2go.org
Subject: select_session offers offline servers to X2Go Client
Date: Fri, 5 Dec 2014 20:14:51 +0400 (MSK)
[Message part 1 (text/plain, inline)]
This patch work after patch from http://bugs.x2go.org/cgi-bin/bugreport.cgi?bug=686

-- 
С уважением,
Сергей Савко,
начальник IT отдела.
+7-931-361-04-02
[0002-Gives-a-coefficient-of-1-for-the-server-if-the-serve.patch (text/x-patch, attachment)]

Information forwarded to x2go-dev@lists.x2go.org, X2Go Developers <x2go-dev@lists.x2go.org>:
Bug#684; Package python-x2gobroker. (Sat, 06 Dec 2014 23:00:02 GMT) (full text, mbox, link).


Acknowledgement sent to Mike Gabriel <mike.gabriel@das-netzwerkteam.de>:
Extra info received and forwarded to list. Copy sent to X2Go Developers <x2go-dev@lists.x2go.org>. (Sat, 06 Dec 2014 23:00:02 GMT) (full text, mbox, link).


Message #15 received at 684@bugs.x2go.org (full text, mbox, reply):

From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
To: Sergey Savko <savko@tophouse.ru>, 684@bugs.x2go.org
Subject: Re: [X2Go-Dev] Bug#684: select_session offers offline servers to X2Go Client
Date: Sat, 06 Dec 2014 22:56:05 +0000
[Message part 1 (text/plain, inline)]
Control: clone -1 -2 -3
Control: reassign -2 x2goclient
Control: reassign -3 python-x2go
Control: retitle -1 add exclude-hosts parameter to selectsession task
Control: retitle -2 request another server from broker provided server is down
Control: retitle -3 request another server from broker provided server is down
Control: severity -1 wishlist
Control: severity -2 wishlist
Control: severity -3 wishlist
Control: block -2 by -1
Control: block -3 by -1
Control: tag -1 - patch

Hi Sergey,

On  Fr 05 Dez 2014 17:14:51 CET, Sergey Savko wrote:

> This patch work after patch from  
> http://bugs.x2go.org/cgi-bin/bugreport.cgi?bug=686

After thinking this through a little, I come to the conclusion that  
the broker cannot decide if a machine is down or not.

We have to think very generically. There may be a scenario where the  
broker machine may be on an network segment where it cannot ping/reach  
the X2Go Servers.

The X2Go Clients can reach the X2Go Broker. The broker provides an  
X2Go Server address on the "selectsession" broker task to the X2Go  
Client. Then the X2Go Client should test if that X2Go Server address  
works (via a simple ping6/ping command, machines should always be  
pingable!!!). If the ping fails, X2Go Client should go back to the  
broker and say: hey, that server failed for me, give me another one  
(but not the one you already gave me).

I fear we need to do four things for this bug to get fixed:

  1. extend broker/client communication protocol (second/third/...  
selectsession
     call with a list of hosts that did not work on previous attempts)
  2. extend X2Go Session Broker with an exclude-hosts (or so)  
parameter for the
     selectsession task
  3. Adapt X2Go Client: ping X2Go Server, go back to the broker if  
server is down
     and request another server
  4. Adapt Python X2Go: dito

Regards,
Mike

-- 

DAS-NETZWERKTEAM
mike gabriel, herweg 7, 24357 fleckeby
fon: +49 (1520) 1976 148

GnuPG Key ID 0x25771B31
mail: mike.gabriel@das-netzwerkteam.de, http://das-netzwerkteam.de

freeBusy:
https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb
[Message part 2 (application/pgp-signature, inline)]

Bug 684 cloned as bugs 690, 691 Request was from Mike Gabriel <mike.gabriel@das-netzwerkteam.de> to 684-submit@bugs.x2go.org. (Sat, 06 Dec 2014 23:00:03 GMT) (full text, mbox, link).


Changed Bug title to 'add exclude-hosts parameter to selectsession task' from 'select_session offers offline servers to X2Go Client' Request was from Mike Gabriel <mike.gabriel@das-netzwerkteam.de> to 684-submit@bugs.x2go.org. (Sat, 06 Dec 2014 23:00:03 GMT) (full text, mbox, link).


Severity set to 'wishlist' from 'important' Request was from Mike Gabriel <mike.gabriel@das-netzwerkteam.de> to 684-submit@bugs.x2go.org. (Sat, 06 Dec 2014 23:00:03 GMT) (full text, mbox, link).


Added indication that bug 684 blocks 690 Request was from Mike Gabriel <mike.gabriel@das-netzwerkteam.de> to 684-submit@bugs.x2go.org. (Sat, 06 Dec 2014 23:00:03 GMT) (full text, mbox, link).


Added indication that bug 684 blocks 691 Request was from Mike Gabriel <mike.gabriel@das-netzwerkteam.de> to 684-submit@bugs.x2go.org. (Sat, 06 Dec 2014 23:00:03 GMT) (full text, mbox, link).


Information forwarded to x2go-dev@lists.x2go.org, X2Go Developers <x2go-dev@lists.x2go.org>:
Bug#684; Package python-x2gobroker. (Sat, 06 Dec 2014 23:25:02 GMT) (full text, mbox, link).


Acknowledgement sent to Stefan Baur <X2Go-ML-1@baur-itcs.de>:
Extra info received and forwarded to list. Copy sent to X2Go Developers <x2go-dev@lists.x2go.org>. (Sat, 06 Dec 2014 23:25:02 GMT) (full text, mbox, link).


Message #30 received at 684@bugs.x2go.org (full text, mbox, reply):

From: Stefan Baur <X2Go-ML-1@baur-itcs.de>
To: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>, 684@bugs.x2go.org, Sergey Savko <savko@tophouse.ru>
Subject: Re: [X2Go-Dev] Bug#684: Bug#684: select_session offers offline servers to X2Go Client
Date: Sun, 07 Dec 2014 00:17:22 +0100
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 06.12.2014 um 23:56 schrieb Mike Gabriel:
> Then the X2Go Client should test if that X2Go Server address works
> (via a simple ping6/ping command, machines should always be
> pingable!!!)

Chiming in here:
Even if they aren't pingable - Port 22 (or whichever you've set in the
config as SSH port to be used) must be accepting connections.
You can test that on Linux with

nc -z ip.goes.he.re port_goes_here && echo "is reachable"

... and I'm sure there are ways to do that inside the client code, too.
Check if you can get a TCP handshake going within a set time frame (1
second? 2 seconds? 5 seconds?), then disconnect and proceed depending
on the result.

Actually ... simply lowering the timeout value for the currently
existing code that handles the connection, when called in broker
client mode, might already work.

- -Stefan

- -- 
BAUR-ITCS UG (haftungsbeschränkt)
Geschäftsführer: Stefan Baur
Eichenäckerweg 10, 89081 Ulm | Registergericht Ulm, HRB 724364
Fon/Fax 0731 40 34 66-36/-35 | USt-IdNr.: DE268653243
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (MingW32)

iQEcBAEBAgAGBQJUg46CAAoJEG7d9BjNvlEZAhIIAJA21I9lvk3hY6R3eAiCO2MG
YSNlsUy/ShyhwB37UCNyCLOtEJ9j14xS73UNjbTiRkIFRE12kdtS8vyAPAdZJYqi
2+vbiVjg+TZ31rvk7RrkPyEepJ3+0UfRkfFPDm07sTP47DiBx+zYOyie2qVdrw1U
GXJtQrylZRlzhVUi7rbAmNSp1HYaQ+B5yRX1ApmvNrZ+1+GZFybyZO2+eDM6ClHI
QBmCePp5DPfN5bE9d+GvxWArkWQe5sgNT1USz7r64F5DOgB09M8f6vkuW3ygq4cW
8dDBhPnJv4PKs7IxLNnM+K1OnPopcKs1/EmkD5nbcNCvGSRW93nV4ic6RoZSD7g=
=8x/F
-----END PGP SIGNATURE-----


Information forwarded to x2go-dev@lists.x2go.org, X2Go Developers <x2go-dev@lists.x2go.org>:
Bug#684; Package python-x2gobroker. (Sat, 06 Dec 2014 23:45:02 GMT) (full text, mbox, link).


Acknowledgement sent to Sergey Savko <savko@tophouse.ru>:
Extra info received and forwarded to list. Copy sent to X2Go Developers <x2go-dev@lists.x2go.org>. (Sat, 06 Dec 2014 23:45:02 GMT) (full text, mbox, link).


Message #35 received at 684@bugs.x2go.org (full text, mbox, reply):

From: Sergey Savko <savko@tophouse.ru>
To: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>, 684@bugs.x2go.org
Subject: Re: [X2Go-Dev] Bug#684: select_session offers offline servers to X2Go Client
Date: Sun, 7 Dec 2014 03:45:28 +0400 (MSK)
If the server will give the address to which it can not connect, there will be no load balancing works. 
Since the server is connected to receive the coefficient of loading.


----- Исходное сообщение -----
От: "Mike Gabriel" <mike.gabriel@das-netzwerkteam.de>
Кому: "Sergey Savko" <savko@tophouse.ru>, 684@bugs.x2go.org
Отправленные: Воскресенье, 7 Декабрь 2014 г 1:56:05
Тема: Re: [X2Go-Dev] Bug#684: select_session offers offline servers to X2Go Client

Control: clone -1 -2 -3
Control: reassign -2 x2goclient
Control: reassign -3 python-x2go
Control: retitle -1 add exclude-hosts parameter to selectsession task
Control: retitle -2 request another server from broker provided server is down
Control: retitle -3 request another server from broker provided server is down
Control: severity -1 wishlist
Control: severity -2 wishlist
Control: severity -3 wishlist
Control: block -2 by -1
Control: block -3 by -1
Control: tag -1 - patch

Hi Sergey,

On  Fr 05 Dez 2014 17:14:51 CET, Sergey Savko wrote:

> This patch work after patch from  
> http://bugs.x2go.org/cgi-bin/bugreport.cgi?bug=686

After thinking this through a little, I come to the conclusion that  
the broker cannot decide if a machine is down or not.

We have to think very generically. There may be a scenario where the  
broker machine may be on an network segment where it cannot ping/reach  
the X2Go Servers.

The X2Go Clients can reach the X2Go Broker. The broker provides an  
X2Go Server address on the "selectsession" broker task to the X2Go  
Client. Then the X2Go Client should test if that X2Go Server address  
works (via a simple ping6/ping command, machines should always be  
pingable!!!). If the ping fails, X2Go Client should go back to the  
broker and say: hey, that server failed for me, give me another one  
(but not the one you already gave me).

I fear we need to do four things for this bug to get fixed:

   1. extend broker/client communication protocol (second/third/...  
selectsession
      call with a list of hosts that did not work on previous attempts)
   2. extend X2Go Session Broker with an exclude-hosts (or so)  
parameter for the
      selectsession task
   3. Adapt X2Go Client: ping X2Go Server, go back to the broker if  
server is down
      and request another server
   4. Adapt Python X2Go: dito

Regards,
Mike

-- 

DAS-NETZWERKTEAM
mike gabriel, herweg 7, 24357 fleckeby
fon: +49 (1520) 1976 148

GnuPG Key ID 0x25771B31
mail: mike.gabriel@das-netzwerkteam.de, http://das-netzwerkteam.de

freeBusy:
https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb


Information forwarded to x2go-dev@lists.x2go.org, X2Go Developers <x2go-dev@lists.x2go.org>:
Bug#684; Package python-x2gobroker. (Mon, 08 Dec 2014 07:25:01 GMT) (full text, mbox, link).


Acknowledgement sent to Mike Gabriel <mike.gabriel@das-netzwerkteam.de>:
Extra info received and forwarded to list. Copy sent to X2Go Developers <x2go-dev@lists.x2go.org>. (Mon, 08 Dec 2014 07:25:01 GMT) (full text, mbox, link).


Message #40 received at 684@bugs.x2go.org (full text, mbox, reply):

From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
To: Sergey Savko <savko@tophouse.ru>
Cc: 684@bugs.x2go.org, control@bugs.x2go.org
Subject: Re: [X2Go-Dev] Bug#684: select_session offers offline servers to X2Go Client
Date: Mon, 08 Dec 2014 07:23:39 +0000
[Message part 1 (text/plain, inline)]
clone #684 -1
retitle -1 select_session offers offline servers to X2Go Client
thanks

Hi Sergey,

On  So 07 Dez 2014 00:45:28 CET, Sergey Savko wrote:

> If the server will give the address to which it can not connect,  
> there will be no load balancing works.
> Since the server is connected to receive the coefficient of loading.

Actually, after a third or fourth though: in cases where we use SSH to  
connected from broker server to broker agent, there we can evaluate  
the online status of the X2Go Server. So, in those cases we should  
filter out, if a server is down or not and exclude that server from  
the list of possible X2Go Servers.

Plus, I still think, that X2Go Client should request another machine,  
if the provided server was offline and more than one server is  
configured in the broker's session profile.

So, cloning this bug again...

  #684: for tracking the new feature of re-requesting a server address
  new bug: filter out offline servers on the broker side already

Greets,
Mike



-- 

DAS-NETZWERKTEAM
mike gabriel, herweg 7, 24357 fleckeby
fon: +49 (1520) 1976 148

GnuPG Key ID 0x25771B31
mail: mike.gabriel@das-netzwerkteam.de, http://das-netzwerkteam.de

freeBusy:
https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb
[Message part 2 (application/pgp-signature, inline)]

Bug 684 cloned as bug 692 Request was from Mike Gabriel <mike.gabriel@das-netzwerkteam.de> to control@bugs.x2go.org. (Mon, 08 Dec 2014 07:25:02 GMT) (full text, mbox, link).


Information forwarded to x2go-dev@lists.x2go.org, X2Go Developers <x2go-dev@lists.x2go.org>:
Bug#684; Package python-x2gobroker. (Mon, 08 Dec 2014 13:05:01 GMT) (full text, mbox, link).


Acknowledgement sent to Sergey Savko <savko@tophouse.ru>:
Extra info received and forwarded to list. Copy sent to X2Go Developers <x2go-dev@lists.x2go.org>. (Mon, 08 Dec 2014 13:05:01 GMT) (full text, mbox, link).


Message #47 received at 684@bugs.x2go.org (full text, mbox, reply):

From: Sergey Savko <savko@tophouse.ru>
To: 684@bugs.x2go.org
Subject: Re: [X2Go-Dev] Bug#684: select_session offers offline servers to X2Go Client
Date: Mon, 8 Dec 2014 17:06:25 +0400 (MSK)
If you make a x2goclient connection to each farm server, then time will be increased by seconds for such connection. 
And if the server farm consist of more then 2-3 servers, then connection time will increase strongly.

----- Исходное сообщение -----
>Plus, I still think, that X2Go Client should request another machine,  
>if the provided server was offline and more than one server is  
>configured in the broker's session profile.


Information forwarded to x2go-dev@lists.x2go.org, X2Go Developers <x2go-dev@lists.x2go.org>:
Bug#684; Package python-x2gobroker. (Mon, 08 Dec 2014 21:50:02 GMT) (full text, mbox, link).


Acknowledgement sent to Terje Andersen <teranders@gmail.com>:
Extra info received and forwarded to list. Copy sent to X2Go Developers <x2go-dev@lists.x2go.org>. (Mon, 08 Dec 2014 21:50:02 GMT) (full text, mbox, link).


Message #52 received at 684@bugs.x2go.org (full text, mbox, reply):

From: Terje Andersen <teranders@gmail.com>
To: Sergey Savko <savko@tophouse.ru>, 684@bugs.x2go.org
Subject: Re: [X2Go-Dev] Bug#684: Bug#684: select_session offers offline servers to X2Go Client
Date: Mon, 8 Dec 2014 22:48:38 +0100
[Message part 1 (text/plain, inline)]
Why not introduce a datastore which holds the current state of all the
servers in the server farm? Then the broker could query that one for
information to choose server from.
One could either use a separate database server for this or use something
like sqlite (or mysql / postgresql / other) on each server host with some
sort of replication (redundancy and avoids the need to contact one specific
server - all can reply to the queries) or caching of the central datastore
contents.

On how to update this information in the datastore there's two ways I'm
thinking of right now:
1. Each server in the server farm writes to the datastore it's current
status at regular intervals
2. One, or several (backup role if the "master" should fail) server(s) have
been given the responsibility to query the servers in the farm for their
status at regular intervals

Regardless of the chosen implementation from one of those solutions would
IMO:
* Make the broker-role easier to implement with regard to "advanced" setups
* Removes the wait for / time issue at connection, or selection, process -
just contact the datastore
* Makes it possible to write a simple and central management app/webapp
which one could administer the entire server farm
* other possibilites

Regards,
Terje


2014-12-08 14:06 GMT+01:00 Sergey Savko <savko@tophouse.ru>:

> If you make a x2goclient connection to each farm server, then time will be
> increased by seconds for such connection.
> And if the server farm consist of more then 2-3 servers, then connection
> time will increase strongly.
>
> ----- Исходное сообщение -----
> >Plus, I still think, that X2Go Client should request another machine,
> >if the provided server was offline and more than one server is
> >configured in the broker's session profile.
> _______________________________________________
> x2go-dev mailing list
> x2go-dev@lists.x2go.org
> http://lists.x2go.org/listinfo/x2go-dev
>
[Message part 2 (text/html, inline)]

Send a report that this bug log contains spam.


X2Go Developers <owner@bugs.x2go.org>. Last modified: Sat Nov 23 09:51:54 2024; Machine Name: ymir.das-netzwerkteam.de

X2Go Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.