Можно ли разделить одну огромную виртуальную машину на несколько физических обычных серверов?
Вот наш вариант использования:
- Нам нужно реализовать 32-процессорный сервер БД с 64 ГБ оперативной памяти.
- У нас нет физического сервера такой мощности
- У нас много серверов с меньшими ресурсами.
Есть ли технология или (лучше) продукт, который позволяет нам использовать эти серверы для создания виртуальной машины с необходимой мощностью? Скажем, можем ли мы объединить 8 физических 4-процессорных машин с 8 ГБ ОЗУ каждая в один 32-процессорный «логический блок» с 64 ГБ ОЗУ и настроить сервер Oracle, который использует всю эту емкость?
Перед публикацией этого вопроса мы читали похожие вопросы, но не нашли ответа.
- Объедините несколько физических серверов в один виртуальный сервер
- Облачные вычисления - несколько физических компьютеров, один логический компьютер
Может быть, кто-то может дать нам подсказку сейчас?
virtualization
user54614
источник
источник
Ответы:
Существует коммерческий продукт от ScaleMP под названием vSMP. Это позволяет объединять несколько систем x86 в один виртуальный экземпляр. Я никогда лично не пробовал это раньше, но я прошел через презентацию от них. Если я правильно помню, существуют определенные требования, чтобы это работало, и вам нужно получить дополнительное оборудование (Infiniband для быстрых межсоединений с малой задержкой). Это может стоить довольно копейки тоже!
источник
Невозможно получить точно такую же функциональность, как один 32-процессорный компьютер ... с несколькими отдельными серверами. Лучше всего взглянуть на кластеризацию или грид-компьютинг. Если все сделано правильно, вы можете получить сопоставимую производительность ... и более высокий уровень доступности. Многое из вашего вопроса также зависит от вашего типа "дБ". Microsoft SQL Server работает значительно иначе, чем MySQL или Oracle ... и масштабируемость также выполняется совершенно иначе.
В качестве альтернативы ... вы можете подумать о том, чтобы позволить кому-то сделать базу данных для вас ... например, использовать EC2 RDS ...
К сожалению, нет никакого способа объединить несколько физических серверов вместе, надеть на них vmware и получить уникальный сверхмощный виртуальный сервер.
источник
«TheCompWiz» ответил на ваш вопрос с пользой.
Я все еще хотел бы сказать, что да, вы могли бы создать гипервизор, который позволял бы одной виртуальной машине охватывать несколько физических хостов, и она могла бы запускать эту виртуальную машину «правильно», где все функционировало.
Но даже с действительно хорошими высокоскоростными сетями между физическими хостами производительность такого устройства была бы по-настоящему ужасной, если бы она работала намного медленнее, чем небольшая виртуальная машина, которая вписывается в один из этих хостов. Вы должны были бы смоделировать свойства когерентности кэша отдельной виртуальной машины, перехватывая каждую операцию чтения или записи в память, которую выполняли гостевая ОС и приложение, что увеличило бы стоимость доступа к памяти на тысячи, если не на миллионы.
Таким образом, ни один коммерческий поставщик гипервизора не допускает такой возможности. Это было опробовано в лаборатории. Никто не удосужился сделать из него продукт.
Чтобы еще раз подчеркнуть суть, посмотрите на кластеризацию для решения.
источник
VMWare делает. Это называется DRS или Планировщик распределенных ресурсов. Позволяет объединить ресурсы 16 серверов. Затем вы можете распределить это общее количество в одной или нескольких виртуальных средах.
источник