Оптимизирање дистрибуције сервера по рацковима

У једном од разговора постављено ми је питање:

— Да ли могу нешто да прочитам о томе како правилно спаковати сервере у сталке?

Схватио сам да не знам такав текст, па сам написао свој.

Прво, овај текст говори о физичким серверима у физичким центрима података (ДЦ). Друго, верујемо да има доста сервера: стотине-хиљаде за мањи број овај текст нема смисла. Треће, сматрамо да имамо три ограничења: физички простор у сталцима, напајање по рек-у и нека рекови стоје у редовима тако да можемо да користимо један ТоР прекидач за повезивање сервера у суседним рековима.

Одговор на питање у великој мери зависи од тога који параметар оптимизујемо и шта можемо да мењамо да бисмо постигли најбољи резултат. На пример, само треба да заузмемо минимум простора да бисмо оставили више за даљи раст. Или можда имамо слободу у избору висине рекова, снаге по реку, утичница у ПДУ, броја рекова у групи прекидача (један прекидач за 1, 2 или 3 река), дужине жица и потеза ( ово је критично на крајевима редова: са 10 рекова у низу и 3 сталка по прекидачу, мораћете да повучете жице у други ред или недовољно користите портове у прекидачу), итд, итд. Одвојене приче: избор сервера и избор ДЦ-а, претпоставићемо да су изабрани.

Било би добро да разумемо неке од нијанси и детаља, посебно просечну/максималну потрошњу сервера и начин на који се струјом снабдевамо. Дакле, ако имамо руско напајање од 230В и једну фазу по реку, онда машина од 32А може да поднесе ~7кВ. Рецимо да номинално плаћамо 6кВ по раку. Ако провајдер мери нашу потрошњу само за ред од 10 рекова, а не за сваки рацк, и ако је машина подешена на условно искључење од 7 кВ, онда технички можемо да потрошимо 6.9 кВ у једном раку, 5.1 кВ у другом и све ће бити ок - није кажњиво.

Обично је наш главни циљ да минимизирамо трошкове. Најбољи критеријум за мерење је смањење ТЦО (укупних трошкова власништва). Састоји се од следећих делова:

  • ЦАПЕКС: набавка ДЦ инфраструктуре, сервера, мрежног хардвера и каблирања
  • ОПЕКС: ДЦ изнајмљивање, потрошња електричне енергије, одржавање. ОПЕКС зависи од радног века. Разумно је претпоставити да је то 3 године.

Оптимизирање дистрибуције сервера по рацковима

У зависности од тога колико су велики појединачни делови у укупној пити, морамо да оптимизујемо најскупље, а да остали користе све преостале ресурсе што ефикасније.

Рецимо да имамо постојећи ДЦ, постоји висина река Х јединица (на пример, Х=47), струја по реку Працк (Працк=6кВ), и одлучили смо да користимо х=2У сервере са две јединице. Уклонићемо 2..4 јединице из сталка за прекидаче, патцх панеле и организаторе. Оне. физички, имамо Сх=роунддовн((Х-2..4)/х) сервере у нашем сталку (тј. Сх = роунддовн((47-4)/2)=21 сервер по рацк-у). Сетимо се овог Ш.

У једноставном случају, сви сервери у рацк-у су идентични. Укупно, ако попунимо рацк са серверима, онда на сваком серверу можемо у просеку потрошити снагу Псерв=Працк/Сх (Псерв = 6000В/21 = 287В). Ради једноставности, овде занемаримо потрошњу прекидача.

Хајде да направимо корак у страну и одредимо колика је максимална потрошња сервера Пмак. Ако је врло једноставно, веома неефикасно и потпуно безбедно, онда читамо шта пише на напајању сервера - то је то.

Ако је сложеније и ефикасније, онда узимамо ТДП (пакет термалног дизајна) свих компоненти и сумирамо га (ово није баш тачно, али је могуће).

Обично не знамо ТДП компоненти (осим за ЦПУ), па узимамо најисправнији, али и најкомплекснији приступ (потребна нам је лабораторија) - узимамо експериментални сервер потребне конфигурације и учитавамо га, на пример, са Линпацк-ом (ЦПУ и меморија) и фио-ом (дискови) меримо потрошњу. Ако то схватимо озбиљно, такође треба да направимо најтоплије окружење у хладном ходнику током тестова, јер ће то утицати и на потрошњу вентилатора и на потрошњу ЦПУ-а. Добијамо максималну потрошњу одређеног сервера са специфичном конфигурацијом у овим специфичним условима под овим специфичним оптерећењем. Једноставно мислимо да нови фирмвер система, друга верзија софтвера и други услови могу утицати на резултат.

Дакле, да се вратимо на Псерв и како га поредимо са Пмак-ом. Питање је разумевања како услуге функционишу и колико су јаки живци вашег техничког директора.

Ако уопште не ризикујемо, верујемо да сви сервери могу истовремено почети да троше свој максимум. У истом тренутку може доћи до једног улаза у ДЦ. Чак и под овим условима, инфра мора да пружа услугу, тако да Псерв ≡ Пмак. Ово је приступ где је поузданост апсолутно важна.

Ако технолошки директор размишља не само о идеалној сигурности, већ и о новцу компаније и довољно је храбар, онда можете одлучити да

  • Почињемо да управљамо нашим добављачима, посебно, забрањујемо планирано одржавање у време планираног вршног оптерећења да бисмо смањили пад у једном улазу;
  • и/или наша архитектура вам омогућава да изгубите рацк/ред/ДЦ, али услуге настављају да раде;
  • и/или терет добро распоређујемо хоризонтално преко регала, тако да наше услуге никада неће скочити на максималну потрошњу у једном сталку заједно.

Овде је веома корисно не само нагађати, већ пратити потрошњу и знати како сервери заправо троше електричну енергију у нормалним и вршним условима. Стога, након неке анализе, технички директор стисне све што има и каже: „ми доносимо вољно одлуку да је максимални достижни просек максималне потрошње сервера по рацк-у **толико** испод максималне потрошње,“ условно Псерв = 0.8* Пмак.

А онда сталак од 6кВ више не може да прими 16 сервера са Пмак = 375В, већ 20 сервера са Псерв = 375В * 0.8 = 300В. Оне. 25% више сервера. Ово је веома велика уштеда - на крају крајева, одмах нам је потребно 25% мање рекова (а уштедећемо и на ПДУ-овима, прекидачима и кабловима). Озбиљан недостатак оваквог решења је то што морамо стално пратити да ли су наше претпоставке и даље тачне. Да нова верзија фирмвера не мења битно рад вентилатора и потрошњу, да развој изненада са новим издањем није почео много ефикасније да користи сервере (читај: постигли су веће оптерећење и већу потрошњу на серверу). Уосталом, тада и наше почетне претпоставке и закључци одмах постају нетачни. Ово је ризик који се мора преузети одговорно (или избећи, а затим платити за очигледно недовољно искоришћене полице).

Важна напомена – требало би да покушате да дистрибуирате сервере из различитих сервиса хоризонтално преко рекова, ако је могуће. Ово је неопходно да се не би дешавале ситуације када стигне једна серија сервера за један сервис, да се рекови вертикално упакују тиме да би се повећала „густина“ (јер је тако лакше). У стварности се испоставља да је један рацк попуњен идентичним серверима са ниским оптерећењем исте услуге, а други је испуњен серверима са једнако високим оптерећењем. Вероватноћа другог пада је знатно већа, јер профил оптерећења је исти, а сви сервери заједно у овом сталку почињу да троше исту количину као резултат повећаног оптерећења.

Вратимо се на дистрибуцију сервера у рацковима. Погледали смо физички простор у рацковима и ограничења снаге, а сада погледајмо мрежу. Можете користити прекидаче са 24/32/48 Н портовима (на пример, имамо ТоР прекидаче са 48 портова). На срећу, нема много опција ако не размишљате о кабловима за извлачење. Разматрамо сценарије када имамо један прекидач по реку, један прекидач за два или три река у Рнет групи. Чини ми се да је више од три регала у групи већ превише, јер... проблем каблирања између рекова постаје много већи.

Дакле, за сваки мрежни сценарио (1, 2 или 3 река у групи), дистрибуирамо сервере између рекова:

Срацк = мин(Сх, роунддовн(Працк/Псерв), роунддовн(Н/Рнет))

Дакле, за опцију са 2 регала у групи:

Срацк2 = мин(21, роунддовн(6000/300), роунддовн(48/2)) = мин(21, 20, 24) = 20 сервера по рацк-у.

Преостале опције разматрамо на исти начин:

Срацк1 = 20
Срацк3 = 16

И скоро смо стигли. Бројимо број рекова за дистрибуцију свих наших сервера С (нека буде 1000):

Р = роундуп(С / (Срацк * Рнет)) * Рнет

Р1 = роундуп (1000 / (20 * 1)) * 1 = 50 * 1 = 50 сталака

Р2 = роундуп (1000 / (20 * 2)) * 2 = 25 * 2 = 50 сталака

Р3 = роундуп (1000 / (16 * 3)) * 3 = 25 * 2 = 63 полице

Затим израчунавамо ТЦО за сваку опцију на основу броја рекова, потребног броја прекидача, каблова итд. Бирамо опцију где је ТЦО нижи. Профит!

Имајте на уму да иако је потребан број регала за опције 1 и 2 исти, њихова цена ће бити другачија, јер број прекидача за другу опцију је упола мањи, а дужина потребних каблова је већа.

ПС Ако имате прилику да се играте са снагом по рацк-у и висином сталка, варијабилност се повећава. Али процес се може свести на горе описани једноставним проласком кроз опције. Да, биће више комбинација, али и даље веома ограничен број - напајање река за прорачун може се повећати у корацима од 1 кВ, типични рекови долазе у ограниченом броју стандардних величина: 42У, 45У, 47У, 48У , 52У. И овде Екцел-ова анализа шта-ако у режиму табеле података може помоћи у прорачунима. Гледамо примљене плоче и бирамо минимум.

Извор: ввв.хабр.цом

Додај коментар