[tahoe-dev] How To Start Using Tahoe-LAFS

Janus Dam Nielsen janus.nielsen at alexandra.dk
Thu Apr 29 12:03:46 UTC 2010


Hi friends of Tahoe,

First, I would like to say that I find Tahoe very exciting.

I am installing my second installation of Tahoe and I find the description on how to start using Tahoe less intuitive than I would like. I hope it is okey that I suggest the following improvement of the text found at http://allmydata.org/source/tahoe-lafs/trunk/docs/running.html


>>
How To Start Using Tahoe-LAFS

This page contains a description of how to setup or run a Tahoe client or a complete Tahoe grid. First you have to install the Tahoe software, as documented in install.html.

A grid consists of a set of nodes, computers running the tahoe code, each of these nodes functions as in one of the following roles:

Client Nodes
  talk to the storage nodes to put files onto the grid and get them back off again.
Storage Nodes (or Server Nodes)
   are the computers that actually store the data in a grid.
Introducer Node
  is responsible for getting everybody talking to each other.

If you're getting started we recommend you try connecting to the the public test grid as you only need to create a client node. When you want to create your own grid you'll need to create the introducer and some initial storage nodes.

The tahoe executable in the bin directory is used to create, start, and stop nodes. Each node lives in a separate base directory, in which there is a configuration file named tahoe.cfg. Nodes read and write files within this base directory.

Create an introducer node:
To construct an introducer, create a new base directory for it (the name of the directory is up to you), cd into it, and run "path-to-the-tahoe-bin-directory/tahoe create-introducer .". Now run the introducer using "tahoe start .". After it starts, it will write a file named introducer.furl in that base directory. This file contains the URL the other nodes must use in order to connect to this introducer.
mkdir introducer
cd introducer
path-to-the-tahoe-bin-directory/tahoe create-introducer .
path-to-the-tahoe-bin-directory/tahoe start .

Create a client node:
To construct a client node, run "path-to-the-tahoe-bin-directory/tahoe create-client", which will create ~/.tahoe to be the node's base directory. Acquire a copy of the introducer.furl from the introducer and put it into this directory, then use "path-to-the-tahoe-bin-directory/tahoe start". After that, the node should be off and running. The first thing it will do is connect to the introducer and get itself connected to all other nodes on the grid.
path-to-tahoe/tahoe create-client
cp introducer.furl to ~/.tahoe
path-to-tahoe/tahoe start

Create a storage node:
To construct a storage node, create a new base directory for it (the name of the directory is up to you), cd into it, and run "path-to-the-tahoe-bin-directory/tahoe create-node .". Acquire a copy of the introducer.furl from the introducer and put it into this directory. Now run the storage node using "tahoe start .". 
mkdir storage
cd storage
cp path-to-the-introducer.furl .
path-to-the-tahoe-bin-directory/tahoe create-node .
path-to-the-tahoe-bin-directory/tahoe start .

The "tahoe run" command will run the node in the foreground. On Unix, you can run it in the background instead by using the "tahoe start" command. To stop a node started in this way, use "tahoe stop". tahoe --help gives a summary of all commands.


See configuration.txt for more details about how to configure tahoe.

A note about firewalls

If your node is behind a firewall or NAT device and want other clients to connect to it then you'll need to open a port in your firewall. To do that you'll need to know which port tahoe is listening on as, by default, it listens on an arbitrary port number. To tell tahoe to listen to a fixed port, open the ~/.tahoe/tahoe.cfg file in your favourite text editor and changing the tub.port line to something like the following:

tub.port = 8098
This tells tahoe to always listen on port 8098 of your computer. The next issue is that your computer may be behind a NATing router and isn't directly connected to the internet but goes through a router to get out. If that's the case then you'll need to set the tub.location option so that tahoe tells the introducer where you're really listening:

tub.location = myserver.mydomain.org:8098
or probably more likely

tub.location = 123.456.789.012:8098
The configuration.txt file contains more details

Do Stuff With It

Now you have a decentralized filesystem. See using.html for instructions about how to interact with it.
<<


____________________________________________________

Janus Dam Nielsen

Research and Innovationspecialist, PhD.
CENTRE FOR IT-SECURITY

THE ALEXANDRA INSTITUTE LTD. 

T +45 40 83 09 10
E janus.nielsen at alexandra.dk
W alexandra.dk

See our blog about security at blog.sikkerhed.alexandra.dk
____________________________________________________

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://tahoe-lafs.org/pipermail/tahoe-dev/attachments/20100429/ec1f45e7/attachment.html>


More information about the tahoe-dev mailing list