A new version of the Haizea Lease Manager was released a few days ago and is available for download at http://haizea.cs.uchicago.edu/
Haizea can be used as a drop-in replacement for OpenNebula‘s scheduling daemon, providing OpenNebula with more advanced scheduling capabilities such as advance reservations and queueing of requests when there are no resources available. The latest version of Haizea is the first of two betas on the road to Haizea 1.0. This beta includes several major new features:
- Support for pluggable scheduling policies: Whereas previous versions of Haizea used hardcoded scheduling policies (e.g., to determine whether a lease could be accepted, whether it should be preempted, etc.), this version allows users to choose between different policies, or to write their own custom policies that they can “plug into” Haizea. Writing a custom policy only requires writing a Python module implementing a set of methods described in the Haizea documentation.
- Support for heterogeneous resources and arbitrary resource types: Previous versions of Haizea required that each lease be composed of homogeneous nodes (i.e., all the VMs in a lease had to request the same amount of resources), and only supported five resource types (CPU, Memory, Disk, Inbound network and Outbound network). This version supports leases with heterogeneous resource requirements and allows users to define arbitrary resource types that can then be requested by leases.
- New LWF (Lease Workload Format): Leases are now described using a new XML format that, unlike the previous LWF, supports specification of heterogeneous nodes and arbitrary resource types.
- OpenNebula 1.4 support: The OpenNebula enactment module has been updated to support OpenNebula 1.4. The new enactment module uses OpenNebula’s XML-RPC API, instead of accessing the OpenNebula database directly.
- More unit tests: Besides the existing trace-based unit tests (which run simple tracefiles with Haizea), new unit tests have been written to make sure that Haizea’s core data structures, like the slot table and the resource mapper, are working correctly.
- Pydoc documentation: Most of Haizea’s modules are now fully documented using Pydoc. A browsable HTML version is provided on the Haizea website for developers who want to write their own custom policies.
- New project management site: The PhoenixForge site where Haizea is hosted has recently migrated to a Redmine site (from the previous Trac-based Dr.Project site). This new site provides a much better web interface and several other project management features.
Please note that the current version is still a beta, and not suitable for use in production environments. Its main purpose is to get feedback from the community so, if you encounter any bugs or there’s any particular feature you’re interested in, please don’t hesitate to let us know on the Haizea mailing list: https://mailman.cs.uchicago.edu/mailman/listinfo/haizea