Skip to main content

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 paid squids deployed in professional organizations.

info

Visit the Pricing page and/or our costs calculator if you're looking for an estimate.

The manifest supports the following scaling options:

dedicated:

Default: dedicated: true.

When a dedicated profile is used, the resources that the squid requests are reserved in advance. This is the new/current default and is the recommended profile for production squids. Squid deployment must be dedicated to be a subject of SQD Cloud SLA.

By setting dedicated: false you can request for your deployment to be collocated - that is, share resources with other deployments. The allocation of full resources is not guaranteed for collocated squids.

All playground squids must use the collocated profile, that is, explicitly specify dedicated: false.

addons:

postgres:

See Postgres add-on for details.

services:

api:

NameDescriptionTypeDefault valueOptional
profileAllocated resources profilesmall | medium | large | xlarge | 2xlargesmallOptional
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
xlarge--46Gi
2xlarge--812Gi

processor:

NameDescriptionTypeDefault valueOptional
profileAllocated resources profilesmall | medium | large | xlarge | 2xlargesmallOptional

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
xlarge--46Gi
2xlarge--812Gi

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:
addons:
postgres:
storage: 100G
profile: medium
processor:
profile: medium
api:
profile: large
# load-balance three replicas
replicas: 3