stolostron / multicluster-controlplane

A standalone controlplane to run ocm core.
Apache License 2.0
1 stars 5 forks source link

remove managed fields for objects in cache. #49

Closed morvencao closed 1 year ago

morvencao commented 1 year ago

ref: https://issues.redhat.com/browse/ACM-5626

morvencao commented 1 year ago

@clyang82 @skeeey

Do we need the managedFields for objects in cache, they're used for server side apply and occupy lots of space. In my experiment, I create 4 managed cluster with 40 policies, before the change, the memory consumption is:

# kubectl --kubeconfig management.kubeconfig -n multicluster-controlplane-1 top po
NAME                                                              CPU(cores)   MEMORY(bytes)
controlplane1-hosted-mc1-multicluster-controlplane-agent-6twvvm   2m           89Mi
controlplane1-hosted-mc2-multicluster-controlplane-agent-6ntnq5   3m           90Mi
controlplane1-hosted-mc3-multicluster-controlplane-agent-bjdn8g   2m           80Mi
controlplane1-hosted-mc4-multicluster-controlplane-agent-56r2bn   3m           83Mi
multicluster-controlplane-6b88c4db6-jl9k9                         10m          521Mi

After the change, the memory consumption is:

# kubectl --kubeconfig management.kubeconfig -n multicluster-controlplane-1 top pod
NAME                                                              CPU(cores)   MEMORY(bytes)
controlplane1-hosted-mc1-multicluster-controlplane-agent-8zppdd   2m           86Mi
controlplane1-hosted-mc2-multicluster-controlplane-agent-7jw4kk   2m           100Mi
controlplane1-hosted-mc3-multicluster-controlplane-agent-5v9xm9   4m           90Mi
controlplane1-hosted-mc4-multicluster-controlplane-agent-6w9mrx   1m           85Mi
multicluster-controlplane-5876d87f56-6x7tv                        20m          354Mi
openshift-ci[bot] commented 1 year ago

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: clyang82, morvencao

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files: - ~~[OWNERS](https://github.com/stolostron/multicluster-controlplane/blob/main/OWNERS)~~ [clyang82,morvencao] Approvers can indicate their approval by writing `/approve` in a comment Approvers can cancel approval by writing `/approve cancel` in a comment