2 Replies Latest reply on May 11, 2010 11:23 AM by RumataRus

    Расчет возможного количества ВМ, которое можно разместить на хосте по критерию памяти.

    RumataRus Master

      Прочитав vSphere Resource Management Guide я понял, что  упрощенный подсчет типа: "если у меня есть 64 Гб на хосте, значит я могу одновременно запускать 32 ВМ, каждой из которых выделено 2Гб" не подойдет.

       

      Как же можно оценить возможное количество ВМ, которое можно разместить на хосте по критерию памяти?

      Я понимаю это так:

      1. Некоторое количество памяти будет использовано ядром ESX/ESXi при первоначальном старте хоста для размещения своих модулей, драйверов устройств и т.п.; если это ESX, то еще некоторое количество памяти будет использовано для сервисной консоли.

      Вопрос: сколько памяти примерно и в среднем можно считать истраченной на эти цели?

       

      2. При планировании размещения ВМ на хосте нужно учитывать Overhead в соответствии с "Table 3-2. Overhead Memory on Virtual Machines" в vSphere Resource Management Guide, с этим понятно. Из этой таблицы следует, что например, для ВМ с двумя vCPU и памятью 2Гб накладные расходы (Overhead) составят чуть менее 200Мб, т.е. около 10%.

       

      3.Картину усложняют технологии Memory Overcommitment и Page Sharing.

      Для технологии Memory Overcommitment можно взять разные коэффициенты. По мнению Антона Жбанкова (http://blog.vadmin.ru/2009/12/hyper-v-vsphere.html) от пессимистичного 1.2 (и менее) до оптимистичного 2.0 (и более).

      Какой коэффициент взять для технологии Page Sharing я не знаю, но если верить vSphere Resource Management Guide, то оптимистичным прогнозом можно считать 30% экономии памяти за счет этой технологии, а пессимистичным - 5%. Поправьте меня, если я не прав.

       

      4. Видимо, какое-то количество памяти хоста нужно оставить в резерв, поскольку очевидно нежелательно допускать долговременную 100% загрузку хоста по какому либо-ресурсу, в данном случае - памяти. Вопрос: какое?

       

      5. Что я еще не учел?

        • 1. Re: Расчет возможного количества ВМ, которое можно разместить на хосте по критерию памяти.
          AntonVZhbankov Guru
          User Moderators

          >"если у меня есть 64 Гб на хосте, значит я могу одновременно запускать 32 ВМ, каждой из которых выделено 2Гб" не подойдет.

           

          В общем случае подойдет. Именно с учетом оверхеда, возможных пессимистичных прогнозах TPS и т.д... при физ. памяти значительно превышающей 2 ГБ можно смело рассчитывать на сумму памяти ВМ.

           

          >1. Некоторое количество памяти будет использовано ядром ESX/ESXi при первоначальном старте хоста для размещения своих модулей, драйверов устройств и т.п.; если это ESX, то еще некоторое количество памяти будет использовано для сервисной консоли.

          >Вопрос: сколько памяти примерно и в среднем можно считать истраченной на эти цели?

           

          2ГБ.

           

          >2. При планировании размещения ВМ на хосте нужно учитывать Overhead в соответствии с "Table 3-2. Overhead Memory on Virtual Machines" в vSphere Resource Management Guide, с этим понятно. Из этой таблицы следует, что например, для ВМ с двумя vCPU и памятью 2Гб накладные расходы (Overhead) составят чуть менее 200Мб, т.е. около 10%.

           

          Да.

           

          >3.Картину усложняют технологии Memory Overcommitment и Page Sharing.

          >Какой коэффициент взять для технологии Page Sharing я не знаю, но если верить vSphere Resource Management Guide, то оптимистичным прогнозом можно считать 30% экономии памяти за счет этой технологии, а пессимистичным - 5%. Поправьте меня, если я не прав.

           

          Чем больше ВМ и чем больше памяти, тем больше будет экономия. Более того, есть один интересный момент, связанный с неравномерностью нагрузки - если у нас несколько машин используют память в противофазе (как пример OLTP с 8-00 до 17-00, OLAP c 18-00 до 7-00), то можно с определенной уверенностью закладываться на Memory Balloon.

           

          >4. Видимо, какое-то количество памяти хоста нужно оставить в резерв, поскольку очевидно нежелательно допускать долговременную 100% загрузку хоста по какому либо-ресурсу, в данном случае - памяти. Вопрос: какое?

           

          Никакие теоретические выкладки не дадут четкого ответа. Пробуйте, измеряйте нагрузку.

          Есть вероятность, что столкнетесь с CPU-bound средой. Т.е. просто упретесь в процессорную мощность и дальнейшее добавление памяти ничего не даст.


          ---

          MCSA, MCTS Hyper-V, VCP 3/4, VMware vExpert '2009

          http://blog.vadmin.ru

          1 person found this helpful