RUVDS, как официальный партнер компании Huawei, занимается внедрением новой системы виртуализации, чтобы предоставить своим клиентам доступ к современным облачным технологиям с высокой степенью надежности и защищенности. Это новый для нас опыт, и мы продолжаем делиться им с читателями нашего блога.
Начало вы можете прочитать в первой статье из этой серии. Перед вами вторая. В ней мы проведем планирование необходимых вычислительных ресурсов и рассмотрим пример того, как рассчитать необходимое количество серверов подходящей конфигурации.
В проекте RUVDS для создания облачной платформы виртуализации используются серверы на основе процессоров с архитектурой х64. Физические серверы объединяются в пулы вычислительных ресурсов, а услуги в ходе миграции переносятся на облачную платформу. Совместное использование ресурсов в рамках облачной платформы позволяет реализовать динамическое планирование ресурсов, максимизирует эффективность их использования и снижает затраты на аппаратные средства и техническое обслуживание. Компоненты базы данных могут быть развернуты на физических серверах.
При выборе серверов для RUVDS руководствовались следующими требованиями:
• Нам нужен сервер c современной архитектурой, объединяющей средства поддержки сети, управления, электропитания и теплоотведения в единой полке. Он должен обеспечивать возможность совместного развертывания нескольких серверов, упрощать каблирование, необходимое для реализации сетевых соединений проекта, максимально эффективно использовать пространство в серверной стойке, а также поддерживать горячую замену.
• В каждом сервере должно быть не менее 4 процессоров и не менее 128 ГБайт оперативной памяти. Данное требование вызвано тем, что серверы используются для создания виртуальных пулов ресурсов.
Основываясь на этих требованиях, для клиентов проекта RUVDS мы выбрали блэйд-серверы с не менее чем 4 процессорами Intel Xeon последних поколений и не менее чем 384Гб оперативной памяти.
Пример планирования количества серверов
Для расчета используются значения SPECint2006 Rates. Значение SPEC взяты на сайте www.spec.org/cgi-bin/osgresults?conf=rint2006.
Далее приведены два способа расчета: способ оценочного расчета на основании расчета общих требования к параметрам SPEC и точный способ на основании преобразования значения SPEC в количество vCPU с последующим преобразованием количества vCPU в количество серверов.
Данные расчеты приведены в качестве примера, чтобы понять, как проводится расчет количества серверов.
Способ 1: расчет на основании общих требований к параметрам SPEC
Суть этого способа заключается в следующем: все значения SPEC, необходимые для исходных прикладных систем, складываются для вычисления суммарной вычислительной мощности, после чего запрашиваются значения SPEC для новых серверов. Количество серверов равно суммарной вычислительной мощности, деленной на значение SPEC для новых серверов.
Пример расчета приведен ниже.
Средний коэффициент загрузки ЦП для 107 серверов Dell PowerEdge 2950 (8 Гбайт памяти и два ЦП E5420 с основной частотой 2,5 ГГц и четырьмя ядрами) составляет 20%. Значение SPEC равно 118 (оно получено на сайте www.spec.org/cgi-bin/osgresults?conf=rint2006).
Требуется осуществить миграцию прикладных систем на серверы RH5885 (каждый с четырьмя восьмиядерными ЦП E7-4820 с основной частотой 2 ГГц). Значение SPEC равно 775.
Следовательно, количество серверов можно рассчитать по следующим формулам:
Потребность в вычислительной мощности = ∑ (значение SPEC для существующих серверов x коэффициент загрузки ЦП) x (1 + коэффициент резервирования) = 107 x 118 x 20% x (1 + 20%) = 3283
Примечание: Обычно величина коэффициента резервирования составляет от 10% до 20%. Рекомендуется значение 20%.
Доступная вычислительная мощность сервера = значение SPEC x коэффициент загрузки ЦП x (1 – количество гиперпотоков UVP /общее количество гиперпотоков) = 775 x 70% x [1 – 2/(4 x 8 x 2)] = 525
Примечание: Количество гиперпотоков, используемых базовым гипервизором, равно 2. Коэффициент загрузки ЦП составляет от 50% до 70%.
Общее количество серверов = округление вверх (вычислительная мощность / доступная вычислительная мощность сервера) = округление вверх (3283/525) = 7 серверов
Примечание: При расчете фактического количества серверов необходимо учесть резервирование. Для поддержки функции VM HA необходимо иметь хотя бы один резервный сервер на каждый кластер.
В случае применения модулей памяти 8 Гбайт количество модулей памяти на один сервер можно определить следующим образом:
Количество модулей памяти на сервер = (общий объем памяти / количество серверов + 8 Гбайт) / 8 Гбайт = (987 Гбайт / 7 серверов + 8 Гбайт на виртуализацию) / 8 = 19 модулей памяти
Примечание: Рекомендуется конфигурировать четное количество модулей памяти. Следует убедиться в том, что коэффициент использования памяти не будет превышать 80%.
Способ 2: расчет количества vCPU на основе значения SPEC
Количество серверов определяется количеством vCPU VM и объемом памяти. В настоящее время серверы поддерживают модули памяти объемом 16 Гбайт и 32 Гбайт. Поэтому память не является фактором, ограничивающим производительность серверов.
Пример расчета приведен ниже.
Средний коэффициент загрузки ЦП 107 серверов Dell PowerEdge 2950 (8 Гбайт памяти и два ЦП E5420 с основной частотой 2,5 ГГц и четырьмя ядрами) составляет 20%. Значение SPEC равно 118 (оно получено на сайте www.spec.org/cgi-bin/osgresults?conf=rint2006).
Требуется осуществить миграцию прикладных систем на серверы RH5885 (каждый с четырьмя восьмиядерными ЦП E7-4820 с основной частотой 2 ГГц). Значение SPEC равно 775.
Следовательно, вычислительную мощность одного сервера можно рассчитать по следующим формулам:
Вычислительная мощность vCPU одного сервера = значение SPEC CINT2006 Rates x коэффициент загрузки ЦП / (количество ЦП x количество ядер x 2 – количество логических ядер, необходимых для виртуализации) = 775 x 70% / (4 x 8 x 2 – 2) = 8,7
Требуемое количество vCPU = округление вверх (118 x 20% / 8,7) = 3
Требуемый объем памяти: 8 Гбайт
Ресурсы виртульных машин (VM):
Общее количество VM: 107
Общее количество vCPU: 322
Общий объем памяти VM: 856 Гбайт
Расчет количества серверов:
Для надежной работы VM облачной платформы и обеспечения миграции VM без прерывания обслуживания в случае отказа сервера необходимо при развертывании системы зарезервировать 20% (зависит от конкретного проекта) ресурсов ЦП и памяти вычислительных серверов.
На основании вышеприведенных принципов количество вычислительных ресурсов, необходимое для системы, можно вычислить следующим образом.
Количество vCPU: 322 x 120% = 387
Объем памяти: 856 Гбайт x 120% = 1028 Гбайт
Согласно выбранной модели сервера (четыре с восемью ядрами) и требованиям к коэффициенту резервирования (30%), необходимое количество серверов можно определить следующим образом:
Количество серверов = количество vCPU/(количество ЦП x количество ядер x 2 – 2) = 387/(4 x 8 x 2 – 2) = 7 (округление вверх)
В случае применения модулей памяти 8 Гбайт количество модулей памяти на один сервер можно определить следующим образом:
Количество модулей памяти на сервер = (общий объем памяти / количество серверов + 8 Гбайт) / 8 Гбайт = (1028 Гбайт / 7 серверов + 8 Гбайт на виртуализацию) / 8 = 20 модулей памяти
В следующей статье мы рассмотрим планирование ресурсов хранения.
ссылка на оригинал статьи https://habrahabr.ru/post/281086/
Добавить комментарий