X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/b4f85f65a07e02d710ad32edeb86a1c5ea76d475..2966d83fa4e18eb62d1bbb1c9a0c39d9d845112f:/tools/salt-install/config_examples/multi_host/aws/pillars/arvados.sls diff --git a/tools/salt-install/config_examples/multi_host/aws/pillars/arvados.sls b/tools/salt-install/config_examples/multi_host/aws/pillars/arvados.sls index 03859c46bd..064a70a8ed 100644 --- a/tools/salt-install/config_examples/multi_host/aws/pillars/arvados.sls +++ b/tools/salt-install/config_examples/multi_host/aws/pillars/arvados.sls @@ -3,6 +3,14 @@ # # SPDX-License-Identifier: AGPL-3.0 +{%- set _workers = ("__CONTROLLER_MAX_WORKERS__" or grains['num_cpus']*2)|int %} +{%- set max_workers = [_workers, 8]|max %} +{%- set max_reqs = ("__CONTROLLER_MAX_QUEUED_REQUESTS__" or 128)|int %} +{%- set database_host = ("__DATABASE_EXTERNAL_SERVICE_HOST_OR_IP__" or "__DATABASE_INT_IP__") %} +{%- set database_name = "__DATABASE_NAME__" %} +{%- set database_user = "__DATABASE_USER__" %} +{%- set database_password = "__DATABASE_PASSWORD__" %} + # The variables commented out are the default values that the formula uses. # The uncommented values are REQUIRED values. If you don't set them, running # this formula will fail. @@ -68,10 +76,10 @@ arvados: database: # max concurrent connections per arvados server daemon # connection_pool_max: 32 - name: __CLUSTER___arvados - host: __DATABASE_INT_IP__ - password: "__DATABASE_PASSWORD__" - user: __CLUSTER___arvados + name: {{ database_name }} + host: {{ database_host }} + password: {{ database_password }} + user: {{ database_user }} encoding: en_US.utf8 client_encoding: UTF8 @@ -84,7 +92,7 @@ arvados: resources: virtual_machines: shell: - name: shell.__CLUSTER__.__DOMAIN__ + name: shell.__DOMAIN__ backend: __SHELL_INT_IP__ port: 4200 @@ -108,34 +116,30 @@ arvados: Password: __INITIAL_USER_PASSWORD__ ### API - {%- if "__CONTROLLER_MAX_CONCURRENT_REQUESTS__" != "" %} API: - MaxConcurrentRequests: __CONTROLLER_MAX_CONCURRENT_REQUESTS__ - {%- endif %} + MaxConcurrentRailsRequests: {{ max_workers * 2 }} + MaxConcurrentRequests: {{ max_reqs }} + MaxQueuedRequests: {{ max_reqs }} ### CONTAINERS + {%- set dispatcher_ssh_privkey = "__DISPATCHER_SSH_PRIVKEY__" %} Containers: MaxRetryAttempts: 10 CloudVMs: ResourceTags: Name: __CLUSTER__-compute-node BootProbeCommand: 'systemctl is-system-running' - ImageID: ami-FIXMEFIXMEFIXMEFI + ImageID: __COMPUTE_AMI__ Driver: ec2 DriverParameters: - Region: FIXME + Region: __COMPUTE_AWS_REGION__ EBSVolumeType: gp3 - AdminUsername: FIXME + AdminUsername: __COMPUTE_USER__ ### This SG should allow SSH from the dispatcher to the compute nodes - SecurityGroupIDs: ['sg-FIXMEFIXMEFIXMEFI'] - SubnetID: subnet-FIXMEFIXMEFIXMEFI - IAMInstanceProfile: __CLUSTER__-keepstore-00-iam-role - DispatchPrivateKey: | - -----BEGIN OPENSSH PRIVATE KEY----- - Read https://doc.arvados.org/install/crunch2-cloud/install-compute-node.html#sshkeypair - for details on how to create this key. - FIXMEFIXMEFIXME replace this with your dispatcher ssh private key - -----END OPENSSH PRIVATE KEY----- + SecurityGroupIDs: ['__COMPUTE_SG__'] + SubnetID: __COMPUTE_SUBNET__ + IAMInstanceProfile: __CLUSTER__-compute-node-00-iam-role + DispatchPrivateKey: {{ dispatcher_ssh_privkey|yaml_dquote }} ### VOLUMES ## This should usually match all your `keepstore` instances @@ -146,9 +150,9 @@ arvados: Replication: 2 Driver: S3 DriverParameters: - Bucket: __CLUSTER__-nyw5e-000000000000000-volume - IAMRole: __CLUSTER__-keepstore-00-iam-role - Region: FIXME + Bucket: __KEEP_AWS_S3_BUCKET__ + IAMRole: __KEEP_AWS_IAM_ROLE__ + Region: __KEEP_AWS_REGION__ Users: NewUsersAreActive: true @@ -158,17 +162,17 @@ arvados: Services: Controller: - ExternalURL: 'https://__CLUSTER__.__DOMAIN__:__CONTROLLER_EXT_SSL_PORT__' + ExternalURL: 'https://__DOMAIN__:__CONTROLLER_EXT_SSL_PORT__' InternalURLs: 'http://localhost:8003': {} DispatchCloud: InternalURLs: - 'http://__CONTROLLER_INT_IP__:9006': {} + 'http://__DISPATCHER_INT_IP__:9006': {} Keepbalance: InternalURLs: - 'http://__CONTROLLER_INT_IP__:9005': {} + 'http://__KEEPBALANCE_INT_IP__:9005': {} Keepproxy: - ExternalURL: 'https://keep.__CLUSTER__.__DOMAIN__:__KEEP_EXT_SSL_PORT__' + ExternalURL: 'https://keep.__DOMAIN__:__KEEP_EXT_SSL_PORT__' InternalURLs: 'http://localhost:25107': {} Keepstore: @@ -178,21 +182,21 @@ arvados: InternalURLs: 'http://localhost:8004': {} WebDAV: - ExternalURL: 'https://*.collections.__CLUSTER__.__DOMAIN__:__KEEPWEB_EXT_SSL_PORT__/' + ExternalURL: 'https://*.collections.__DOMAIN__:__KEEPWEB_EXT_SSL_PORT__/' InternalURLs: 'http://__KEEPWEB_INT_IP__:9002': {} WebDAVDownload: - ExternalURL: 'https://download.__CLUSTER__.__DOMAIN__:__KEEPWEB_EXT_SSL_PORT__' + ExternalURL: 'https://download.__DOMAIN__:__KEEPWEB_EXT_SSL_PORT__' WebShell: - ExternalURL: 'https://webshell.__CLUSTER__.__DOMAIN__:__KEEPWEB_EXT_SSL_PORT__' + ExternalURL: 'https://webshell.__DOMAIN__:__KEEPWEB_EXT_SSL_PORT__' Websocket: - ExternalURL: 'wss://ws.__CLUSTER__.__DOMAIN__/websocket' + ExternalURL: 'wss://ws.__DOMAIN__/websocket' InternalURLs: 'http://localhost:8005': {} Workbench1: - ExternalURL: 'https://workbench.__CLUSTER__.__DOMAIN__:__WORKBENCH1_EXT_SSL_PORT__' + ExternalURL: 'https://workbench.__DOMAIN__:__WORKBENCH1_EXT_SSL_PORT__' Workbench2: - ExternalURL: 'https://workbench2.__CLUSTER__.__DOMAIN__:__WORKBENCH2_EXT_SSL_PORT__' + ExternalURL: 'https://workbench2.__DOMAIN__:__WORKBENCH2_EXT_SSL_PORT__' InstanceTypes: t3small: