The typical flow is that you keep your .aurora file checked into git, and commit every time you deploy/update. When you change your file, you will instruct Aurora to update the live job (have a look at aurora update -h). Aurora will perform a rolling upgrade of your job to the new config. You'll use this same flow for updating your job's software as well as resizing the job.
For (3), you could set up alerting for stats that the scheduler exports. Have a look here for monitoring background: https://github.com/apache/aurora/blob/master/docs/monitoring.md You'll find want to look at scheduler stats related to 'pending'. On Mon, Oct 19, 2015 at 12:16 PM, Krish <[email protected]> wrote: > Thanks for the pointer. Now I notice that the aurora-scheduler script has > the --thermos_executor_path as a mandatory requirement. > > I have a couple of questions on how the thermos_executor/.aurora config > file functions: > 1. Do we have to statically define the file beforehand? > 2. What happens when we want to dynamically change the config, say > increasing the number of instances of a service required? Does aurora > require a reboot then? > 3. How do I get notified about the message mesos sends when it cannot > schedule tasks for lack of resources? Should I depend on aurora for this or > try to look for a hook into mesos? > > I think a little bit of context would help here. > What I plan to check is to run a very basic job/task inside a docker > container with aurora & wait for a 'resource not available' message from > mesos, and accordingly call an api to spin up a new node in my cluster. > > > > > -- > κρισhναν > > On Mon, Oct 19, 2015 at 1:24 PM, Erb, Stephan <[email protected] > > wrote: > >> I believe you are missing the thermos_executor options that have to be >> passed to the scheduler command line. >> >> >> See >> https://github.com/apache/aurora/blob/33d7e2170a86f54722a02a2dc9cb1e09fb52df25/examples/vagrant/upstart/aurora-scheduler.conf#L39 >> for an example >> >> >> Best Regards, >> >> Stephan >> >> >> ------------------------------ >> *From:* Krish <[email protected]> >> *Sent:* Monday, October 19, 2015 8:45 AM >> *To:* [email protected] >> *Subject:* Re: Stacktrace when running Apache Aurora >> >> Hi, >> I am a n00b with apache aurora & trying to experiment some things on my >> local machine with zookeeper and mesos-master running locally. They have >> initialized properly. When I try to run aurora with the required options, I >> get the following error, & googing hasn't helped me much here. >> Appreciate any help. Thanks in advance. >> >> ... >> ... >> WARNING: Method [public void >> org.apache.aurora.scheduler.storage.log.SnapshotStoreImpl.applySnapshot(java.lang.Object)] >> is synthetic and is being intercepted by >> [com.twitter.common.inject.TimedInterceptor@604c5de8]. This could >> indicate a bug. The method >> may be intercepted twice, or may not be intercepted at all. >> Exception in thread "main" com.google.inject.CreationException: Guice >> creation errors: >> >> 1) An exception was caught and reported. Message: A value may only be >> retrieved from a variable that has a default or has been >> set. >> at >> com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:133) >> >> 2) Could not find a suitable constructor in >> org.apache.aurora.scheduler.mesos.ExecutorSettings. Classes must have >> either one (a >> nd only one) constructor annotated with @Inject or a zero-argument >> constructor that is not private. >> at >> org.apache.aurora.scheduler.mesos.ExecutorSettings.class(ExecutorSettings.java:43) >> at >> org.apache.aurora.scheduler.app.SchedulerMain$3.configure(SchedulerMain.java:204) >> >> 2 errors >> at >> com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:435) >> at >> com.google.inject.internal.InternalInjectorCreator.initializeStatically(InternalInjectorCreator.java:154) >> at >> com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:106) >> at com.google.inject.Guice.createInjector(Guice.java:95) >> at com.google.inject.Guice.createInjector(Guice.java:83) >> at >> com.twitter.common.application.AppLauncher.configureInjection(AppLauncher.java:120) >> at >> com.twitter.common.application.AppLauncher.run(AppLauncher.java:87) >> at >> com.twitter.common.application.AppLauncher.launch(AppLauncher.java:181) >> at >> com.twitter.common.application.AppLauncher.launch(AppLauncher.java:142) >> at >> org.apache.aurora.scheduler.app.SchedulerMain.main(SchedulerMain.java:263) >> Caused by: java.lang.IllegalStateException: A value may only be retrieved >> from a variable that has a default or has been set. >> at >> com.google.common.base.Preconditions.checkState(Preconditions.java:176) >> at com.twitter.common.args.Arg.get(Arg.java:82) >> at >> org.apache.aurora.scheduler.app.SchedulerMain$3.configure(SchedulerMain.java:206) >> at >> com.google.inject.AbstractModule.configure(AbstractModule.java:59) >> at >> com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:223) >> at com.google.inject.util.Modules$2.configure(Modules.java:114) >> at >> com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:223) >> at com.google.inject.spi.Elements.getElements(Elements.java:101) >> at >> com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:133) >> at >> com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:103) >> ... 7 more >> >> Complete logs are present @http://pastebin.com/i72HvbYi. >> >> >> >>> -- >>> κρισhναν >>> >> >> >
