Presentation is loading. Please wait.

Presentation is loading. Please wait.

Policy-Based Scheduling: Improving Resources Provisioning In OpenStack May 12 th, 2014 Atlanta Khanh-Toan TRAN (R&D Engineer)

Similar presentations


Presentation on theme: "Policy-Based Scheduling: Improving Resources Provisioning In OpenStack May 12 th, 2014 Atlanta Khanh-Toan TRAN (R&D Engineer)"— Presentation transcript:

1 Policy-Based Scheduling: Improving Resources Provisioning In OpenStack May 12 th, 2014 Atlanta Khanh-Toan TRAN (R&D Engineer) khanh-toan.tran@cloudwatt.com

2 Outline Motivation  Why Smart Placement ? Current Openstack Provisioning  Overview  Limitation Proposed Policy-Based Scheduler Usecases & Demo Meta-scheduling Motivation  Why Smart Placement ? Current Openstack Provisioning  Overview  Limitation Proposed Policy-Based Scheduler Usecases & Demo Meta-scheduling

3 MOTIVATIONMOTIVATION

4 Smart Placement Expectations For the clients perspective  Contract guarantee  Transparency  Better experience  More services, more offers  Attractive price For the cloud provider perspective  Flexible scheduling Scheduling per client Scheduling per resources Scheduling per context  Capable of realizing different admin objectives and operations  Efficient and simplified control and management by policies For the clients perspective  Contract guarantee  Transparency  Better experience  More services, more offers  Attractive price For the cloud provider perspective  Flexible scheduling Scheduling per client Scheduling per resources Scheduling per context  Capable of realizing different admin objectives and operations  Efficient and simplified control and management by policies

5 Smart Placement Big Picture Smart Placement Compute, storage and network nodes, etc … Datacenter 1Datacenter 2Datacenter n Cloud provider operation Clients Environmental info Client contract Regulation OpenStack High-level requirements Environmental info Infrastructure info Security policies

6 OVERVIEW OF THE EXISTING OPENSTACK PROVISIONING

7 Placement in Openstack: FilterScheduler Filter_Scheduler Nova-scheduler Filter Weigh Request Filter Weigh 1 VM 2VCPU, 2GB RAM Service=gold Filtering Weighing Compute 1 8VCPU; 8Go Compute 2 3VCPU; 4Go weight = 8 weight = 4 Compute 1 8VCPU; 8GB RAM Compute 2 3VCPU; 4GB RAM Compute 3 4VCPU; 1GB RAM Service=gold Compute 4 8VCPU; 8GB RAM Service=gold Compute 1 8VCPU; 8GB RAM Compute 2 3VCPU; 4GB RAM Compute 3 4VCPU; 1GB RAM Compute 4 8VCPU; 4GB RAM Openstack Nova:  Scheduling Module : Driver  Default driver: FilterScheduler 1.Filters out hosts that are not admissible to hosts the VMs (Filter). 2.Weighs the remaining hosts following their capacity (Weigher) Openstack Nova:  Scheduling Module : Driver  Default driver: FilterScheduler 1.Filters out hosts that are not admissible to hosts the VMs (Filter). 2.Weighs the remaining hosts following their capacity (Weigher)

8 FilterScheduler Limitations Static scheduling  Difficult to answer to admin’s various objectives  Ineffective in management in different situations (maintenance, failure, breakout, catastrophe…) Lack of client context  No consideration for each client requirements  Client contract is not taken into account Lack of consideration for infrastructure  Unable to provide fine-grain scheduling Static scheduling  Difficult to answer to admin’s various objectives  Ineffective in management in different situations (maintenance, failure, breakout, catastrophe…) Lack of client context  No consideration for each client requirements  Client contract is not taken into account Lack of consideration for infrastructure  Unable to provide fine-grain scheduling Example: A cloud service provider wishes to apply the global Load Balancing policy to the whole datacenter and a local Consolidation policy to a cluster of hosts. Example: A cloud service provider wishes to apply the global Load Balancing policy to the whole datacenter and a local Consolidation policy to a cluster of hosts. Unfeasible

9 Two-step approach for the situation improvement Short term  Policy-based scheduling solution (incremental): Enhancing the existing Nova-centric architecture. Mid / Long term  Meta-scheduling solution (disruptive): independent scheduling service for OpenStack on top of Nova, Cinder and Neutron. Short term  Policy-based scheduling solution (incremental): Enhancing the existing Nova-centric architecture. Mid / Long term  Meta-scheduling solution (disruptive): independent scheduling service for OpenStack on top of Nova, Cinder and Neutron.

10 POLICY-BASED SCHEDULING (SHORT TERM) POLICY-BASED SCHEDULING (SHORT TERM)

11 Policy-Based Scheduling Module Decoupling the scheduling logic and the execution domain The scheduling logic is represented as Rule: Target – Effect – Condition with correspondent Plugins. Rules are stored in Policy Repository (PR) Policy-Based Scheduling Engine (PBSE) consults the Policy Repository to find and execute the suitable rules Policy-Based Scheduler (PBS) is the proxy between Nova- scheduler and PBSE Decoupling the scheduling logic and the execution domain The scheduling logic is represented as Rule: Target – Effect – Condition with correspondent Plugins. Rules are stored in Policy Repository (PR) Policy-Based Scheduling Engine (PBSE) consults the Policy Repository to find and execute the suitable rules Policy-Based Scheduler (PBS) is the proxy between Nova- scheduler and PBSE Nova-scheduler Filter Weigh Client request Filter Weigh Policy-Based Scheduler (PBS) Policy-Based Scheduling Engine (PBSE) Policy Repository Plugin

12 Policy-Based Scheduling Nova-scheduler Filter Weigh Client request Filter Weigh Policy-Based Scheduler (PBS) Policy-Based Scheduling Engine (PBSE) Policy Repository Plugin TargetRules « all »{ «effect »: {« LoadBalancing»: «Ram » }, «condition » : «all» } « aggr: aggr-1 » { « effect »:{« Consolidation»:«Ram»}, «condition » : « all » } Service_Class_Plugin LoadBalancing_Plugin Consolidation_Plugin

13 Policy-Based Scheduling Availability-Zone-1 Aggregate-1 Server- 01 Server- 02 Availability-Zone-2 Aggr-2Aggr-3 Load-Balancing Consolidation Server- 03 Server- 04

14 USE CASES & DEMO

15 Usecases and Demo Use Cases 1: Respecting the regulationRespecting the regulation  A French medical company wants that all their VMs and data are hosted in France as requested by French authority  All VMs are initiated in France zone regardless of the choice of the users (e.g. employees) Use Case 2: Enforcing the client contractEnforcing the client contract  A client signs a gold contract  All his VMs are initiated in the gold zone with high-end equipments (e.g. high freq. CPU, high-mem, SSD storage…) Use Case 3: Reducing software licencesReducing software licences  A cloud provider signs a contract with an ISV which charges the license fee based on the number of hardware  Admin wants to apply 2 policies: A global Load-Balancing policy in all his datacenter to favor the load sharing and limiting the overload A local Consolidation policy in the zone dedicated to the software to reduce the number of charged physical servers Use Cases 1: Respecting the regulationRespecting the regulation  A French medical company wants that all their VMs and data are hosted in France as requested by French authority  All VMs are initiated in France zone regardless of the choice of the users (e.g. employees) Use Case 2: Enforcing the client contractEnforcing the client contract  A client signs a gold contract  All his VMs are initiated in the gold zone with high-end equipments (e.g. high freq. CPU, high-mem, SSD storage…) Use Case 3: Reducing software licencesReducing software licences  A cloud provider signs a contract with an ISV which charges the license fee based on the number of hardware  Admin wants to apply 2 policies: A global Load-Balancing policy in all his datacenter to favor the load sharing and limiting the overload A local Consolidation policy in the zone dedicated to the software to reduce the number of charged physical servers

16 META-SCHEDULING (MID / LONG TERM) META-SCHEDULING

17 Meta-Scheduling Policy-Based Scheduler blueprint: https://blueprints.launchpad.net/nova/+spec/policy-based-scheduler

18 Meta-Scheduling

19

20

21 Related works Scheduler service: Gantt  https://blueprints.launchpad.net/nova/+spec/scheduler-lib https://blueprints.launchpad.net/nova/+spec/scheduler-lib  https://blueprints.launchpad.net/nova/+spec/remove-cast-to-schedule- run-instance https://blueprints.launchpad.net/nova/+spec/remove-cast-to-schedule- run-instance  Remove DB between scheduler and compute nodes  https://blueprints.launchpad.net/nova/+spec/no-db-scheduler https://blueprints.launchpad.net/nova/+spec/no-db-scheduler Instance Group API  https://blueprints.launchpad.net/nova/+spec/instance-group-api- extension https://blueprints.launchpad.net/nova/+spec/instance-group-api- extension Support for Multiple Active Schedulers  https://blueprints.launchpad.net/nova/+spec/multiple-scheduler-drivers https://blueprints.launchpad.net/nova/+spec/multiple-scheduler-drivers SolverScheduler  https://blueprints.launchpad.net/nova/+spec/solver-scheduler https://blueprints.launchpad.net/nova/+spec/solver-scheduler Scheduler service: Gantt  https://blueprints.launchpad.net/nova/+spec/scheduler-lib https://blueprints.launchpad.net/nova/+spec/scheduler-lib  https://blueprints.launchpad.net/nova/+spec/remove-cast-to-schedule- run-instance https://blueprints.launchpad.net/nova/+spec/remove-cast-to-schedule- run-instance  Remove DB between scheduler and compute nodes  https://blueprints.launchpad.net/nova/+spec/no-db-scheduler https://blueprints.launchpad.net/nova/+spec/no-db-scheduler Instance Group API  https://blueprints.launchpad.net/nova/+spec/instance-group-api- extension https://blueprints.launchpad.net/nova/+spec/instance-group-api- extension Support for Multiple Active Schedulers  https://blueprints.launchpad.net/nova/+spec/multiple-scheduler-drivers https://blueprints.launchpad.net/nova/+spec/multiple-scheduler-drivers SolverScheduler  https://blueprints.launchpad.net/nova/+spec/solver-scheduler https://blueprints.launchpad.net/nova/+spec/solver-scheduler

22 Thanks for your attention khanh-toan.tran@cloudwatt.com Policy-Based Scheduler blueprint: https://blueprints.launchpad.net/nova/+spec/policy-based-scheduler


Download ppt "Policy-Based Scheduling: Improving Resources Provisioning In OpenStack May 12 th, 2014 Atlanta Khanh-Toan TRAN (R&D Engineer)"

Similar presentations


Ads by Google