[openstack-dev] 答复: [nova][ceilometer][gantt] Dynamic scheduling
Exactly. Thank you for your clarification. This is part of my job and my company would like to contribute to openstack. Also I hope we can have more discussion about scheduling. 发件人: Henrique Truta [mailto:henriquecostatr...@gmail.com] 发送时间: 2014年4月25日 1:16 收件人: OpenStack Development Mailing List (not for usage questions) 主题: Re: [openstack-dev] [nova][ceilometer][gantt] Dynamic scheduling Donald, By selection, I think Jenny means identifying whether and which active VM should be migrated, once the current Nova scheduler only deals with the VM in the momment of its creation or with a specific user input. 2014-04-24 12:08 GMT-03:00 Dugger, Donald D donald.d.dug...@intel.commailto:donald.d.dug...@intel.com: Jenny- You should look at the `Propose Scheduler Library blueprint’: https://review.openstack.org/#/c/82133/9 This BP is to create a client library for making calls to the scheduler. If you base your work upon this library then you shouldn’t need to care about whether the Core Scheduler is the Nova integrated scheduler or the Gantt separated scheduler, the library will call `a` scheduler as appropriate. Having said that, I’m not sure I understand the distinction you are seeing between `selection’ and `placement’. The current scheduler filters all hosts based upon filters (the selection part) and then the weighting function finds the best node to host the VM (the placement part). Seems to me the current scheduler does both of those tasks. (We can argue the effectiveness/efficiency of the current implementation but I think it’s functionally complete.) Also, have you proposed a session at the Juno summit on your proposal for dynamic scheduling, seems like it would be appropriate. -- Don Dugger Censeo Toto nos in Kansa esse decisse. - D. Gale Ph: 303/443-3786 From: Jiangying (Jenny) [mailto:jenny.jiangy...@huawei.commailto:jenny.jiangy...@huawei.com] Sent: Thursday, April 24, 2014 3:36 AM To: OpenStack Development Mailing List (not for usage questions) Subject: Re: [openstack-dev] [nova][ceilometer][gantt] Dynamic scheduling Hi, We have checked that gantt now just made a synced up copy of the code in nova. We still think dynamic scheduling will be a benefit of the nova scheduler (or gantt later). The main difference between static and dynamic scheduling is that static scheduling is a vm placement problem, while dynamic scheduling deals with both vm selection and vm placement. Our scheduling mechanism consists of three parts: 1. Controller, which triggers the scheduling; 2. Data Collector, which collects the resource usage and topo for scheduling; 3. Core Scheduler, which decides how to schedule the vms; We prefer to reuse the nova scheduler as the Core Scheduler, in order to avoid the possible inconsistent between static scheduling and dynamic scheduling. The vm selection function will be added into nova scheduler. For Data Collector, we expect to get the performance data from ceilometer and topo from nova. There is still one question that where the controller should be implemented? We regard implementing the controller in nova scheduler as the first choice. And we also consider extending ceilometer.(Ie. When ceilometer discovers an overload host, an alarm can be reported and it can trigger a vm evacuate.) Do you have any comments? Jenny 发件人: Henrique Truta [mailto:henriquecostatr...@gmail.com] 发送时间: 2014年4月12日 1:00 收件人: OpenStack Development Mailing List (not for usage questions) 主题: Re: [openstack-dev] [nova] Dynamic scheduling Is there anyone currently working on Neat/Gantt projects? I'd like to contribute to them, as well. 2014-04-11 11:37 GMT-03:00 Andrew Laski andrew.la...@rackspace.commailto:andrew.la...@rackspace.com: On 04/10/14 at 11:33pm, Oleg Gelbukh wrote: Andrew, Thank you for clarification! On Thu, Apr 10, 2014 at 3:47 PM, Andrew Laski andrew.la...@rackspace.commailto:andrew.la...@rackspace.comwrote: The scheduler as it currently exists is a placement engine. There is sufficient complexity in the scheduler with just that responsibility so I would prefer to see anything that's making runtime decisions separated out. Perhaps it could just be another service within the scheduler project once it's broken out, but I think it will be beneficial to have a clear distinction between placement decisions and runtime monitoring. Do you think that auto-scaling could be considered another facet of this 'runtime monitoring' functionality? Now it is a combination of Heat and Ceilometer. Does it worth moving to hypothetical runtime mobility service as well? Auto-scaling is certainly a facet of runtime monitoring. But auto-scaling performs actions based on a set of user defined rules and is very visible while the enhancements proposed below are intended to benefit deployers and be very invisible to users. So the set of allowable actions is very constrained compared to what auto-scaling can do. In my opinion what's being
Re: [openstack-dev] [nova][ceilometer][gantt] Dynamic scheduling
Hi, We have checked that gantt now just made a synced up copy of the code in nova. We still think dynamic scheduling will be a benefit of the nova scheduler (or gantt later). The main difference between static and dynamic scheduling is that static scheduling is a vm placement problem, while dynamic scheduling deals with both vm selection and vm placement. Our scheduling mechanism consists of three parts: 1. Controller, which triggers the scheduling; 2. Data Collector, which collects the resource usage and topo for scheduling; 3. Core Scheduler, which decides how to schedule the vms; We prefer to reuse the nova scheduler as the Core Scheduler, in order to avoid the possible inconsistent between static scheduling and dynamic scheduling. The vm selection function will be added into nova scheduler. For Data Collector, we expect to get the performance data from ceilometer and topo from nova. There is still one question that where the controller should be implemented? We regard implementing the controller in nova scheduler as the first choice. And we also consider extending ceilometer.(Ie. When ceilometer discovers an overload host, an alarm can be reported and it can trigger a vm evacuate.) Do you have any comments? Jenny 发件人: Henrique Truta [mailto:henriquecostatr...@gmail.com] 发送时间: 2014年4月12日 1:00 收件人: OpenStack Development Mailing List (not for usage questions) 主题: Re: [openstack-dev] [nova] Dynamic scheduling Is there anyone currently working on Neat/Gantt projects? I'd like to contribute to them, as well. 2014-04-11 11:37 GMT-03:00 Andrew Laski andrew.la...@rackspace.commailto:andrew.la...@rackspace.com: On 04/10/14 at 11:33pm, Oleg Gelbukh wrote: Andrew, Thank you for clarification! On Thu, Apr 10, 2014 at 3:47 PM, Andrew Laski andrew.la...@rackspace.commailto:andrew.la...@rackspace.comwrote: The scheduler as it currently exists is a placement engine. There is sufficient complexity in the scheduler with just that responsibility so I would prefer to see anything that's making runtime decisions separated out. Perhaps it could just be another service within the scheduler project once it's broken out, but I think it will be beneficial to have a clear distinction between placement decisions and runtime monitoring. Do you think that auto-scaling could be considered another facet of this 'runtime monitoring' functionality? Now it is a combination of Heat and Ceilometer. Does it worth moving to hypothetical runtime mobility service as well? Auto-scaling is certainly a facet of runtime monitoring. But auto-scaling performs actions based on a set of user defined rules and is very visible while the enhancements proposed below are intended to benefit deployers and be very invisible to users. So the set of allowable actions is very constrained compared to what auto-scaling can do. In my opinion what's being proposed doesn't seem to fit cleanly into any existing service, so perhaps it could start as a standalone entity. Then once there's something that can be used and demoed a proper place might suggest itself, or it might make sense to keep it separate. -- Best regards, Oleg Gelbukh -- Best regards, Oleg Gelbukh On Wed, Apr 9, 2014 at 7:47 PM, Jay Lau jay.lau@gmail.commailto:jay.lau@gmail.com wrote: @Oleg, Till now, I'm not sure the target of Gantt, is it for initial placement policy or run time policy or both, can you help clarify? @Henrique, not sure if you know IBM PRS (Platform Resource Scheduler) [1], we have finished the dynamic scheduler in our Icehouse version (PRS 2.2), it has exactly the same feature as your described, we are planning a live demo for this feature in Atlanta Summit. I'm also writing some document for run time policy which will cover more run time policies for OpenStack, but not finished yet. (My shame for the slow progress). The related blueprint is [2], you can also get some discussion from [3] [1] http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?infotype= ANsubtype=CAhtmlfid=897/ENUS213-590appname=USN [2] https://blueprints.launchpad.net/nova/+spec/resource- optimization-service [3] http://markmail.org/~jaylau/OpenStack-DRS Thanks. 2014-04-09 23:21 GMT+08:00 Oleg Gelbukh ogelb...@mirantis.commailto:ogelb...@mirantis.com: Henrique, You should check out Gantt project [1], it could be exactly the place to implement such features. It is a generic cross-project Scheduler as a Service forked from Nova recently. [1] https://github.com/openstack/gantt -- Best regards, Oleg Gelbukh Mirantis Labs On Wed, Apr 9, 2014 at 6:41 PM, Henrique Truta henriquecostatr...@gmail.commailto:henriquecostatr...@gmail.com wrote: Hello, everyone! I am currently a graduate student and member of a group of contributors to OpenStack. We believe that a dynamic scheduler could improve the efficiency of an OpenStack cloud, either by rebalancing nodes to maximize performance or to minimize the number of active hosts, in order to minimize
Re: [openstack-dev] [heat][nova]dynamic scheduling
Sorry, I’m not quite clear about it yet. I’m trying to find a way that heat controls the flow but not the nova scheduler. 发件人: Henrique Truta [mailto:henriquecostatr...@gmail.com] 发送时间: 2014年4月14日 21:39 收件人: OpenStack Development Mailing List (not for usage questions) 主题: Re: [openstack-dev] [heat][nova]dynamic scheduling Hello! I'm currently investigating both of these features you have mentioned, specifically on the NEAT[1] and GANTT[2] projects, as you might see on the last week discussion. Do you have any further ideas about how and why this would work with Heat? Thanks, Henrique [1] http://openstack-neat.org/ [2] https://github.com/openstack/gantt 2014-04-13 22:53 GMT-03:00 Jiangying (Jenny) jenny.jiangy...@huawei.commailto:jenny.jiangy...@huawei.com: Hi, there has been a heated discussion about dynamic scheduling last week.(http://www.mail-archive.com/openstack-dev@lists.openstack.org/msg21644.html) I am also interested in this topic. We believe that dynamic scheduling consists of two parts: balancing computing capacity and optimizing power consumption. For balancing computing capacity, the ceilometer periodically monitors distribution and usage of CPU and memory resources for hosts and virtual machines. Based on the information, the scheduler calculates the current system standard deviation metric and determines the system imbalance by comparing it to the target. To resolve the imbalance, the scheduler gives the suitable virtual machine migration suggestions to nova. In this way, the dynamic scheduling achieves higher consolidation ratios and deliver optimized performance for the virtual machines. For optimizing power consumption, we attempt to keep the resource utilization of each host within a specified target range. The scheduler evaluates if the goal can be reached by balancing the system workloads. If the resource utilization of a host remains below the target, the scheduler calls nova to power off some hosts. Conversely the scheduler powers on hosts to absorb the additional workloads. Thus optimizing power consumption offers an optimum mix of resource availability and power savings. As Chen CH Ji said, “nova is a cloud solution that aim to control virtual / real machine lifecycle management the dynamic scheduling mechanism is something like optimization of the cloud resource”. We think implementing the dynamic scheduling with heat may be a good attempt. Do you have any comments? Thanks, Jenny ___ OpenStack-dev mailing list OpenStack-dev@lists.openstack.orgmailto:OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev ___ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
[openstack-dev] deliver the vm-level HA to improve the business continuity with openstack
Pacemaker provides the high availability for openstack infrastructure. We'd like to deliver the vm-level HA to improve the business continuity with openstack. Besides host failure, Our HA mechanism can detect and report host isolation, network partition as well as ha agent down. Ha agent is placed on every node of the system. The master agent is elected automatically on system startup and others will be regarded as the slave. For the host states detection, the ha agents communicates through the storage subsystem as well as over the management network. Multiple communication paths enable better assessment of the health of the host. On host failure, the master agent selects the candidate hosts and calls the slave ha agents. The slave ha agents talk to the nova compute to restart the virtual machine. The master agent reacts to ha agent down by reporting to the administrator. During the network partition or host isolation event, the HA mechanism will not interrupt the virtual machines and just keep them running. For the virtual machine detection, the ha agents relies on nova compute for the information about virtual machines. Please let me know your comments on this. Regards, Jenny ___ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
[openstack-dev] [heat][nova]dynamic scheduling
Hi, there has been a heated discussion about dynamic scheduling last week.(http://www.mail-archive.com/openstack-dev@lists.openstack.org/msg21644.html) I am also interested in this topic. We believe that dynamic scheduling consists of two parts: balancing computing capacity and optimizing power consumption. For balancing computing capacity, the ceilometer periodically monitors distribution and usage of CPU and memory resources for hosts and virtual machines. Based on the information, the scheduler calculates the current system standard deviation metric and determines the system imbalance by comparing it to the target. To resolve the imbalance, the scheduler gives the suitable virtual machine migration suggestions to nova. In this way, the dynamic scheduling achieves higher consolidation ratios and deliver optimized performance for the virtual machines. For optimizing power consumption, we attempt to keep the resource utilization of each host within a specified target range. The scheduler evaluates if the goal can be reached by balancing the system workloads. If the resource utilization of a host remains below the target, the scheduler calls nova to power off some hosts. Conversely the scheduler powers on hosts to absorb the additional workloads. Thus optimizing power consumption offers an optimum mix of resource availability and power savings. As Chen CH Ji said, nova is a cloud solution that aim to control virtual / real machine lifecycle management the dynamic scheduling mechanism is something like optimization of the cloud resource. We think implementing the dynamic scheduling with heat may be a good attempt. Do you have any comments? Thanks, Jenny ___ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev