18600: Merge branch 'main'
[arvados.git] / tools / salt-install / config_examples / multi_host / aws / pillars / arvados.sls
1 ---
2 # Copyright (C) The Arvados Authors. All rights reserved.
3 #
4 # SPDX-License-Identifier: AGPL-3.0
5
6 # The variables commented out are the default values that the formula uses.
7 # The uncommented values are REQUIRED values. If you don't set them, running
8 # this formula will fail.
9 arvados:
10   ### GENERAL CONFIG
11   version: '__VERSION__'
12   ## It makes little sense to disable this flag, but you can, if you want :)
13   # use_upstream_repo: true
14
15   ## Repo URL is built with grains values. If desired, it can be completely
16   ## overwritten with the pillar parameter 'repo_url'
17   # repo:
18   #   humanname: Arvados Official Repository
19
20   release: __RELEASE__
21
22   ## IMPORTANT!!!!!
23   ## api, workbench and shell require some gems, so you need to make sure ruby
24   ## and deps are installed in order to install and compile the gems.
25   ## We default to `false` in these two variables as it's expected you already
26   ## manage OS packages with some other tool and you don't want us messing up
27   ## with your setup.
28   ruby:
29     ## We set these to `true` here for testing purposes.
30     ## They both default to `false`.
31     manage_ruby: true
32     manage_gems_deps: true
33     # pkg: ruby
34     # gems_deps:
35     #     - curl
36     #     - g++
37     #     - gcc
38     #     - git
39     #     - libcurl4
40     #     - libcurl4-gnutls-dev
41     #     - libpq-dev
42     #     - libxml2
43     #     - libxml2-dev
44     #     - make
45     #     - python3-dev
46     #     - ruby-dev
47     #     - zlib1g-dev
48
49   # config:
50   #   file: /etc/arvados/config.yml
51   #   user: root
52   ## IMPORTANT!!!!!
53   ## If you're intalling any of the rails apps (api, workbench), the group
54   ## should be set to that of the web server, usually `www-data`
55   #   group: root
56   #   mode: 640
57   dispatcher:
58     pkg:
59       name: arvados-dispatch-cloud
60     service:
61       name: arvados-dispatch-cloud
62
63   ### ARVADOS CLUSTER CONFIG
64   cluster:
65     name: __CLUSTER__
66     domain: __DOMAIN__
67
68     database:
69       # max concurrent connections per arvados server daemon
70       # connection_pool_max: 32
71       name: __CLUSTER___arvados
72       host: __DATABASE_INT_IP__
73       password: "__DATABASE_PASSWORD__"
74       user: __CLUSTER___arvados
75       encoding: en_US.utf8
76       client_encoding: UTF8
77
78     tls:
79       # certificate: ''
80       # key: ''
81       # required to test with arvados-snakeoil certs
82       insecure: false
83
84     ### TOKENS
85     tokens:
86       system_root: __SYSTEM_ROOT_TOKEN__
87       management: __MANAGEMENT_TOKEN__
88       anonymous_user: __ANONYMOUS_USER_TOKEN__
89
90     ### KEYS
91     secrets:
92       blob_signing_key: __BLOB_SIGNING_KEY__
93       workbench_secret_key: __WORKBENCH_SECRET_KEY__
94
95     Login:
96       Test:
97         Enable: true
98         Users:
99           __INITIAL_USER__:
100             Email: __INITIAL_USER_EMAIL__
101             Password: __INITIAL_USER_PASSWORD__
102
103     ### CONTAINERS
104     Containers:
105       MaxRetryAttempts: 10
106       CloudVMs:
107         ResourceTags:
108           Name: __CLUSTER__-compute-node
109         BootProbeCommand: 'systemctl is-system-running'
110         ImageID: ami-FIXMEFIXMEFIXMEFI
111         Driver: ec2
112         DriverParameters:
113           Region: FIXME
114           EBSVolumeType: gp2
115           AdminUsername: FIXME
116           ### This SG should allow SSH from the dispatcher to the compute nodes
117           SecurityGroupIDs: ['sg-FIXMEFIXMEFIXMEFI']
118           SubnetID: subnet-FIXMEFIXMEFIXMEFI
119       DispatchPrivateKey: |
120         -----BEGIN OPENSSH PRIVATE KEY-----
121         Read https://doc.arvados.org/install/crunch2-cloud/install-compute-node.html#sshkeypair
122         for details on how to create this key.
123         FIXMEFIXMEFIXMEFI
124         -----END OPENSSH PRIVATE KEY-----
125
126     ### VOLUMES
127     ## This should usually match all your `keepstore` instances
128     Volumes:
129       # the volume name will be composed with
130       # <cluster>-nyw5e-<volume>
131       __CLUSTER__-nyw5e-000000000000000:
132         Replication: 2
133         Driver: S3
134         DriverParameters:
135           Bucket: __CLUSTER__-nyw5e-000000000000000-volume
136           IAMRole: __CLUSTER__-keepstore-00-iam-role
137           Region: FIXME
138       __CLUSTER__-nyw5e-0000000000000001:
139         Replication: 2
140         Driver: S3
141         DriverParameters:
142           Bucket: __CLUSTER__-nyw5e-000000000000001-volume
143           IAMRole: __CLUSTER__-keepstore-01-iam-role
144           Region: FIXME
145
146     Users:
147       NewUsersAreActive: true
148       AutoAdminFirstUser: true
149       AutoSetupNewUsers: true
150       AutoSetupNewUsersWithRepository: true
151
152     Services:
153       Controller:
154         ExternalURL: 'https://__CLUSTER__.__DOMAIN__:__CONTROLLER_EXT_SSL_PORT__'
155         InternalURLs:
156           'http://localhost:8003': {}
157       DispatchCloud:
158         InternalURLs:
159           'http://__CONTROLLER_INT_IP__:9006': {}
160       Keepbalance:
161         InternalURLs:
162           'http://localhost:9005': {}
163       Keepproxy:
164         ExternalURL: 'https://keep.__CLUSTER__.__DOMAIN__:__KEEP_EXT_SSL_PORT__'
165         InternalURLs:
166           'http://localhost:25107': {}
167       Keepstore:
168         InternalURLs:
169           'http://__KEEPSTORE0_INT_IP__:25107': {}
170           'http://__KEEPSTORE1_INT_IP__:25107': {}
171       RailsAPI:
172         InternalURLs:
173           'http://localhost:8004': {}
174       WebDAV:
175         ExternalURL: 'https://*.collections.__CLUSTER__.__DOMAIN__:__KEEPWEB_EXT_SSL_PORT__/'
176         InternalURLs:
177           'http://localhost:9002': {}
178       WebDAVDownload:
179         ExternalURL: 'https://download.__CLUSTER__.__DOMAIN__:__KEEPWEB_EXT_SSL_PORT__'
180       WebShell:
181         ExternalURL: 'https://webshell.__CLUSTER__.__DOMAIN__:__KEEPWEB_EXT_SSL_PORT__'
182       Websocket:
183         ExternalURL: 'wss://ws.__CLUSTER__.__DOMAIN__/websocket'
184         InternalURLs:
185           'http://localhost:8005': {}
186       Workbench1:
187         ExternalURL: 'https://workbench.__CLUSTER__.__DOMAIN__:__WORKBENCH1_EXT_SSL_PORT__'
188       Workbench2:
189         ExternalURL: 'https://workbench2.__CLUSTER__.__DOMAIN__:__WORKBENCH2_EXT_SSL_PORT__'
190
191     InstanceTypes:
192       t3small:
193         ProviderType: t3.small
194         VCPUs: 2
195         RAM: 2GiB
196         AddedScratch: 50GB
197         Price: 0.0208
198       c5large:
199         ProviderType: c5.large
200         VCPUs: 2
201         RAM: 4GiB
202         AddedScratch: 50GB
203         Price: 0.085
204       m5large:
205         ProviderType: m5.large
206         VCPUs: 2
207         RAM: 8GiB
208         AddedScratch: 50GB
209         Price: 0.096
210       c5xlarge:
211         ProviderType: c5.xlarge
212         VCPUs: 4
213         RAM: 8GiB
214         AddedScratch: 100GB
215         Price: 0.17
216       m5xlarge:
217         ProviderType: m5.xlarge
218         VCPUs: 4
219         RAM: 16GiB
220         AddedScratch: 100GB
221         Price: 0.192
222       m5xlarge_extradisk:
223         ProviderType: m5.xlarge
224         VCPUs: 4
225         RAM: 16GiB
226         AddedScratch: 400GB
227         Price: 0.193
228       c52xlarge:
229         ProviderType: c5.2xlarge
230         VCPUs: 8
231         RAM: 16GiB
232         AddedScratch: 200GB
233         Price: 0.34
234       m52xlarge:
235         ProviderType: m5.2xlarge
236         VCPUs: 8
237         RAM: 32GiB
238         AddedScratch: 200GB
239         Price: 0.384
240       c54xlarge:
241         ProviderType: c5.4xlarge
242         VCPUs: 16
243         RAM: 32GiB
244         AddedScratch: 400GB
245         Price: 0.68
246       m54xlarge:
247         ProviderType: m5.4xlarge
248         VCPUs: 16
249         RAM: 64GiB
250         AddedScratch: 400GB
251         Price: 0.768