This page discusses horizontal scaling to meet increasing demands.
The page does not cover scaling services such as Kafka, Zookeeper, and PostgreSQL Metrics.
Horizontal Scaling of ESS#
Horizontal scaling of ESS involves adding more worker nodes (VMs) to run additional instances of ESS services; for instance, having 2 instances of Pod Storage service, each running on a separate server, instead of a single Pod Storage service running on one server.
Scale Services Independently#
With ESS, you can scale each service independently of each other. For example, you can have 3 instances of the Pod Storage service and 1 instance of the Solid OIDC Broker Service.
All user-facing ESS services (Pod Storage, etc.) are stateless. Using stateless services strongly supports horizontal scaling as a user’s requests to a given service do not need to route to the same instance of that service.
Scale a Deployment#
You can use Kustomize Overlays to scale your deployment.
Example: Scale a Deployment#
Adding more Pod provisioning helps with resiliency. The following
example file sets the number of replicas for
Go to your ESS installation directory:
kustomization.yaml(i.e., step 3 of the Applying Your Customizations procedure).
Specifically, add the highlighted content to the
kustomization.yamlfile under the
replicaskey does not exist in
kustomization.yaml, add the key
# kustomization.yaml in your ESS installation directory # ... Preceding content omitted for brevity # ... replicas: - name: ess-pod-provision count: 2
Continue with the rest of the Applying Your Customizations procedure.