13579: Remove some example output because I don't know if it is up to date.
[arvados.git] / doc / install / configure-s3-object-storage.html.textile.liquid
1 ---
2 layout: default
3 navsection: installguide
4 title: Configure S3 object storage
5 ...
6 {% comment %}
7 Copyright (C) The Arvados Authors. All rights reserved.
8
9 SPDX-License-Identifier: CC-BY-SA-3.0
10 {% endcomment %}
11
12 As an alternative to local and network-attached POSIX filesystems, Keepstore can store data in object storage compatible with the S3 API, such as Amazon S3, Google Cloud Storage, or Ceph RADOS.
13
14 h2. Configure keepstore
15
16 Copy the "access key" and "secret key" to files where they will be accessible to keepstore at startup time.
17
18 <notextile>
19 <pre><code>~$ <span class="userinput">sudo sh -c 'cat &gt;/etc/arvados/keepstore/aws_s3_access_key.txt &lt;&lt;EOF'
20 zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz==
21 EOF</span>
22 ~$ <span class="userinput">sudo chmod 0400 /etc/arvados/keepstore/aws_s3_access_key.txt</span>
23 </code></pre>
24 </notextile>
25
26 Next, edit the @Volumes@ section of the @keepstore.yml@ config file:
27
28 <pre>
29 Volumes:
30 - # The volume type, this indicates object storage compatible with the S3 API
31   Type: S3
32
33   # Storage provider (blank uses Amazon S3 by default)
34   Endpoint: ""
35
36   # The bucket to use for the backing store.
37   Bucket: example-bucket-name
38
39   # The region where the bucket is located.
40   Region: us-east-1
41
42   # The credentials to use to access the bucket.
43   AccessKeyFile: /etc/arvados/keepstore/aws_s3_access_key.txt
44   SecretKeyFile: /etc/arvados/keepstore/aws_s3_secret_key.txt
45
46   # Maximum time to wait making the initial connection to the backend before
47   # failing the request.
48   ConnectTimeout: 1m0s
49
50   # Page size for s3 "list bucket contents" requests
51   IndexPageSize: 1000
52
53   # True if the region requires a LocationConstraint declaration
54   LocationConstraint: false
55
56   # Maximum eventual consistency latency
57   RaceWindow: 24h0m0s
58
59   # If true, do not accept write or trash operations, only reads.
60   ReadOnly: false
61
62   # Maximum time to wait for a complete response from the backend before
63   # failing the request.
64   ReadTimeout: 5m0s
65
66   # How much replication is performed by the underlying bucket.
67   # This is used to inform replication decisions at the Keep layer.
68   S3Replication: 2
69
70   # Storage classes to associate with this volume.  See "Configuring
71   # storage classes" in the "Admin" section of doc.arvados.org.
72   StorageClasses: null
73
74   # Enable deletion (garbage collection) even when TrashLifetime is
75   # zero.  WARNING: eventual consistency may result in race conditions
76   # that can cause data loss.  Do not enable this unless you know what
77   # you are doing.
78   UnsafeDelete: false
79
80 - # Example configuration using alternate storage provider
81   # Configuration for Google cloud storage
82   Endpoint: https://storage.googleapis.com
83   Region: ""
84
85   AccessKeyFile: /etc/arvados/keepstore/gce_s3_access_key.txt
86   SecretKeyFile: /etc/arvados/keepstore/gce_s3_secret_key.txt
87   Bucket: example-bucket-name
88   ConnectTimeout: 1m0s
89   IndexPageSize: 1000
90   LocationConstraint: false
91   RaceWindow: 24h0m0s
92   ReadOnly: false
93   ReadTimeout: 5m0s
94   S3Replication: 2
95   StorageClasses: null
96   UnsafeDelete: false
97 </pre>
98
99 Start (or restart) keepstore, and check its log file to confirm it is using the new configuration.