С нами с 20.10.04
Сообщения: 3851
Рейтинг: 1044
|
Добавлено: 30/04/15 в 04:11 |
Здравствуйте.
Думал пару дней, но моих куриных мозгов не хватило.
поэтому прошу совета у более продвинутых товарищей.
Дано:
X железных серверов, каждый имеет Y установленной памяти и Z дискового пространства.
На этих серверах размещены A виртуалок (VPS).
Каждая виртуалка характеризуется B Гб выделенной памяти и C Гб выделенного дискового пространства.
Задача: распределить виртуалки на этих железных серверах, чтобы они использовали RAM и HDD space более менее равномерно.
Программер есть, но никак не могу сформулировать, ЧТО от него требуется.
Пахнет какой-то высшей математикой, всякими там распределениями и так далее. Но т.к. у меня за плечами только кулинарный техникум, то я не секу.
Не подскажете, куда копать?
|
|
|
|
@JustCallMeGuru
С нами с 22.03.09
Сообщения: 1688
Рейтинг: 1325
|
Добавлено: 30/04/15 в 09:45 |
Ну тут впринципе можно как на ESX или Netapp системах.
Выясняеш оптимальные параметры для той или иной системы например при определенных нагрузках и по этим нуждам и выделяеш какая система сколько жрет и раскидываеш.
Ну если честно раза 2 перечитал вопрос и както немного непонял сути его.
|
|
|
|
продаю базы адалт кейвордов
С нами с 09.11.02
Сообщения: 9045
Рейтинг: 3772
|
Добавлено: 30/04/15 в 10:28 |
Может быть, лучше без всякой математики копать в сторону специально предназначеного для этого дела софта?
Есть же софтверные технологии объединения много серверов в кластер и размазывания виртуалок по нему.
А то ведь, бывает, нагрузка на конкретный виртуал меняется.
|
|
сдам подпись, стучите в личку
|
2
|
|
|
Криптопохуист
С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019
|
Добавлено: 30/04/15 в 10:39 |
Не от того пляшешь.
Нужно создать виртуалку. На каждом сервере есть:
- W свободной памяти
- X свободного дискового пространства
- Y свободного процессорного времени
- Z свободного дискового I/O
Вот и создавай там, где всего этого меньше. А вообще Proxmox кластер погляди.
|
|
|
|
С нами с 11.10.12
Сообщения: 428
Рейтинг: 1032
|
Добавлено: 30/04/15 в 10:50 |
условие неоднозначное.
если речь идет о том, чтобы распределить оптимальным образом фиксированное число виртуалок по фиксированному числу серверов ОДИН раз - это одно.
если речь о том, что после того, как выполнено первоначальное распределение, будут ПО ОДНОМУ добавляться еще сервера/виртуалки, а первоначальное распределение трогать нельзя, - это другое (т.е. задачу с самого начала можно рассматривать как "на какой из серверов положить очередную (ОДНУ) виртуалку")
|
|
apache, bash, css, elasticsearch, ffmpeg, html, js, mysql, mongo, nginx, php; *nix only
|
1
|
|
|
С нами с 21.03.15
Сообщения: 11
Рейтинг: 22
|
Добавлено: 30/04/15 в 10:50 |
Это все?
Х*Y=B(Общая)
B(Общая)\A = В(средняя)
НО если делить ресурсы используемые vpsами в данный момент
(Вa1+Вa2+....+Ban)\A=В(средняя)
n = A
Если это все что нужно конечно? ))
|
|
|
|
С нами с 09.08.12
Сообщения: 185
Рейтинг: 378
|
Добавлено: 30/04/15 в 11:01 |
https://ru.wikipedia.org/wiki/OpenStack
http://www.opennet.ru/opennews/art.shtml?num=40851
Платформа OpenStack включает в себя набор взаимосвязанных компонентов, нацеленных на создание как публичных cloud-сервисов, подобных Amazon EC2, так и приватных cloud-окружений, работающих на собственном оборудовании и полностью подконтрольных компании. Среди поддерживаемых систем виртуализации: KVM, QEMU, Xen, Hyper-V, Citrix XenServer, контейнеры LXC и VMWare/vSphere ESX/ESXi. OpenStack обладает превосходной масштабируемостью и способен обслуживать инфраструктуру из сотен тысяч виртуальных серверов бла бла бла
|
|
|
|
С нами с 20.10.04
Сообщения: 3851
Рейтинг: 1044
|
Добавлено: 01/05/15 в 03:31 |
Всем спасибо, подсказали несколько моментов.
Используется Hyper-V, у ней там есть механизмус определения "оптимального" сервера из кластера при разворачивании новой виртуалки. Но он какой-то весь сам себе на уме.
В общем, идея сформирована, программер работает.
Еще раз, благодарю всез отписавшихся.
update, кому интересно.
Уточнение идеи: да, я сумбурно накидал. В общем, виртуалки, они же разные, если где 1 гиг памяти и 10 гиг диска - это стандартный дефолт, например. А есть 1 гиг памяти и 400гиг диска. Или наоборот 16гиг памяти и всего 40гиг диска.
Так вот ситуации бывают когда один из серваков железных имеет дофига свободной РАМ, но напрочь забитые диски. И наоборот.
Вот и есть идея мутить скриптец, чтоб тот высчитывал, какие виртуалки куда переместить, дабы ресурсы расходовались более менее равномерно.
В общем программер там сейчас мутит, коечто вырисовывается. Как я и сказал выше, мысли отписавшихся помогли навести порядок в собственных мозгах. Ура.
|
|
|
|
С нами с 12.11.08
Сообщения: 5
Рейтинг: 8
|
Добавлено: 05/05/15 в 21:23 |
Определяешь "цену" ресурса A, B, C в зависимости от текущих запасов так, чтобы сумма по каждому из ресурсов была одинаковой.
Выбираешь приложение и размещаешь его там, где сейчас "дешевле всего". Пересчитываешь "цены".
И так далее.
|
|
|
|
С нами с 20.10.04
Сообщения: 3851
Рейтинг: 1044
|
Добавлено: 07/05/15 в 03:06 |
sniffer7: в точку. Именно так прогер и замутил. Работает.
|
|
|
|