OpenShift Data Foundation 的多云对象网关默认配置针对低资源消费并且非性能进行了优化。
解析度
注意事项
大文件
在这种情况下,元数据与数据的比率很低。增加端点(内存和 CPU)的资源和端点的数量将是第一件事。在命名空间桶的情况下,只有 mem 就足够了。CPU 主要对数据桶很重要,其中端点使用 CPU 进行加密和重复数据删除。
小对象
在这种情况下,元数据与数据的比率很高。对于数据桶,这意味着核心和数据库的高度参与。增加这些 pod 资源将是第一步。如果核心和数据库快速响应,端点内存可能不会受到压力。如果他们的响应速度不够快,就会形成背压,端点最终会承受压力。以及。在这种情况下,我们希望同时增加核心和数据库,更加强调数据库本身。
大量的配置实体,如大量的buckets、accounts
这也会指向DB和core,更强调core。
使用命名空间桶时,增加端点的内存以及数据库的内存和 CPU 将是第一步。
如上所述,影响多云对象网关 (MCG) 性能的主要变量按影响排序:
1.MCG 数据库资源 - 您需要根据工作负载特征增加 CPU 和内存。
2.MCG auto scale min/max size - 这会改善对峰值的响应,但它在开始之前也有延迟,因此设置最小和最大尺寸很重要。
3.MCG 核心资源 - 您需要根据工作负载特征增加 CPU 和内存。
4.确保使用其服务地址“https://s3.openshift-storage.svc”或“http://s3.openshift-storage.svc”连接到 NooBaa 端点,因为它直接连接到 NooBaa 端点
您可以使用如下命令整机自动缩放:
oc patch -n openshift-storage storagecluster ocs-storagecluster \
--type merge \
--patch '{"spec": {"multiCloudGateway": {"endpoints": {"minCount": 3,"maxCount": 10}}}}'
本会会将NooBaa Endpoint Horizontal Pod Autoscaling 设置为部至少3个Pod并在需要时扩展到10个Pod。默认是部至少1个Pod,最多2个Pod。
可以通过存储群 CR 调整 MCG 核心和数据库资源。
apiVersion: ocs.openshift.io/v1
kind: StorageCluster
metadata:
creationTimestamp: "2022-01-15T13:40:42Z"
generation: 4
name: ocs-storagecluster
namespace: openshift-storage
resourceVersion: "29406833"
selfLink: /apis/ocs.openshift.io/v1/namespaces/openshift-storage/storageclusters/ocs-storagecluster
uid: 9f970119-379c-11ea-949c-02bb7e7e425c
spec:
manageNodes: false
resources:
noobaa-core:
limits:
cpu: "3" <-----
memory: "4Gi" <-----
requests:
cpu: "3" <-----
memory: "4Gi" <-----
noobaa-db:
limits:
cpu: "3" <-----
memory: "4Gi" <-----
requests:
cpu: "3" <-----
memory: "4Gi" <-----
noobaa-endpoint:
limits:
cpu: "3" <-----
memory: 4Gi <-----
requests:
cpu: "3" <-----
memory: 4Gi <-----
storageDeviceSets:
.
.
.
您可以通过执行以下命令来应用上述值:
oc patch -n openshift-storage storagecluster ocs-storagecluster \
--type merge \
--patch '{"spec": {"resources": {"noobaa-core": {"limits": {"cpu": "3","memory": "4Gi"},"requests": {"cpu": "3","memory": "4Gi"}},"noobaa-db": {"limits": {"cpu": "3","memory": "4Gi"},"requests": {"cpu": "3","memory": "4Gi"}},"noobaa-endpoint": {"limits": {"cpu": "3","memory": "4Gi"},"requests": {"cpu": "3","memory": "4Gi"}}}}}'
请珍惜劳动成果,支持原创,欢迎点赞或者关注收藏,你每一次的点赞和收藏都是作者的动力,内容如有问题请私信随时联系作者,谢谢!