Weighted Fair Sharing for Dynamic Virtual Clusters

In a shared server infrastructure, a scheduler controls how quantities of resources are shared over time in a fair manner across multiple, competing consumers. It should support wide (parallel) requests for variable-sized pool of resources, provide assurance of minimum resource allotment on demand, and give predictable assignments. Our approach integrates a fair queuing algorithm with a calendar scheduler. We present Winks, a proportional share allocation policy that addresses the needs of shared server environments. It extends start-time fair queuing to support wide requests with backfill, advance reservations, dynamic cluster sizing, dynamic request sizing, and intra-flow request prioritization. It also preserves fairness properties across queue transformations and calendar operations needed to implement these extensions. Fair-share scheduling algorithms allocate system resources based on a defined assured share for each consumer. Fair sharing (also called proportional-share scheduling) algorithms have been applied to implement differentiated service quality for CPU scheduling and network packet scheduling, and more recently, to virtual machines. We apply fair sharing for resource control in shared clusters. In these environments, applications are hosted within virtual machines leased from a shared server pool [3] to obtain on-demand access and control over customized computing environments. The role of the fair-share scheduler is to arbitrate flows of requests for virtual machines or virtual clusters originating from a set of users or groups. Fairshare algorithms are work-conserving: they never leave a resource unit idle when it can be used to serve a pending request. They serve requests while assuring each active user or group a minimum share of the resources according to its assigned weight, and share any surplus resources to active ones proportionally to their weights. In essence, work-conserving proportional share has a “use it or lose it” property: a flow relinquishes its right to any portion of its share that it does not request to consume. To illustrate the importance of fair-share scheduling in this setting, consider a university cluster shared by multiple research groups, each of which contributes servers or other resources to the cluster. Suppose the policy is to allocate resources to each group in proportion to its contribution. If some group is not using its share of the servers, they become available for use by other groups. This policy uses shared resources efficiently while providing incentives for groups and departments to contribute resources to the shared cluster. To support fair sharing in virtual computing environments, we developed Winks 1 , a proportional share algorithm that merges weighted fair queuing and a calendar scheduler

Free download research paper