Remote support on wan for Gemstone server

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

Remote support on wan for Gemstone server

dario trussardi
Hi,

some time ago i do some test for manage GemTools on remote system with speed up the remote performance of GemTools.


After i see the:  tODE - the Object-centric Development Environment  by Dale.

Now my question is:

what is the state of the art to manage  a Gemstone server remotely ?
What are the prospects for the near future?

Thanks for any considerations,

Dario
Reply | Threaded
Open this post in threaded view
|

Re: Remote support on wan for Gemstone server

James Foster-8
Dario,

I'll let Dale comment on tODE. If you have a Windows client, you could try Jade (http://seaside.gemstone.com/jade/Jade.zip) since it has fairly efficient network usage.

-James

On Feb 1, 2012, at 9:33 AM, Dario Trussardi wrote:

Hi,

some time ago i do some test for manage GemTools on remote system with speed up the remote performance of GemTools.


After i see the: tODE - the Object-centric Development Environment  by Dale.

Now my question is:

what is the state of the art to manage  a Gemstone server remotely ?
What are the prospects for the near future?

Thanks for any considerations,

Dario

Reply | Threaded
Open this post in threaded view
|

Re: Remote support on wan for Gemstone server

Dale Henrichs
In reply to this post by dario trussardi
Dario,

GemTools is still the goto guy for development ... tODE is not a complete development environment so you still need to have GemTools around to do certain things.

I use tODE to interact exclusively with ss3[1], but it is a production system and I don't do a whole lot of direct development .... minor patches and looking at the object log are very convenient using tODE ...

I have intended to work on tODE more this winter, but I have been sidetracked with an effort to integrate Monticello, Metacello, git and github[2] in particular and Metacello 1.0-bet.32 in general...

Dale

[1] http://ss3.gemstone.com/
[2] https://github.com/dalehenrich/metacello

----- Original Message -----
| From: "Dario Trussardi" <[hidden email]>
| To: "beta discussion Gemstone Seaside" <[hidden email]>
| Sent: Wednesday, February 1, 2012 9:33:28 AM
| Subject: [GS/SS Beta] Remote support on wan for Gemstone server
|
| Hi,
|
|
| some time ago i do some test for manage GemTools on remote system
| with speed up the remote performance of GemTools .
|
|
|
|
| After i see the: tODE - the Object-centric Developme nt Environment
| by Dale.
|
|
| Now my question is:
|
|
| what is the state of the art to manage a Gemstone server remotely ?
|
| What are the prospects for the near future?
|
|
| Thanks for any considerations,
|
|
| Dario
Reply | Threaded
Open this post in threaded view
|

Re: Remote support on wan for Gemstone server

dario trussardi
In reply to this post by James Foster-8

James,

Dario,

I'll let Dale comment on tODE. If you have a Windows client, you could try Jade (http://seaside.gemstone.com/jade/Jade.zip) since it has fairly efficient network usage.

-James



i test JADE solution.

On local network it work fine.

From remote session ( by ADSL connection ) i configured the router  to redirect the netldi service( 50377)  to the specific server where the service run.

When do the Login the jade program answer the : 

   Network error - text follows:  

Noblocking connect ( 87.2...... .......  , port = XXXXX) failed to complete.



Where 87.2...... is the IP address of the server router and the XXXXX is a number of the port ( it change at any Login attempt )

I wrong something ?


Thanks for any consideration.

Dario
Reply | Threaded
Open this post in threaded view
|

Re: Remote support on wan for Gemstone server

James Foster-8
Dario,

The error report tells us that something failed to connect. 
(1) Could you tell us more about your network connection? 
(2) What is different between the "local network" (where it works) and the network where it doesn't work? 
(3) You have a Stone and NetLDI running on a server with an IP of 87.2...? 
(4) Could you send us the result of 'gslist -cvl' on the server? 
(5) Are you able to ping the server from the Windows machine? What is the result? 
(6) I don't understand the part about configuring the router. Where is the router? Why do you need to configure it? 
(7) Are you entering '50377' or 'gs64ldi' in Jade as the NetLDI service? 
(8) If you are giving the service name, have you added it to your Windows etc/services file?

-James


From: "Dario Trussardi" <[hidden email]>
To: "GemStone Seaside beta discussion" <[hidden email]>
Sent: Saturday, February 11, 2012 7:18:56 AM
Subject: Re: [GS/SS Beta] Remote support on wan for Gemstone server


James,

Dario,

I'll let Dale comment on tODE. If you have a Windows client, you could try Jade (http://seaside.gemstone.com/jade/Jade.zip) since it has fairly efficient network usage.

-James



i test JADE solution.

On local network it work fine.

From remote session ( by ADSL connection ) i configured the router  to redirect the netldi service( 50377)  to the specific server where the service run.

When do the Login the jade program answer the : 

   Network error - text follows:  

Noblocking connect ( 87.2...... .......  , port = XXXXX) failed to complete.



Where 87.2...... is the IP address of the server router and the XXXXX is a number of the port ( it change at any Login attempt )

I wrong something ?


Thanks for any consideration.

Dario

Reply | Threaded
Open this post in threaded view
|

Re: Remote support on wan for Gemstone server

James Foster-8
Dario,

Another possible issue is a firewall between the client and the server. In order to make the connection from the client (Jade) to the server (GemStone), you need to have access to the NetLDI (typically 50377) and to another port used to access the Gem. This port can be configured when the NetLDI starts, but if it is not configured then a random port will be used.

I suggest that you modify your 'startnetldi' command to add a port option, '-p 50378:50378' and then configure the router to redirect this additional port to the specific server where the service runs. For more details see the System Administration Guide and the following Tech Tip: http://community.gemstone.com/display/GSS64/Netldi+Port+Use.

-James


From: "James Foster" <[hidden email]>
To: "GemStone Seaside beta discussion" <[hidden email]>
Sent: Saturday, February 11, 2012 7:26:26 PM
Subject: Re: [GS/SS Beta] Remote support on wan for Gemstone server

Dario,

The error report tells us that something failed to connect. 
(1) Could you tell us more about your network connection? 
(2) What is different between the "local network" (where it works) and the network where it doesn't work? 
(3) You have a Stone and NetLDI running on a server with an IP of 87.2...? 
(4) Could you send us the result of 'gslist -cvl' on the server? 
(5) Are you able to ping the server from the Windows machine? What is the result? 
(6) I don't understand the part about configuring the router. Where is the router? Why do you need to configure it? 
(7) Are you entering '50377' or 'gs64ldi' in Jade as the NetLDI service? 
(8) If you are giving the service name, have you added it to your Windows etc/services file?

-James


From: "Dario Trussardi" <[hidden email]>
To: "GemStone Seaside beta discussion" <[hidden email]>
Sent: Saturday, February 11, 2012 7:18:56 AM
Subject: Re: [GS/SS Beta] Remote support on wan for Gemstone server


James,

Dario,

I'll let Dale comment on tODE. If you have a Windows client, you could try Jade (http://seaside.gemstone.com/jade/Jade.zip) since it has fairly efficient network usage.

-James



i test JADE solution.

On local network it work fine.

From remote session ( by ADSL connection ) i configured the router  to redirect the netldi service( 50377)  to the specific server where the service run.

When do the Login the jade program answer the : 

   Network error - text follows:  

Noblocking connect ( 87.2...... .......  , port = XXXXX) failed to complete.



Where 87.2...... is the IP address of the server router and the XXXXX is a number of the port ( it change at any Login attempt )

I wrong something ?


Thanks for any consideration.

Dario


Reply | Threaded
Open this post in threaded view
|

Re: Remote support on wan for Gemstone server

Thelliez
In reply to this post by James Foster-8
If Jade was ported to Linux/OSX that would simplify a lot of things here ;-)


Thierry
Reply | Threaded
Open this post in threaded view
|

Re: Remote support on wan for Gemstone server

James Foster-8
I've posted an experimental port of Jade to Mac (OSX) at http://seaside.gemstone.com/jade/. The only issue I found so far is that I need to put the service in as a port number rather than as a name.

On Feb 13, 2012, at 10:51 AM, Thierry Thelliez wrote:

If Jade was ported to Linux/OSX that would simplify a lot of things here ;-)


Thierry

Reply | Threaded
Open this post in threaded view
|

Re: Remote support on wan for Gemstone server

dario trussardi
In reply to this post by James Foster-8
Hi James,


I suggest that you modify your 'startnetldi' command to add a port option, '-p 50378:50378' and then configure the router to redirect this additional port to the specific server where the service runs. For more details see the System Administration Guide and the following Tech Tip: http://community.gemstone.com/display/GSS64/Netldi+Port+Use.


i follow your suggest and for now i'm interested to test the port open on the server when i run the startnet  script.

In the server i run two  Gemstone '2.4.4.1' environment 
and  one  GemStone '3.0.1' environment.

My test is relative to the first Gemstone '2.4.4.1' environment



I change the starnet file to add the  port option  -p 50377:50379   at  startnetldi   command.

Now the startnet  is  :

#!/bin/bash

export GEMSTONE_NRS_ALL='#dir:$GEMSTONE_DATADIR#log:/$GEMSTONE_LOGDIR/%N%P.log'

export GEMSTONE_SYS_CONF=$GEMSTONE_DATADIR/system.conf
export GEMSTONE_EXE_CONF=$GEMSTONE_DATADIR

$GEMSTONE/bin/startnetldi -p 50377:50379 -g -a $USER -n -l $GEMSTONE_LOGDIR/gs64ldi.log





When i run  startnet   the system open the tcp port but randomly.

The  netstat -avntup   command for example  report
  
tcp 0 0 0.0.0.0:52479 0.0.0.0:* LISTEN 28526/netldid





If i add the gs64ldi    entry  to the  /etc/services    on the server 

gs64ldi 50388/tcp      

when i run the   startnet     it open the 50388 port.  ( the startnetldi   -p parameter aren't considered )



Question:   
A) i wrong the startnetldi       port option ?   

B) if i setup the range to 1 : startnetldi  -p  50377:50377

when i do login from GemTools  1-0-beta.8..3   the system erase the error:

'Unable to create a GemStone session.
Netldi ''gs64ldi'' on host ''monviso'' reports the request ''gemnetobject'' failed:
Your netldi request timed out after 60 seconds.
If a gem or page server log file was created for this request it will contain information on why this request failed.
Otherwise check the netldi log ''/opt24/gemstone/log/gs64ldi.log'' for information.'

C) i can work with two gs64ldi service  at the same time? 

one for Gemstone 2.4

one for Gemstone 3.0.

Thank for any consideration.

Dario


Reply | Threaded
Open this post in threaded view
|

Re: Remote support on wan for Gemstone server

James Foster-8
Dario,

The startnet script assumes that you have something reasonable defined in /etc/services for 'gs64ldi' (such as 50377). To check for that enter the following at a command shell:
grep gs64ldi /etc/services
My guess is that there is nothing defined, so NetLDI chooses a port at random.

It is quite possible to run multiple versions of GemStone on the same host; we do it all the time when developing and testing. It is, however, important to have one NetLDI for each product version, and to start that NetLDI on a unique "primary" port. If you are running behind a firewall you also need to select a "secondary" port (or port range) for each NetLDI.

You are running three stones, two 2.4.4.1 stones and one 3.0.1 stone, so you need to start two NetLDI processes (one for each version) and you need to select and configure four ports. For purposes of discussion I suggest the following:

2.4.4.1:
primary: 50377
secondary: 50378
3.0.1:
primary: 50379
secondary: 50380

All four ports need to be open on your firewall and properly routed from the client to the server.

When starting NetLDI you need to tell it by command line or environment variables which ports to use. I suggest that you be explicit on the command line.

With $GEMSTONE pointing to the 2.4.4.1 product and $PATH including $GEMSTONE/bin, modify the 2.4.4.1 startnet script as follows:
$GEMSTONE/bin/startnetldi 50377 -p 50378:50378 -g -a $USER -n -l $GEMSTONE_LOGDIR/gs64ldi.log
This tells NetLDI to use 50377 as the primary port and 50378 as the secondary port.

In a different shell with $GEMSTONE pointing to the 3.0.1 product, modify the 3.0.1 startnet script as follows:
$GEMSTONE/bin/startnetldi 50379 -p 50380:50380 -g -a $USER -n -l $GEMSTONE_LOGDIR/gs64ldi.log
This tells the 3.0.1 NetLDI to use 50379 as the primary port and 50380 as the secondary port.

You can replace the primary port number with a service name if you have things properly set in /etc/services (or a network services database), but I suggest that you be explicit to avoid problems.

-James


On Feb 27, 2012, at 9:13 AM, Dario Trussardi wrote:

Hi James,


I suggest that you modify your 'startnetldi' command to add a port option, '-p 50378:50378' and then configure the router to redirect this additional port to the specific server where the service runs. For more details see the System Administration Guide and the following Tech Tip: http://community.gemstone.com/display/GSS64/Netldi+Port+Use.


i follow your suggest and for now i'm interested to test the port open on the server when i run the startnet  script.

In the server i run two  Gemstone '2.4.4.1' environment 
and  one  GemStone '3.0.1' environment.

My test is relative to the first Gemstone '2.4.4.1' environment



I change the starnet file to add the  port option  -p 50377:50379   at  startnetldi   command.

Now the startnet  is  :

#!/bin/bash

export GEMSTONE_NRS_ALL='#dir:$GEMSTONE_DATADIR#log:/$GEMSTONE_LOGDIR/%N%P.log'

export GEMSTONE_SYS_CONF=$GEMSTONE_DATADIR/system.conf
export GEMSTONE_EXE_CONF=$GEMSTONE_DATADIR

$GEMSTONE/bin/startnetldi -p 50377:50379 -g -a $USER -n -l $GEMSTONE_LOGDIR/gs64ldi.log





When i run  startnet   the system open the tcp port but randomly.

The  netstat -avntup   command for example  report
  
tcp 0 0 0.0.0.0:52479 0.0.0.0:* LISTEN 28526/netldid





If i add the gs64ldi    entry  to the  /etc/services    on the server 

gs64ldi 50388/tcp      

when i run the   startnet     it open the 50388 port.  ( the startnetldi   -p parameter aren't considered )



Question:   
A) i wrong the startnetldi       port option ?   

B) if i setup the range to 1 : startnetldi  -p  50377:50377

when i do login from GemTools  1-0-beta.8..3   the system erase the error:

'Unable to create a GemStone session.
Netldi ''gs64ldi'' on host ''monviso'' reports the request ''gemnetobject'' failed:
Your netldi request timed out after 60 seconds.
If a gem or page server log file was created for this request it will contain information on why this request failed.
Otherwise check the netldi log ''/opt24/gemstone/log/gs64ldi.log'' for information.'

C) i can work with two gs64ldi service  at the same time? 

one for Gemstone 2.4

one for Gemstone 3.0.

Thank for any consideration.

Dario