%20%D0%A0%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5%20%D1%80%D0%B5%D1%81%D1%83%D1%80%D1%81%D1%8B%20KVM%2FQEMU.png)
Каким образом крупные компании, предоставляющие услуги хостинга виртуальных машин, предлагают терабайты оперативной памяти?
Они просто используют очень большие файлы SWAP? (через сетевую файловую систему какого-либо типа)?
Или у них действительно есть хосты/машины/компьютеры с терабайтами оперативной памяти?
Например, предположим, что у меня есть два хост-компьютера, оба с 4 ГБ ОЗУ, и я хочу создать виртуальную машину QEMU/KVM, скажем, с 6 ГБ ОЗУ. Как мне это сделать? (или возможно ли это)?
решение1
Большинство используют кластеризацию, например VMware HA или Openstack. Другие просто покупают машины с терабайтами оперативной памяти (например, IBM S/390). Вы, вероятно, можете сделать кластер из двух машин с вашей и сделать это, но ваше сетевое соединение будет плохим узким местом.
решение2
Я никогда не видел, чтобы хостинг-провайдер предлагал что-то близкое к терабайту оперативной памяти. Однако у них действительно есть машины с такой емкостью. Если бы у вас были неограниченные деньги (или корпоративный бюджет), вы могли бы купить материнскую плату сервера с 32 слотами DIMM, вставить в каждый слот по 32 ГБ планки (что обойдется вам не менее 1000 долларов за планку), и вы бы достигли одноготерабайт.
Нет способа перераспределить, как вы хотите, и заставить это работать правильно. Вы можете обмануть виртуальную машину, заставив ее думать, что у нее 6 ГБ ОЗУ, но как только вы достигнете предела того, что у вас есть на самом деле, она рухнет. Вы можете использовать что-то вродезрамчтобы вместить больше памяти в вашу физическую оперативную память, но я очень сомневаюсь, что вы сможете втиснуть 6 ГБ в 4 ГБ.