diff options
author | Micah Anderson <micah@riseup.net> | 2016-11-04 10:54:28 -0400 |
---|---|---|
committer | Micah Anderson <micah@riseup.net> | 2016-11-04 10:54:28 -0400 |
commit | 34a381efa8f6295080c843f86bfa07d4e41056af (patch) | |
tree | 9282cf5d4c876688602705a7fa0002bc4a810bde /docs/en/services.html | |
parent | 0a72bc6fd292bf9367b314fcb0347c4d35042f16 (diff) | |
parent | 5821964ff7e16ca7aa9141bd09a77d355db492a9 (diff) |
Merge branch 'develop'
Diffstat (limited to 'docs/en/services.html')
-rw-r--r-- | docs/en/services.html | 251 |
1 files changed, 251 insertions, 0 deletions
diff --git a/docs/en/services.html b/docs/en/services.html new file mode 100644 index 00000000..55211e64 --- /dev/null +++ b/docs/en/services.html @@ -0,0 +1,251 @@ +<!DOCTYPE html> +<html lang='en'> +<head> +<title> +Services - LEAP Platform Documentation +</title> +<meta content='width=device-width, initial-scale=1.0' name='viewport'> +<meta charset='UTF-8'> +<base href="" /> +<style> + body { + background: #444; + display: flex; + flex-direction: row; + padding: 10px; + margin: 0px; + } + #sidebar { + flex: 0 0 250px; + background: white; + margin-right: 10px; + padding: 20px; + } + #sidebar ul { + list-style-type: none; + padding-left: 0px; + margin: 0; + } + #sidebar li { padding: 4px } + #sidebar li a { text-decoration: none } + #sidebar li.active { background: #444 } + #sidebar li.active a { color: white } + #sidebar li.level1 { padding-left: 20px } + #sidebar li.level2 { padding-left: 40px } + #main { + flex: 1 1 auto; + background: white; + padding: 20px; + } + #title-box { + padding-bottom: 20px; + border-bottom: 5px solid #eee; + } + #title-box h1 { + margin-top: 0px; + } + pre { + padding: 10px; + background: #eef; + } + code { + background: #eef; + } + table {border-collapse: collapse} + table td { + border: 1px solid #ccc; + padding: 4px; + vertical-align: top; + } +</style> +</head> +<body> +<div id='sidebar'> +<ul> +<li class=''> +<a href='../index.html'>Home</a> +</li> +<li class=' level0'> +<a class='' href='guide.html'>Guide</a> +</li> +<li class=' level0'> +<a class='' href='tutorials.html'>Tutorials</a> +</li> +<li class='active level0'> +<a class='' href='services.html'>Services</a> +</li> +<li class=' level1'> +<a class='' href='services/couchdb.html'>couchdb</a> +</li> +<li class=' level1'> +<a class='' href='services/openvpn.html'>openvpn</a> +</li> +<li class=' level1'> +<a class='' href='services/monitor.html'>monitor</a> +</li> +<li class=' level1'> +<a class='' href='services/mx.html'>mx</a> +</li> +<li class=' level1'> +<a class='' href='services/soledad.html'>soledad</a> +</li> +<li class=' level1'> +<a class='' href='services/tor.html'>tor</a> +</li> +<li class=' level1'> +<a class='' href='services/webapp.html'>webapp</a> +</li> +<li class=' level0'> +<a class='' href='upgrading.html'>Upgrading</a> +</li> +<li class=' level0'> +<a class='' href='troubleshooting.html'>Troubleshooting</a> +</li> +<li class=' level0'> +<a class='' href='details.html'>Details</a> +</li> +</ul> +</div> +<div id='main'> +<div id='title-box'> +<h1>Guide to node services</h1> + +<div id='summary'></div> +</div> +<div id='content-box'> +<div id="TOC"><ol> + <li> + <a href="services/index.html#introduction">Introduction</a> + </li> + <li> + <a href="services/index.html#available-services">Available services</a> + </li> +</ol></div> + +<h1><a name="introduction"></a>Introduction</h1> + +<p>Every node (server) must have one or more <code>services</code> defined that determines what role the node performs. For example:</p> + +<pre><code>workstation$ cat nodes/stallman.json +{ + "ip_address": "199.99.99.1", + "services": ["webapp", "tor"] +} +</code></pre> + +<p>Here are common questions to ask when adding a new node to your provider:</p> + +<ul> +<li><strong>many or few?</strong> Some services benefit from having many nodes, while some services are best run on only one or two nodes.</li> +<li><strong>required or optional?</strong> Some services are required, while others can be left out.</li> +<li><strong>who does the node communicate with?</strong> Some services communicate very heavily with other particular services. Nodes running these services should be close together.</li> +<li><strong>public or private network?</strong> Some services communicate with the public internet, while others only need to communicate with other nodes in the infrastructure.</li> +</ul> + + +<h1><a name="available-services"></a>Available services</h1> + +<table class="table table-striped"> +<tr> + <th>Service</th> + <th>VPN</th> + <th>Email</th> + <th>Notes</th> +</tr> +<tr> + <td>webapp</td> + <td><i class="fa fa-circle"></i></td> + <td><i class="fa fa-circle"></i></td> + <td>User control panel, provider API, and support system.</td> +</tr> +<tr> + <td>couchdb</td> + <td><i class="fa fa-circle"></i></td> + <td><i class="fa fa-circle"></i></td> + <td>Data storage for everything. Private node.</td> +<td></td> +</tr> +<tr> + <td>soledad</td> + <td><i class="fa fa-circle-o"></i></td> + <td><i class="fa fa-circle"></i></td> + <td>User data synchronization daemon. Usually paired with <code>couchdb</code> nodes.</td> +<td></td> +</tr> +<tr> + <td>mx</td> + <td><i class="fa fa-circle-o"></i></td> + <td><i class="fa fa-circle"></i></td> + <td>Incoming and outgoing MX servers.</td> +</tr> +<tr> + <td>openvpn</td> + <td><i class="fa fa-circle"></i></td> + <td><i class="fa fa-circle-o"></i></td> + <td>OpenVPN gateways.</td> +</tr> +<tr> + <td>monitor</td> + <td><i class="fa fa-dot-circle-o"></i></td> + <td><i class="fa fa-dot-circle-o"></i></td> + <td>Nagios monitoring. This service must be on the webapp node.</td> +</tr> +<tr> + <td>tor</td> + <td><i class="fa fa-dot-circle-o"></i></td> + <td><i class="fa fa-dot-circle-o"></i></td> + <td>Tor exit node.</td> +</tr> +</table> + + +<p>Key: <i class="fa fa-circle"> Required</i>, <i class="fa fa-dot-circle-o"> Optional</i>, <i class="fa fa-circle-o"> Not Used</i></p> + +<p><div class=' page-summary'> +<h2> +<a href='services/couchdb.html'>couchdb</a> +</h2> +<div class='summary'>Data storage for all user data.</div> +</div> +<div class=' page-summary'> +<h2> +<a href='services/openvpn.html'>openvpn</a> +</h2> +<div class='summary'>OpenVPN egress gateways</div> +</div> +<div class=' page-summary'> +<h2> +<a href='services/monitor.html'>monitor</a> +</h2> +<div class='summary'>Nagios monitoring and continuous testing.</div> +</div> +<div class=' page-summary'> +<h2> +<a href='services/mx.html'>mx</a> +</h2> +<div class='summary'>Incoming and outgoing MX servers.</div> +</div> +<div class=' page-summary'> +<h2> +<a href='services/soledad.html'>soledad</a> +</h2> +<div class='summary'>User data synchronization daemon</div> +</div> +<div class=' page-summary'> +<h2> +<a href='services/tor.html'>tor</a> +</h2> +<div class='summary'>Tor exit node or hidden service</div> +</div> +<div class=' page-summary'> +<h2> +<a href='services/webapp.html'>webapp</a> +</h2> +<div class='summary'>leap_web user management application and provider API.</div> +</div> +</p> + +</div> +</div> +</body> +</html> |