[ 
https://issues.apache.org/jira/browse/YUNIKORN-1385?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17636015#comment-17636015
 ] 

Yongjun Zhang edited comment on YUNIKORN-1385 at 11/18/22 7:58 PM:
-------------------------------------------------------------------

Thanks [~wilfreds] [~zhuqi]

I updated the doc link for general access.

Thanks for the label pointer, 
https://kubernetes.io/docs/reference/labels-annotations-taints/#nodekubernetesioinstance-type
{quote}
node.kubernetes.io/instance-type
Example: node.kubernetes.io/instance-type: "m3.medium"

Used on: Node

The Kubelet populates this with the instance type as defined by the 
cloudprovider. This will be set only if you are using a cloudprovider. This 
setting is handy if you want to target certain workloads to certain instance 
types, but typically you want to rely on the Kubernetes scheduler to perform 
resource-based scheduling. You should aim to schedule based on properties 
rather than on instance types (for example: require a GPU, instead of requiring 
a g2.2xlarge).

{quote}

We may use the default j8s label key node.kubernetes.io/instance-type. I think 
it's probably still good to have a configuration to tell yunikorn what key to 
use for instance-type, but let the default key be 
"node.kubernetes.io/instance-type".

About
{quote}
I think we need to limit this Jira to a simple setup: track the time an 
allocation has been active in (milli) seconds for each resource type based on 
the requests. Expose that information in the REST call for the application. An 
application can have different sizes allocations it will give an indication of 
the overall usage.
{quote}
The reason we want to keep track of usage of different instance types is, the 
cost of different types may be different. same memoryseconds and vcoreseconds 
would mean differently for different instance types.

Any further thoughts?

Thanks.





was (Author: yzhangal):
Thanks [~wilfreds] [~zhuqi]

I updated the doc link for general access.

Thanks for the label pointer, 
https://kubernetes.io/docs/reference/labels-annotations-taints/#nodekubernetesioinstance-type
{quote}
node.kubernetes.io/instance-type
Example: node.kubernetes.io/instance-type: "m3.medium"

Used on: Node

The Kubelet populates this with the instance type as defined by the 
cloudprovider. This will be set only if you are using a cloudprovider. This 
setting is handy if you want to target certain workloads to certain instance 
types, but typically you want to rely on the Kubernetes scheduler to perform 
resource-based scheduling. You should aim to schedule based on properties 
rather than on instance types (for example: require a GPU, instead of requiring 
a g2.2xlarge).

{quote}

About
{quote}
I think we need to limit this Jira to a simple setup: track the time an 
allocation has been active in (milli) seconds for each resource type based on 
the requests. Expose that information in the REST call for the application. An 
application can have different sizes allocations it will give an indication of 
the overall usage.
{quote}
The reason we want to keep track of usage of different instance types is, the 
cost of different types may be different. same memoryseconds and vcoreseconds 
would mean differently for different instance types.

Any further thoughts?

Thanks.




> To provide visibility to application's aggregated resource consumption
> ----------------------------------------------------------------------
>
>                 Key: YUNIKORN-1385
>                 URL: https://issues.apache.org/jira/browse/YUNIKORN-1385
>             Project: Apache YuniKorn
>          Issue Type: New Feature
>          Components: core - common, core - scheduler, shim - kubernetes
>            Reporter: Yongjun Zhang
>            Assignee: Yongjun Zhang
>            Priority: Major
>         Attachments: image-2022-11-09-11-06-20-479.png, 
> yunikornResourceUsageVisibility.pdf
>
>
> Currently the "Used Resource" for a given application reported at Yunikorn 
> GUI is actually the snapshot of the resources currently allocated to the 
> application. We need to provide visibility to how much resources an 
> application has used so far, and it would be important to report  how much 
> total resources is used by the application. 
> The unit of resources used can be memoryseconds/vcoreseconds like how Hadoop 
> Yarn does in its app summary report. However, there is more complexity with 
> K8s which supports different instance types (Hadoop Yarn does support 
> multiple instance types but its app summary report ignored instance types). 
> It would be nice to report how much resource is used for each instance types 
> used by an application.
> This is a top level Jira for this new feature. Subtask jira will be created 
> when we work on it.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to