Dynamic allocation system for Bareon.
Go to file
Evgeniy L 21ff19e9d4 Add missed row in A matrix 2016-01-10 19:17:46 +03:00
bareon_dynamic_allocator Fix a bug, when there is space with empty max in the middle 2016-01-02 23:29:02 +03:00
doc/source Add missed row in A matrix 2016-01-10 19:17:46 +03:00
etc/bareon-dynamic-allocator Update simple schema comment 2015-12-29 21:15:06 +03:00
.coveragerc Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
.gitignore Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
.gitreview Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
.mailmap Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
.testr.conf Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
CONTRIBUTING.rst Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
HACKING.rst Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
LICENSE Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
MANIFEST.in Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
README.rst Up readme 2015-12-31 11:46:02 +03:00
babel.cfg Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
requirements.txt Add yaql as requirements 2015-12-29 21:06:58 +03:00
run.sh Add run.sh to easily debug the problems 2015-12-22 18:58:11 +03:00
setup.cfg Add command line entry point 2015-12-22 18:54:11 +03:00
setup.py Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
test-requirements.txt Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00
tox.ini Initial Cookiecutter Commit. 2015-12-22 12:40:52 +03:00

README.rst

bareon-dynamic-allocator

A driver for Bareon for dynamic allocation of volumes

Please feel here a long description which must be at least 3 lines wrapped on 80 cols, so that distribution package maintainers can use it in their packages. Note that this is a hard requirement.

Features

  • TODO

Future Improvments

  • user weight if max is not specified [DONE]
  • if min and max for several spaces are the same, consider using weight (DONE, but only for max, better design for min is required)
  • improve weight algorithm, use weights only if minimal size of one disk is not bigger than maximal size of another, otherwise we should notify user about the error
  • research on YAQL in order to filter the disks by some criteria
  • we should automatically add Unallocate volume with no constraints, so user can specify volumes with maximal sizes, and the rest of the space will be allocated for Unallocate
  • create special types, like lv_mirror with special policy to allocate volume of the same size over several disks
  • add integer constraints (the problem can be solved with integer programming, but it may lead to situation when there are no feasible solution, so for our practical purpose we are going to use naive implementation which is rounding of resulting vectos x)