Fenzo | Extensible Scheduler for Mesos Frameworks | Job Scheduling library
kandi X-RAY | Fenzo Summary
kandi X-RAY | Fenzo Summary
Fenzo is a scheduler Java library for Apache Mesos frameworks that supports plugins for scheduling optimizations and facilitates cluster autoscaling. Apache Mesos frameworks match and assign resources to pending tasks. Fenzo presents a plugin-based, Java library that facilitates scheduling resources to tasks by using a variety of possible scheduling objectives, such as bin packing, balancing across resource abstractions (such as AWS availability zones or data center racks), resource affinity, and task locality.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Schedules the next iteration
- Schedule a set of VMs
- Determines if scaling needs to be applied
- Evaluate assignment assignments
- Main entry point
- Get a queue task
- This method is used to provide the usage of the usage tracked queues
- Removes the bucket and re - sort if it exists
- Returns a soft constraint that can be applied to a task
- Get the used attributes map
- Calculates the fitness for the given target VM
- Runs the task queue
- Evaluates the list of available virtual machine leases
- Get the short fallbacks for a VM group
- Computes the score of a virtual machine
- Initialize the scheduler
- Determines whether the target VM is already running or not
- Compares two virtual machines
- Get all tasks in the tier
- Evaluate whether the host attribute is available
- Starts the task generator
- Resets internal state
- Calculates the evaluation of a group candidate
- Calculates the total cost of a task
- Returns the next task
- Determines whether a target host should be assigned to a target host
Fenzo Key Features
Fenzo Examples and Code Snippets
Community Discussions
Trending Discussions on Fenzo
QUESTION
I'm looking for a way to kill a Mesos task or shutdown the framework in the mesos-rxjava library. It appears that after subscribe(), the only opportunities to send calls to Mesos are in response to events from Mesos. I've been able to integrate Fenzo in a separate scheduling loop by responding to offer leases with an Observable from a Promise and storing that promise for the Fenzo loop, so it's probably possible to do the same with the "task started" update event and keep the promise around to kill that task, but then you can't cancel a task that hasn't started yet, and it doesn't solve for shutting down the framework. Or maybe there's a way to use the library's authentication to simply send the HTTP request in a non-reactive way? Is there a cleaner solution I'm missing?
...ANSWER
Answered 2017-Apr-11 at 00:02I think what you're looking for here is the TEARDOWN Call [1], when this call is sent to mesos from the scheduler it will initiate a full shutdown of the framework across the cluster.
By weaving a Subject into the Observable (you can see an example of weaving Observables together in link 2 below) you provide to the mesos-rxjava client you can provide yourself with a handle to be able to send Calls that aren't a direct reaction to an Event. A link 3 below is a link to a Github issue explaining this a bit more.
[1] https://github.com/apache/mesos/blob/master/docs/scheduler-http-api.md#teardown
[2] https://github.com/mesosphere/mesos-rxjava/blob/master/mesos-rxjava-example/mesos-rxjava-example-framework/src/main/java/com/mesosphere/mesos/rx/java/example/framework/sleepy/Sleepy.java#L140
[3] https://github.com/mesosphere/mesos-rxjava/pull/63#issuecomment-235043568
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install Fenzo
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page