-
Notifications
You must be signed in to change notification settings - Fork 10
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
Add documentation specifically for OpenShift Virtualization users #93
base: main
Are you sure you want to change the base?
Conversation
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Barakmor1 Hi, great detailed work! I have some questions below
docs/cnv-configuration.md
Outdated
* `vmiCalcConfigName` - Defines how resource counting is managed for VM-associated pods. The available options are: | ||
* `VmiPodUsage` - Counts compute resources for VM-associated pods in the same way as native resource quotas, while excluding migration-related resources. | ||
* `VirtualResources` - Counts compute resources based on the VM's specifications, using the VM's RAM size for memory and CPU threads for processing. | ||
* `DedicatedVirtualResources` (default) - Similar to VirtualResources, but separates resource tracking for VM-associated pods by adding a `/vmi` suffix to CPU and memory resource names (e.g., `requests.cpu/vmi`, `limits.memory/vmi`), distinguishing them from other pods. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To me its not clear what is the added value of having the DedicatedVirtualResources
option
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The DedicatedVirtualResources option is helpful for users who want to run both pods and virtual machines in the same namespace. This option allows you to set separate resource limits for VMs (ram and virtual cpu) and pods (native resources), making it easier to manage their respective quotas.
The VirtualResources option is useful when you only have VMs in the namespace and prefer to use the standard resource names (requests.cpu, limits.memory) for quota management, without the need to differentiate between pods and VMs.
docs/cnv-configuration.md
Outdated
non-schedulable resources are supported by both AAQ quota and AAQ cluster | ||
quota by managing a k8s resource quota behind the scenes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does it mean that AAQ opeator creates ResourceQuota and ClusterResourceQouta?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, the AAQ operator creates ResourceQuota and ClusterResourceQuota to enforce limits on non-schedulable resources like PVCs or ClusterRoles. Since these can’t be managed with scheduling gates, AAQ uses native Kubernetes quotas as an alternative. This way, users don’t need to manually create separate native quotas for non-schedulable resources and AAQ quotas for pods.
docs/cnv-configuration.md
Outdated
|
||
For non-compute resources, the quota acts like the standard ResourceQuota. | ||
|
||
***Warning***: Pods that set `.spec.nodeName` are not allowed to use in any namespace where AAQ Operates. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does it mean that pod creation will be rejected at admission stage?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes exactly actually Kubernetes validation will reject the creation request
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Barakmor1 Looks good! See comments below
docs/cnv-configuration.md
Outdated
requests.memory: 1Gi | ||
limits.memory: 1Gi | ||
requests.cpu/vmi: "1" | ||
requests.memory/vmi: 1Gi |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In most situations, wouldn't we set requests.memory
above requests.memory/vmi
? i.e. wouldn't it be more realistic?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please remember that requests.memory/vmi
and requests.memory
are counted separately. requests.memory
is for pods not associated with virtual machines, while requests.memory/vmi
is only for pods associated with virtual machines, where we count the VM's RAM.
So, when we set requests.memory: 1Gi
and requests.memory/vmi: 1Gi
, it means that pods not associated with virtual machines can use up to 1Gi, and relevant VMs can use up to 1Gi of RAM.
I hope this answers your question.
docs/cnv-configuration.md
Outdated
|
||
The primary purpose of these managed quotas is to set unified quotas for bot native and extended | ||
accounting resources, eliminating the need to manage both ResourceQuota and AAQ quota, or | ||
ClusterResourceQuota and AAQ cluster quota separately. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe you can briefly mention that the aware quota is also better because it's not admission based?
Signed-off-by: bmordeha <bmordeha@redhat.com>
c485531
to
3fa2ef8
Compare
Add information about the events created by AAQ Signed-off-by: bmordeha <bmordeha@redhat.com>
What this PR does / why we need it:
Which issue(s) this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)
format, will close the issue(s) when PR gets merged):Fixes #
Special notes for your reviewer:
Release note: