You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@yunikorn.apache.org by GitBox <gi...@apache.org> on 2020/10/05 21:17:31 UTC

[GitHub] [incubator-yunikorn-site] yangwwei commented on a change in pull request #27: [YUNIKORN-308] Document queue quota in hierarchy

yangwwei commented on a change in pull request #27:
URL: https://github.com/apache/incubator-yunikorn-site/pull/27#discussion_r499875783



##########
File path: docs/user_guide/resource_quota_mgmt.md
##########
@@ -82,36 +106,33 @@ partitions:
                 vcore: 10000
 ```
 
-in this example, we are going to setup 3 queues under root, and each of them has
-a specific min/max capacity set up.
-
-### Run workloads
-
-In order to run jobs in specific queues, you will need to set the following label in all pods' spec:
+### Run a workload
+In order to run applications in specific queues, you will need to set the following labels in all pod specs.
+All pods with the same `applicationID` label are considered ti be one application.
+In the below example the application `my-test-app` will run in the queue `root.sandbox`: 
 
 ```yaml
 labels:
   app: my-test-app
-  applicationId: " my-test-app-01"
+  applicationId: "my-test-app-01"
   queue: root.sandbox
 ```
 
-## Option 2) 1:1 mapping from namespaces to queues
+## Namespace to queue mapping
 
 ### Goal
-
-User just needs to setup namespaces, YuniKorn automatically maps each namespace to an internal resource queue (AKA dynamical queue).
-There is no additional steps to create YuniKorn queues, all queues will be created dynamically,
-resource allocation and quotas will be managed by YuniKorn instead of the namespace resource quota.
+Automatically map a Kubernetes `namespace` to a queue in YuniKorn.
+The user creates the required namespaces in Kubernetes. 
+The YuniKorn k8-shim and core scheduler automatically pass the required information and map the namespace to a queue, creating the queue if it does not exist.

Review comment:
       `k8-shim` -> `k8shim` or `k8s shim`

##########
File path: docs/user_guide/resource_quota_mgmt.md
##########
@@ -22,57 +22,81 @@ specific language governing permissions and limitations
 under the License.
 -->
 
-YuniKorn can offer more fine-grained resource quota management comparing to simply
-using namespace resource quota. Here are some how-to documents about setting up
-resource quota management with YuniKorn queues.
+## Quota configuration and rules
+YuniKorn can offer a finer grained resource quota management setup compared to the simple
+namespace resource quota provided by Kubernetes.
 
-## Option 1) Static queues
+Contrary to quotas in Kubernetes YuniKorn does not enforce quotas on submission but on actively consumed resources.
 
-### Goal
+Resource quotas in YuniKorn are linked to the queue and its place in the queue hierarchy.
+The base of the queue structure, the `root` queue, does not allow setting a quota as it reflects the current size of the cluster.
+Node additions and removals update the `root` queue quota automatically.
 
-Pre-setup a hierarchy of queues with min/max capacity, users can only submit
-jobs to the leaf queues. This approach fully manages the resource capacity for
-each of the queues, which is suitable to the scenarios that queues do not change
-too often.
+Beside the `root` queue the quotas can be set, and is enforced, at any point in the hierarchy. 
+Every queue can have a quota set. The quota is enforced recursively throughout the hierarchy.
+This means that a child queue can never use more resources than the **configured** quota of the parent queue.
+Setting a quota on a child queue larger than its parent queue's quota will not have any effect.

Review comment:
       > Setting a quota on a child queue larger than its parent queue's quota will not have any effect
   
   What does this mean?
   I think it is not allowed to set the child quota larger than its parent quota




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org