2.7.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.7.5.1. 默认 APIManager 组件计算资源
当您将 APIManager spec.resourceRequirementsEnabled
属性配置为 true
时,会为 APIManager 组件设置默认计算资源。
下表中显示了为 APIManager 组件设置的特定计算资源默认值。
2.7.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 |