Version: 6.4.1

Cluster Sizing Guidelines

This is a guide to general Kubernetes cluster sizing for your Cortex Fabric installation.

Additional sizing instructions are included for specific platforms on the prerequisites pages:

Baseline System Configuration

ConsiderationValue
Kubernetes versionv1.22 or higher
Number of nodes3
Number of CPUs/vCPUs4
RAM16GB
Container runtimedocker://19.3.6
Disk space / host128GB
k8sinstalled and running
Mongo DB storage50GB per replica PVC
Redis storage8GB per replica PVC
Blob storage100GB

Baseline Considerations

The base footprint for the Fabric installation is based on the following:

  • Fabric employs 8 services and an operator each scaled to 1 node.
  • Each of 9 services processes Istio sidecar requests.
  • Additional sidecar requests are processed by Dex, OpenLDAP, and Docker-registry
  • Vault sidecar requests are processed by each of 9 services
  • The Fabric API can be configured to one of five Java options:
    • -Xms1g
    • -Xmx8g
    • -XX:+UseG1GC
    • -XX:+UseStringDeduplication
    • -XX:+OptimizeStringConcat'

Considerations beyond these basic requirements will determine a need for additional resources.

Platform sizing analysis recommendations

Disaster Recovery (DR) Considerations

ConfigurationValues
Availability ZonesPrimary and secondary zones configured
Shared Service: MongoApproach 1: VPC Peering (1 cluster with 6 nodes. 3 on geo1 and 3 on geo2)
Approach 2 : Synced to a separate cluster
Shared Service: RedisTBD based on Mongo’s configuration
Anticorruption of databases: Mongo and RedisEnable backup to S3
Restore upon corruption

More information on Disaster Recovery

High Availability (HA) Considerations

We recommend scaling all the Cortex services to 3 or enabling autoscaling for HA.