Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change default memory QoS to BestEffort for Velero data movement pods #7391

Closed
Lyndon-Li opened this issue Feb 6, 2024 · 1 comment
Closed

Comments

@Lyndon-Li
Copy link
Contributor

Lyndon-Li commented Feb 6, 2024

At present, node-agent pods holds the data movement activities for snapshot data movement backups/restores and pod volume backups/restores.
In future, we may move the activities to dedicate pods associate to node-agent.

For the both case, by default, we should not set memory limit to these pods so as to change their memory QoS as BestEffort (https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/#:~:text=%3Dqos%2Dexample-,Create%20a%20Pod%20that%20gets%20assigned%20a%20QoS%20class%20of%20BestEffort,-For%20a%20Pod).

The reason is simple - data movement activities' resource usage is very diversing, we cannot decide amount of memory usage for users. Therefore, by default, we use BestEffort and when users want to preserve enough memory for other more critical workloads, they can change the QoS by setting an explicit memory request/limit according to their status of data to be backed up.

@Lyndon-Li Lyndon-Li changed the title Change default Qos to BestEffort for Velero data movement pods Change default memory QoS to BestEffort for Velero data movement pods Feb 6, 2024
@reasonerjt reasonerjt added this to the v1.14 milestone Feb 6, 2024
@kaovilai
Copy link
Contributor

kaovilai commented Feb 28, 2024

I think this is a good change, have seen many environments needing custom limits, and it's hard to provide correct guidelines.
We had been defaulting to velero without cpu limits
openshift/oadp-operator#773

User will hit an issue if cpu has no limit when resourceQuota is used.
https://kubernetes.io/docs/concepts/policy/resource-quotas/

CPU/Memory requirements suggestion table

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants