2.8.5. 在组件级别自定义计算资源要求
通过 APIManager 自定义资源属性自定义 3scale 解决方案中的 Kubernetes 计算资源要求。这样做可自定义分配给特定 APIManager 组件的计算资源要求,即 CPU 和内存。
以下示例概述了如何自定义 system-master 的 system-provider 容器、backend-listener 和 zync-database 的计算资源要求:
apiVersion: apps.3scale.net/v1alpha1
kind: APIManager
metadata:
name: example-apimanager
spec:
backend:
listenerSpec:
resources:
requests:
memory: "150Mi"
cpu: "300m"
limits:
memory: "500Mi"
cpu: "1000m"
system:
appSpec:
providerContainerResources:
requests:
memory: "111Mi"
cpu: "222m"
limits:
memory: "333Mi"
cpu: "444m"
zync:
databaseResources:
requests:
memory: "111Mi"
cpu: "222m"
limits:
memory: "333Mi"
cpu: "444m"
其他资源
如需有关如何指定组件级别自定义资源要求的更多信息,请参阅 APIManager CRD 引用。
2.8.5.1. 默认 APIManager 组件计算资源 复制链接链接已复制到粘贴板!
当您将 APIManager spec.resourceRequirementsEnabled 属性配置为 true 时,会为 APIManager 组件设置默认计算资源。
下表中显示了为 APIManager 组件设置的特定计算资源默认值。
2.8.5.1.1. CPU 和内存单元 复制链接链接已复制到粘贴板!
下表说明了您将在计算资源默认值表中找到的单元。如需有关 CPU 和内存单元的更多信息,请参阅管理容器的资源。
资源单元解释
- m - milliCPU 或 millicore
- Mi - mebibytes
- Gi - gibibyte
- G - gigabyte
| 组件 | CPU 请求 | CPU 限值 | 内存请求 | 内存限值 |
|---|---|---|---|---|
| system-app 的 system-master | 50m | 1000m | 600Mi | 800Mi |
| system-app 的 system-provider | 50m | 1000m | 600Mi | 800Mi |
| system-app 的 system-developer | 50m | 1000m | 600Mi | 800Mi |
| system-sidekiq | 100m | 1000m | 500Mi | 2Gi |
| system-sphinx | 80m | 1000m | 250Mi | 512Mi |
| system-redis | 150m | 500m | 256Mi | 32Gi |
| system-mysql | 250m | 无限制 | 512Mi | 2Gi |
| system-postgresql | 250m | 无限制 | 512Mi | 2Gi |
| backend-listener | 500m | 1000m | 550Mi | 700Mi |
| backend-worker | 150m | 1000m | 50Mi | 300Mi |
| backend-cron | 50m | 150m | 40Mi | 80Mi |
| backend-redis | 1000m | 2000m | 1024Mi | 32Gi |
| apicast-production | 500m | 1000m | 64Mi | 128Mi |
| apicast-staging | 50m | 100m | 64Mi | 128Mi |
| zync | 150m | 1 | 250M | 512Mi |
| zync-que | 250m | 1 | 250M | 512Mi |
| zync-database | 50m | 250m | 250M | 2G |