add tahoe create-server, define create-node to mean client+server #1843

Open
opened 2012-11-06 16:37:10 +00:00 by ChosenOne · 6 comments
ChosenOne commented 2012-11-06 16:37:10 +00:00
Owner

Just now on IRC there was a discussion about creating a storage node. A new user was confused and couldn't wrap his head around the general setup of a tahoe grid.

As zooko stated, tahoe isn't really sure about whether it's a p2p or a client-server protocol, since nodes can have multiple roles as of now.

One outcome was the suggestion to have a "tahoe create-storage". This term would be less shallow and explicitly state what kind of node is created.

Just now on IRC there was a discussion about creating a storage node. A new user was confused and couldn't wrap his head around the general setup of a tahoe grid. As zooko stated, tahoe isn't really sure about whether it's a p2p or a client-server protocol, since nodes can have multiple roles as of now. One outcome was the suggestion to have a "tahoe create-storage". This term would be less shallow and explicitly state what kind of node is created.
tahoe-lafs added the
code-frontend-cli
normal
enhancement
1.9.2
labels 2012-11-06 16:37:10 +00:00
tahoe-lafs added this to the undecided milestone 2012-11-06 16:37:10 +00:00

adding keyword p2p to tag tickets that have to do with the open question of "Is Tahoe-LAFS client-server or is it peer-to-peer?": [//pipermail/tahoe-dev/2012-July/007533.html]

adding keyword `p2p` to tag tickets that have to do with the open question of "Is Tahoe-LAFS client-server or is it peer-to-peer?": [//pipermail/tahoe-dev/2012-July/007533.html]

I'm coming around to agree with this.

Originally I thought of tahoe nodes as being a collection of services: one or more of (client, server, helper, key-generator, introducer), and others that we haven't invented yet. But we've refined that a bit:

  • "helper" is an optional add-on to a client (i.e. it doesn't make sense to have a helper without a client)
  • key-generator can hopefully go away (#2783)
  • introducer is a standalone thing, not shared with clients or servers

I think it's useful to have client-only nodes, server-only nodes, and client+server nodes.

So how about:

  • tahoe create-client makes a client-only node
  • tahoe create-server makes a server-only node
  • tahoe create-node makes a client+server node

Soon, the forms that include servers will probably need additional arguments like --location or --hostname (see #2773), which are unnecessary for client-only nodes. Client-only nodes will not listen on any TCP ports, and don't need to advertise a hostname or IP address to anybody else.

I'm coming around to agree with this. Originally I thought of tahoe nodes as being a collection of services: one or more of (client, server, helper, key-generator, introducer), and others that we haven't invented yet. But we've refined that a bit: * "helper" is an optional add-on to a client (i.e. it doesn't make sense to have a helper without a client) * key-generator can hopefully go away (#2783) * introducer is a standalone thing, not shared with clients or servers I think it's useful to have client-only nodes, server-only nodes, and client+server nodes. So how about: * `tahoe create-client` makes a client-only node * `tahoe create-server` makes a server-only node * `tahoe create-node` makes a client+server node Soon, the forms that include servers will probably need additional arguments like `--location` or `--hostname` (see #2773), which are unnecessary for client-only nodes. Client-only nodes will not listen on any TCP ports, and don't need to advertise a hostname or IP address to anybody else.

Ok, I'm repurposing this ticket to move us to create-client / create-server / create-node, where "node" is both client and server.

create-storage is somewhat more precise, but we don't have any non-storage servers that might compete for the namespace:

  • the Introducer is a server, but create-introducer is a great name for that
  • same for stats-gatherer
  • I can imagine some non-storage servers we could build (repair service, check/verify service, rebalancing service), but I think we can use names like create-repairer and create-rebalancer for those

And create-server is a clear parallel to create-client, and emphasizes the new client-server mindset we're moving to.

Ok, I'm repurposing this ticket to move us to `create-client` / `create-server` / `create-node`, where "node" is both client and server. `create-storage` is somewhat more precise, but we don't have any non-storage servers that might compete for the namespace: * the Introducer is a server, but `create-introducer` is a great name for that * same for stats-gatherer * I can imagine some non-storage servers we could build (repair service, check/verify service, rebalancing service), but I think we can use names like `create-repairer` and `create-rebalancer` for those And `create-server` is a clear parallel to `create-client`, and emphasizes the new client-server mindset we're moving to.
warner modified the milestone from undecided to 1.12.0 2016-05-05 01:18:38 +00:00
warner self-assigned this 2016-05-05 01:18:38 +00:00
warner changed title from rename (or alias) tahoe create-node to create-storage to add `tahoe create-server`, define `create-node` to mean client+server 2016-05-05 01:18:38 +00:00

moving most tickets from 1.12 to 1.13 so we can release 1.12 with magic-folders

moving most tickets from 1.12 to 1.13 so we can release 1.12 with magic-folders
warner modified the milestone from 1.12.0 to 1.13.0 2016-06-28 18:20:37 +00:00

Moving open issues out of closed milestones.

Moving open issues out of closed milestones.
exarkun modified the milestone from 1.13.0 to 1.15.0 2020-06-30 14:45:13 +00:00
Owner

Ticket retargeted after milestone closed

Ticket retargeted after milestone closed
meejah modified the milestone from 1.15.0 to soon 2021-03-30 18:40:19 +00:00
Sign in to join this conversation.
No Milestone
No Assignees
5 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Reference: tahoe-lafs/trac-2024-07-25#1843
No description provided.