@nav_title = "Services" @title = "Guide to node services" @summary = "" @toc = true # Introduction Every node (server) must have one or more `services` defined that determines what role the node performs. For example: ``` cat nodes/stallman.json { "ip_address": "199.99.99.1", "services": ["webapp", "tor"] } ``` Here are common questions to ask when adding a new node to your provider: * **many or few?** Some services benefit from having many nodes, while some services are best run on only one or two nodes. * **required or optional?** Some services are required, while others can be left out. * **who does the node communicate with?** Some services communicate very heavily with other particular services. Nodes running these services should be close together. * **public or private network?** Some services communicate with the public internet, while others only need to communicate with other nodes in the infrastructure. # Available services
Service VPN Email Notes
webapp User control panel, provider API, and support system.
couchdb Data storage for everything. Private node.
soledad User data synchronization daemon. Usually paired with couchdb nodes.
mx Incoming and outgoing MX servers.
openvpn OpenVPN gateways.
monitor Nagios monitoring. This service must be on the webapp node.
tor Tor exit node.
Key: Required, Optional, Not Used <%= child_summaries %>