Scaling
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.
Stateless Services
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 ess-pod-provision
deployment to 2
.
Go to your ESS installation directory:
cd ${HOME}/ess
Modify the
kustomization.yaml
(i.e., step 3 of the Applying Your Customizations procedure). Specifically, add the highlighted content to thekustomization.yaml
file under thereplicas
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.
Last updated