[IPython-user] IPython1 with SSH

Brian Granger ellisonbg.net@gmail....
Fri Aug 17 11:30:45 CDT 2007


The main constraints are these:

 The computer that is running the controller must:

 - Have firewall ports open for the client and engines to contact it.
To see what ports need to be opened, have a look at the controller
log.  I think the ports are 10201, 10105, 10113 by default.
If you can't open firewall ports and they are closed, then you will
need to use ssh tunneling as Ville mentions.  See the ssh man pages
for details.  There are also a number of good tutorials about this.

--It must be reachable by both the client and engines.  This means it
must have public IP addreses that are visible.  I some contexts, the
controller computer will have multiple network interfaces and this
must be dealt with.  Because of this, you should specify the ip
address rather than the hostname to be safe.

The typical way we run ipython1 on a cluster is to start the
controller on a head node, engines on the compute node and the client
on a local machine where you are sitting.

> ipcontroller
> ipengine --controller-ip=myhost
> doesn't work:
> >>>import ipython1.kernel.api as kernel
> >>>rc = kernel.RemoteController(('127.0.0.1',10105))

You will need to change the '127.0.0.1' to the ip address that the
controller is running on.  That is definitely a problem.

Try these things and let us know how it goes.

Brian

> >>>rc.getIDs()
> socket.error: (61, 'Connection refused')
>
> Cheers,
>
> Jussi
> _______________________________________________
> IPython-user mailing list
> IPython-user@scipy.org
> http://lists.ipython.scipy.org/mailman/listinfo/ipython-user
>


More information about the IPython-user mailing list