Managing Apollo Router resources in Kubernetes
Recommendations and considerations for application pods
Self-hosting the Apollo Router is limited to
Determining the correct resource requests and limits for your application pods in a Kubernetes system is not an exact science. Your specific needs depend on many factors, including:
- The cardinality of unique operation shapes
- The latency of underlying subgraphs and data sources
- The size of responses
- The complexity of query plans
Our general recommendation for Kubernetes is to start with these requests and limits:
resources:requests:memory: '1G'cpu: '1000m'limits:memory: '2G'# no CPU limit to avoid throttling
💡 TIP
The
When using
metrics:- type: Resourceresource:name: cputarget:type: UtilizationaverageUtilization: 90- type: Resourceresource:name: memorytarget:type: UtilizationaverageUtilization: 90
The Apollo Router starts up quickly, but when using averageUtilization
if your startup time is longer due to Uplink latency or the size of your supergraph schema.