Skip to main content
logoTetrate Service BridgeVersion: 1.12.x

Resource Consumption and Capacity Planning

This document describes a conservative guideline for capacity planning of Tetrate Service Bridge (TSB) in Management and Control planes.

These parameters apply to production installations: TSB will run with minimal resources if you are using a demo-like environment.

disclaimer

The resource provisioning guidelines described in this document are very conservative.

Also please be aware that the resource provisioning described in this document are applicable to vertical resource scaling. Multiple replicas of the same TSB components do not share the load with each other, and therefore you cannot expect the combined resources from multiple components to have the same effect. Replicas of TSB components should only be used for high availability purposes only.

For a baseline installation of TSB with 100 clusters and 1000 services, the following resources are recommended.

To reiterate, the amount of memory described below are conservative. Also, the actual performance given by the number of vCPUs tend to fluctuate depending on your underlying infrastructure. You are advised to verify the results in your environment.

info

If you are using a Tetrate-hosted Management Plane, then the rows for the Management Plane and the XCP Central should be ignored

ComponentvCPU #Memory MiB
TSB server (tsb)22048
TSB operator (tsb-operator-management-plane)0.5512
XCP Central (central)22048
XCP operator (xcp-operator-central)0.125128
Front Envoy (envoy)2512
IAM (iam)0.25128
TSB UI (web)0.125256
OAP (oap)410240
OTEL Collector (otel-collector)0.25512
MPC (mpc)12048

The TSB stack is mostly CPU-bound. Additional clusters registered with TSB via XCP increase the CPU utilization by ~4%.

The effect of additional registered clusters or additional deployed workload services on memory utilisation is almost negligible. Likewise, the effect of additional clusters or workloads on resource consumption of the majority of TSB components is mostly negligible, with the notable exceptions of TSB, XCP Central component, TSB UI and IAM.

note

Components that are part of the visibility stack (e.g. OTel/OAP, etc.) have their resource utilisation driven by requests, thus the resource scaling should follow the user request rate statistics. As a general rule of thumb, more than 1 vCPU is preferred. It is also important to notice that the visibility stack performance is largely bound by Elasticsearch performance.

Thus, we recommend vertically scaling the components by 1 vCPU for a number of deployed workflows:

Management Plane

info

If you are using a Tetrate-hosted Management Plane, then you can skip this section

Besides OAP, All components don't require any resource adjustment. Those components are architectured and tested to support very large clusters.

OAP in Management plane requires extra CPU and Memory ~ 100 millicores of CPU and 1024 MiB of RAM per every 1000 services. E.g. 4000 services aggregated in TSB Management Plane from all TSB clusters would require approximately 400 millicores of CPU and 4096 MiB of RAM in total.

Control Plane Resource Requirements

Following table shows typical peak resource utilization for TSB control plane with the following assumptions:

  • 4,000 services with sidecars
  • Traffic on entire cluster is 500 requests-per-second
  • OAP trace sampling rate is 1% of the traffic
  • Metric is captured for every request at every workload.

Note that average CPU utilization would be a fraction of the typical peak value.

ComponentTypical Peak CPU (vCPU)Typical Peak Memory (Mi)
Istiod (istiod)12192
OAP (oap-deployment)36144
XCP Edge (edge)11024
XCP Operator (xcp-operator-edge)1256
TSB Control Plane Operator (tsb-operator-control-plane)0.25256
OTEL Collector (otel-collector)0.25256
Multiple Istio Revisions

Please be aware that when Isolation Boundary is configured with multiple boundaries in the ControlPlane configuration, a dedicated Istiod will be spawned for each revisions under an IsolationBoundary.

TSB/XCP Operator resource usage per Ingress Gateway

The following table shows the resources used by TSB Operator and Istio Operator per Ingress Gateways

Ingress GatewaysTSB Operator vCPU (m)TSB Operator Mem (Mi)XCP Operator vCPU (m)XCP Operator Mem (Mi)
030m120Mi10m75Mi
50200m165Mi1121m111Mi
100300m177Mi1154m138Mi
150400m191Mi1582m143Mi
200450m194MI1675m145Mi
250475m197Mi1714m171Mi
300500m198Mi1733m218Mi

Component resource utilization

The following tables will show how the different components of TSB scale with 4000 services and peaking with 60 rpm, this is divided by information from the Management Plane, and the Control Plane.

Management Plane

info

If you are using a Tetrate-hosted Management Plane, then skip this section

ServicesGatewaysTraffic(rpm)Central CPU(m)Central Mem(Mi)MPC CPU(m)MPC Mem(Mi)OAP CPU(m)OAP Mem(Mi)Otel CPU(m)Otel Mem(Mi)TSB CPU(m)TSB Mem(Mi)
000 rpm10m74.3Mi5m75.1Mi35m408Mi60m200Mi14m93MI
400260 rpm21m76.9Mi15m72.2Mi156m1650Mi65m220Mi50m95MI
800460 rpm25m91.8Mi24m85.4Mi170m1800Mi55m225Mi85m102MI
1200660 rpm30m109Mi32m92.1Mi103m1580Mi75m210Mi213m112MI
1600860 rpm50m138Mi44m106Mi114m1930Mi80m240Mi113m120Mi
20001060 rpm55m151Mi41m112Mi180m1750Mi50m220Mi211m135MI
24001260 rpm55m170Mi72m126Mi161m1880Mi85m240Mi227m128Mi
28001460 rpm70m180Mi73m137Mi129m2500Mi95m220Mi275m153Mi
32001660 rpm80m198Mi85m137Mi198m2380Mi65m240Mi382m178Mi
36001860 rpm125m211Mi94m146Mi284m2240Mi120m220Mi625m182Mi
40002060 rpm130m221Mi90m151Mi358m2210Mi110m240Mi508m190Mi
note

IAM will peak at 5m/32Mi, LDAP at 1m/12Mi and XCP Operator at 3m and 23Mi

Control Plane

ServicesGatewaysTraffic(rpm)Edge CPU(m)Edge Mem(Mi)Istiod CPU(m)Istiod Mem(Mi)OAP CPU(m)OAP Mem(Mi)Otel CPU(m)Otel Mem(Mi)
000 rpm45m77.3 MB6m110Mi601m2.05 GB16m74Mi
400260 rpm45m194 MB33m182Mi1011m2.15 GB18m75Mi
800460 rpm110m271 MB35m249Mi1070m3.11 GB21m85Mi
1200660 rpm125m366 MB68m286Mi2084m4.78 GB23m90Mi
1600860 rpm138m475 MB84m324Mi2673m5.79 GB20m75Mi
20001060 rpm156m595 MB84m357Mi2292m8.12 GB17m85Mi
24001260 rpm235m676 MB98m370Mi2534m8.42 GB19m85Mi
28001460 rpm289m778 MB334m450Mi3174m9.02 GB19m75Mi
32001660 rpm425m870 MB243m470Mi2657m9.32 GB20m80Mi
36001860 rpm533m948 MB130m489Mi2899m9.95 GB20m100Mi
40002060 rpm713m958 MB138m523Mi3275m10.1 GB20m110Mi
note

Metric Server will peak at 4m/24Mi, Onboarding Operator at 4m/24Mi, and XCP-Operator at 3m/22Mi

HPA (Horizontal Pod Autoscaling)

Management Plane

ComponentHPA
TSB server (tsb)No
TSB operator (tsb-operator-management-plane)No
XCP Central (central)No
XCP operator (xcp-operator-central)No
Front Envoy (envoy)Yes
IAM (iam)No
TSB UI (web)No
OAP (oap)Yes
OTEL Collector (otel-collector)Not supported - use vertical scaling
MPC (mpc)No

Control Plane

ComponentHPA
Istiod (istiod)Yes, but autoscaling not recommended (workload is spiky); deploy replicas if needed
OAP (oap-deployment)Yes
XCP Edge (edge)No
XCP Operator (xcp-operator-edge)No
TSB Control Plane Operator (tsb-operator-control-plane)No
OTEL Collector (otel-collector)Not supported - use vertical scaling