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