[ovirt-devel] Certain questions about Quartz based scheduling in oVirt

Yaniv Dary ydary at redhat.com
Wed Nov 26 09:20:59 UTC 2014



----- Original Message -----
> From: "Yair Zaslavsky" <yzaslavs at redhat.com>
> To: "Sahina Bose" <sabose at redhat.com>
> Cc: devel at ovirt.org
> Sent: Wednesday, November 26, 2014 7:32:32 AM
> Subject: Re: [ovirt-devel] Certain questions about Quartz based scheduling in	oVirt
> 
> 
> 
> ----- Original Message -----
> > From: "Sahina Bose" <sabose at redhat.com>
> > To: "Moti Asayag" <masayag at redhat.com>, "Shubhendu Tripathi"
> > <shtripat at redhat.com>
> > Cc: devel at ovirt.org
> > Sent: Tuesday, November 25, 2014 1:13:06 PM
> > Subject: Re: [ovirt-devel] Certain questions about Quartz based scheduling
> > in	oVirt
> > 
> > 
> > On 11/24/2014 06:27 PM, Moti Asayag wrote:
> > > Hi Shubhendu,
> > >
> > > ----- Original Message -----
> > >> From: "Shubhendu Tripathi" <shtripat at redhat.com>
> > >> To: devel at ovirt.org
> > >> Sent: Monday, November 24, 2014 8:58:34 AM
> > >> Subject: [ovirt-devel] Certain questions about Quartz based scheduling
> > >> in
> > >> 	oVirt
> > >>
> > >> Hi All,
> > >>
> > >> We are in a requirement where we need to schedule jobs at certain time
> > >> interval, hourly, daily, weekly and monthly (i.e. repetitive and cron
> > >> kind of scheduling).
> > >> I was trying to understand quartz based scheduling mechanism in oVirt to
> > >> achieve the scenarios.
> > >>
> > >> Have some basic questions regarding the same -
> > >> 1. Is there is mechanism to persist the scheduling data in oVirt ?
> > > In ovirt we do not persist the jobs. The application reschedule the jobs
> > > when it starts
> > > and programmatically triggers jobs when required.
> > >
> > > On packaging/services/ovirt-engine/ovirt-engine.xml.in we specify the job
> > > store configuration
> > > as RAMJobStore, which is a volatile:
> > >
> > >      <property name="org.quartz.jobStore.class"
> > >      value="org.quartz.simpl.RAMJobStore"/>
> > >
> > > You may select other implementation. See:
> > > http://quartz-scheduler.org/api/2.2.0/org/quartz/spi/JobStore.html
> > 
> > Would the correct approach then be to have multiple scheduler instances?
> 
> Please bare in mind that quartz has the ability to perform
> Cron like scheduling (with cron expressions).
> 
> 
> http://www.quartz-scheduler.org/documentation/quartz-1.x/tutorials/crontrigger

+1 
I'm don't think creating a cron like ability in RHEV is needed this is why cron/quartz exists. 
Instances for users jobs should be added independently from RHEV. 

> 
> 
> 
> > 
> > 1. - that uses the in memory job store
> > 
> > 2. that uses DB to persist the jobs.
> > 
> > The second instance would be used to schedule and manage any dynamic
> > jobs, for instance like the ones required for gluster volume snapshot
> > scheduling
> > 
> > Using a separate instance also would mean there's no change to existing
> > jobs that are scheduled in Backend bean.
> > 
> > 
> > >
> > >> 2. How to tackle edit and rescheduling of jobs ?
> > >>
> > > You can have a look at org.ovirt.engine.core.utils.timer.SchedulerUtil
> > > interface in
> > > the 'scheduler' project which provides that functionality, and the
> > > related
> > > classes.
> > >
> > > But if not special requirements, i guess the shipped quartz
> > > implementation
> > > should be
> > > enough:
> > >
> > > http://quartz-scheduler.org/documentation/quartz-2.x/tutorials/tutorial-lesson-05
> > >
> > >> Kindly guide on how to achieve these.
> > >>
> > >> Thanks and Regards,
> > >> Shubhendu
> > >> _______________________________________________
> > >> Devel mailing list
> > >> Devel at ovirt.org
> > >> http://lists.ovirt.org/mailman/listinfo/devel
> > >>
> > > _______________________________________________
> > > Devel mailing list
> > > Devel at ovirt.org
> > > http://lists.ovirt.org/mailman/listinfo/devel
> > 
> > _______________________________________________
> > Devel mailing list
> > Devel at ovirt.org
> > http://lists.ovirt.org/mailman/listinfo/devel
> > 
> _______________________________________________
> Devel mailing list
> Devel at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/devel
> 



More information about the Devel mailing list