Resource Allocation Guidelines
New resource allocation guidelines have been developed to help configure deployments to achieve optimal performance and cost-efficiency.
These guidelines are grouped into the following general deployment sizes:
- Small-scale: Customers with limited Kubernetes deployments and moderate workloads. 
- Medium-scale: Customers with moderate-sized Kubernetes environments and growing workloads. 
- Large-scale: Customers with extensive Kubernetes deployments and high-performance requirements. 
The following variables determine the deployment sizes listed above:
- Number of nodes per cluster 
- Total number of workloads per cluster 
- Total policy size per cluster 
Set the resources values in the appropriate pod spec (Kubelink or C-VEN) yaml file under the storage section, as shown in the following example:
storage:
  sizeGi: 1
  resources:
    limits:
      memory: 600Mi
    requests:
      memory: 500Mi
      cpu: 500mIf you have two parameters that match one category, and a third parameter that matches another, it’s important to select the category based on the highest value among them.
For instance, if the number of nodes per cluster is 8, and the total number of Kubernetes workloads is 500, but the average size of the policy is 1 Gi, the resource allocation should align with the large-scale resource allocation. This ensures that your resources are appropriately scaled to meet the demands of your workloads, optimizing performance and stability.
In practice, monitor these resources, and if usage is at 80% of these limits, then consider increasing.
NOTE that amounts are expressed in mebibytes (Mi) and gibibytes (Gi) and not in megabytes (MB) or gigabytes (GB).
Small-scale resource allocation
| Customer Category | Nodes per Cluster | Total K8s Workloads | Total Policy Size | |
|---|---|---|---|---|
| Small-scale | 1 - 10 | 0 - 1000 | 0 - 1.5 Mi | |
| Resources | C-VEN | Kubelink | Storage | |
| Requests | CPU | 0.5 | 0.5 | 0.5 | 
| Requests | memory | 600 Mi | 500 Mi | 500 Mi | 
| Limits | CPU | 1 | 1 | 1 | 
| Limits | memory | 700 Mi | 600 Mi | 600 Mi | 
| Volumes | size limits | n/a | n/a | 1 Gi | 
Medium-scale resource allocation
| Customer Category | Nodes per Cluster | Total K8s Workloads | Total Policy Size | |
|---|---|---|---|---|
| Medium-scale | 10 - 20 | 1000 - 5000 | 1.5 Mi - 500 Mi | |
| Resources | C-VEN | Kubelink | Storage | |
| Requests | CPU | 2 | 2 | 1 | 
| Requests | memory | 3 Gi | 5 Gi | 5 Gi | 
| Limits | CPU | 3 | 2 | 2 | 
| Limits | memory | 5 Gi | 7 Gi | 7 Gi | 
| Volumes | size limits | n/a | n/a | 5 Gi | 
Large-scale resource allocation
| Customer Category | Nodes per Cluster | Total K8s Workloads | Total Policy Size | |
|---|---|---|---|---|
| Large-scale | 20+ | 5000 - 8000 | 500 Mi - 1.5 Gi | |
| Resources | C-VEN | Kubelink | Storage | |
| Requests | CPU | 2 | 3 | 1 | 
| Requests | memory | 6 Gi | 10 Gi | 10 Gi | 
| Limits | CPU | 3 | 4 | 2 | 
| Limits | memory | 8 Gi | 12 Gi | 12 Gi | 
| Volumes | size limits | n/a | n/a | 10 Gi |