Pozdrav svima,
Trenutno planiram nadogradnju svog kućnog servera za virtualizaciju i kontejnere, pa bi mi dobro došlo nekoliko praktičnih savjeta od ljudi koji imaju iskustva s gušćim VM okruženjima. Moja trenutna mašina polako dostiže limite po pitanju dodijeljenih resursa, pa razmišljam o tome da nekoliko manjih računara konsolidujem u jedno namensko 2U kućište.
Gledajući polovnu enterprise opremu, za oko mi je zapeo Intel Xeon procesor sa 28 jezgara na radnom taktu od 2.1GHz, sa 10.4 GT/s UPI magistralom
https://serverorbit.com/cpus-and-processors/xeon-28-core/2-1ghz-10-4gt-upi. Na papiru, 28 fizičkih jezgara i 56 niti na modernijoj Scalable platformi nudi ogroman prostor za pokretanje više izolovanih testnih okruženja, baza podataka i automatskih build skripti odjednom, bez stalnog straha od zagušenja resursa.
Ipak, glavna nedoumica mi je stvarni balans između radnog takta i velikog broja jezgara. Iz ličnog iskustva s ranijim serverima, primijetio sam da ogroman broj jezgara izgleda fantastično na grafikonima hipervizora, ali bazni takt od 2.1GHz ponekad zna djelovati tromo kod kratkih, jednotaktnih zadataka—kao što je kompajliranje manjih paketa ili pokretanje starijih servisa—posebno kada all-core turbo padne pod stalnim opterećenjem. Takođe, ukoliko kasnije dodam još jedan procesor na ploču, brine me da li će prenos podataka preko te 10.4 GT/s UPI veze stvoriti primjetna kašnjenja kada virtualne mašine prelaze granice NUMA čvorova.
Za one među vama koji koriste procesore s velikim brojem jezgara za virtualizaciju, kako balansirate radni takt i gustinu resursa? Da li je strogo vezivanje vCPU-a i NUMA čvorova dovoljno da održi sistem responzivnim, ili je ipak pametnije ići na manje jezgara s višim taktom osim ako posao nije stopostotno paralelan?