Merge branch 'master' into 6473-fetch-events-starting-at
[arvados.git] / doc / install / install-manual-prerequisites.html.textile.liquid
1 ---
2 layout: default
3 navsection: installguide
4 title: Prerequisites
5 ...
6
7 h2. Hardware (or virtual machines)
8
9 This guide assumes you have seven systems available in the same network subnet:
10
11 <div class="offset1">
12 table(table table-bordered table-condensed).
13 |_Function_|_Number of nodes_|
14 |Arvados API, Crunch dispatcher, Git, Websockets and Workbench|1|
15 |Arvados Compute node|1|
16 |Arvados Keepproxy server|1|
17 |Arvados Keepstore servers|2|
18 |Arvados Shell server|1|
19 |Arvados SSO server|1|
20 </div>
21
22 The number of Keepstore, shell and compute nodes listed above is a minimum. In a real production installation, you will likely run many more of each of those types of nodes. In such a scenario, you would probably also want to dedicate a node to the Workbench server and Crunch dispatcher, respectively. For performance reasons, you may want to run the database server on a separate node as well.
23
24 h2(#repos). Arvados package repositories
25
26 On any host where you install Arvados software, you'll need to set up an Arvados package repository.  They're available for several popular distributions.
27
28 h3. CentOS
29
30 Packages are available for CentOS 6.  First, register the Curoverse signing key in RPM's database:
31
32 {% include 'install_redhat_key' %}
33
34 Then save this configuration block in @/etc/yum.repos.d/arvados.repo@:
35
36 <notextile>
37 <pre><code>[arvados]
38 name=Arvados
39 baseurl=http://rpm.arvados.org/CentOS/$releasever/os/$basearch/
40 </code></pre>
41 </notextile>
42
43 h3. Debian and Ubuntu
44
45 Packages are available for Debian 7 ("wheezy") and Ubuntu 12.04 ("precise").
46
47 First, register the Curoverse signing key in apt's database:
48
49 {% include 'install_debian_key' %}
50
51 Configure apt to retrieve packages from the Arvados package repository. This command depends on your OS vendor and version:
52
53 table(table table-bordered table-condensed).
54 |OS version|Command|
55 |Debian 7 ("wheezy")|<notextile><code><span class="userinput">echo "deb http://apt.arvados.org/ wheezy main" &#x7c; sudo tee /etc/apt/sources.list.d/arvados.list</span></code></notextile>|
56 |Ubuntu 12.04 ("precise")|<notextile><code><span class="userinput">echo "deb http://apt.arvados.org/ precise main" &#x7c; sudo tee /etc/apt/sources.list.d/arvados.list</span></code></notextile>|
57
58 Retrieve the package list:
59
60 <notextile>
61 <pre><code>~$ <span class="userinput">sudo apt-get update</span>
62 </code></pre>
63 </notextile>
64
65 h2. A unique identifier
66
67 Each Arvados installation should have a globally unique identifier, which is a unique 5-character lowercase alphanumeric string. For testing purposes, here is one way to make a random 5-character string:
68
69 <notextile>
70 <pre><code>~$ <span class="userinput">tr -dc 0-9a-z &lt;/dev/urandom | head -c5; echo</span>
71 </code></pre>
72 </notextile>
73
74 You may also use a different method to pick the unique identifier. The unique identifier will be part of the hostname of the services in your Arvados cluster. The rest of this documentation will refer to it as your @uuid_prefix@.
75
76
77 h2. SSL certificates
78
79 There are six public-facing services that will require an SSL certificate. If you do not have official SSL certificates, you can use self-signed certificates. By convention, we use the following hostname pattern:
80
81 <div class="offset1">
82 table(table table-bordered table-condensed).
83 |_Function_|_Hostname_|
84 |Arvados API|@uuid_prefix@.your.domain|
85 |Arvados Git server|git.@uuid_prefix@.your.domain|
86 |Arvados Keepproxy server|keep.@uuid_prefix@.your.domain|
87 |Arvados SSO Server|auth.your.domain|
88 |Arvados Websockets endpoint|ws.@uuid_prefix@.your.domain|
89 |Arvados Workbench|workbench.@uuid_prefix@.your.domain|
90 </div>