Fenzo | Extensible Scheduler for Mesos Frameworks | Job Scheduling library

 by   Netflix Java Version: 1.1.0-rc.9 License: Apache-2.0

kandi X-RAY | Fenzo Summary

kandi X-RAY | Fenzo Summary

Fenzo is a Java library typically used in Data Processing, Job Scheduling applications. Fenzo has no vulnerabilities, it has build file available, it has a Permissive License and it has medium support. However Fenzo has 45 bugs. You can download it from GitHub, Maven.

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

            kandi-support Support

              Fenzo has a medium active ecosystem.
              It has 695 star(s) with 109 fork(s). There are 399 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 19 open issues and 35 have been closed. On average issues are closed in 65 days. There are 3 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of Fenzo is 1.1.0-rc.9

            kandi-Quality Quality

              Fenzo has 45 bugs (0 blocker, 3 critical, 21 major, 21 minor) and 787 code smells.

            kandi-Security Security

              Fenzo has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              Fenzo code analysis shows 0 unresolved vulnerabilities.
              There are 9 security hotspots that need review.

            kandi-License License

              Fenzo is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              Fenzo releases are available to install and integrate.
              Deployable package is available in Maven.
              Build file is available. You can build the component from source.
              Installation instructions are available. Examples and code snippets are not available.
              Fenzo saves you 7495 person hours of effort in developing the same functionality from scratch.
              It has 15473 lines of code, 1191 functions and 136 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed Fenzo and discovered the below as its top functions. This is intended to give you an instant insight into Fenzo implemented functionality, and help decide if they suit your requirements.
            • 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
            Get all kandi verified functions for this library.

            Fenzo Key Features

            No Key Features are available at this moment for Fenzo.

            Fenzo Examples and Code Snippets

            No Code Snippets are available at this moment for Fenzo.

            Community Discussions

            QUESTION

            mesos-rxjava -- kill tasks and shutdown scheduler
            Asked 2017-Apr-11 at 00:02

            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:02

            I 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

            Source https://stackoverflow.com/questions/43331194

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install Fenzo

            Binaries and dependency information for Maven, Ivy, Gradle and others can be found at http://search.maven.org.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries

            Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular Job Scheduling Libraries

            Try Top Libraries by Netflix

            Hystrix

            by NetflixJava

            chaosmonkey

            by NetflixGo

            zuul

            by NetflixJava

            eureka

            by NetflixJava

            falcor

            by NetflixJavaScript