Skip to main content
Version: Current

Scale the deployment

The scale: section of the deployment manifest allows allocating additional computing resources for the squid add-ons and services. This option is only available for Premium Cloud accounts. To apply for a Premium account, fill the form.

The manifest supports the following scaling options:

dedicated:

Default: dedicated: false.

By default, the service deployments are collocated - that is, share resources with other deployments - and so the allocation of full resources is not guaranteed. With dedicated: true, the resources are reserved in advance.

We recommend setting dedicated: true for all squids running in production.

Squid deployment must be dedicated to be a subject of Subsquid Cloud SLA.

addons:

postgres:

See Postgres add-on for details.

services:

api:

NameDescriptionTypeDefault valueOptional
profileAllocated resources profilesmall | medium | largesmallOptional
replicasThe number of gateway replicas. The API requests are distributed between the replicas in the round-robin fashionNumber1Optional

The profile specifications for API service replicas are as follows:

Profilecolocated vCPU (max)colocated RAM (max)dedicated vCPU (requested)dedicated RAM (max)
small0.2768Mi0.5768Mi
medium0.51.5Gi11.5Gi
large13Gi23Gi

processor:

NameDescriptionTypeDefault valueOptional
profileAllocated resources profilesmall | medium | largesmallOptional

The profile specifications for a processor service are as follows:

Profilecolocated vCPU (max)colocated RAM (max)dedicated vCPU (requested)dedicated RAM (max)
small0.2768Mi0.5768Mi
medium0.51.5Gi11.5Gi
large13Gi23Gi

Example

squid.yaml
manifest_version: subsquid.io/v0.1
name: sample-squid

build:

deploy:
addons:
postgres:
processor:
cmd: [ "sqd", "process:prod" ]
api:
cmd: [ "sqd", "serve:prod" ]

scale:
dedicated: true
addons:
postgres:
storage: 100G
profile: medium
processor:
profile: medium
api:
profile: large
# load-balance three replicas
replicas: 3