VPS Digital Ocean mitologija

Prvo ću naglasiti da nisam sistemac ali ovo što ću ovdje prezentirat sam prvo čuo od par sistemaca (ljudi vode najmoderniji datacentar u RH) pa sam se odlučio ispitat u praksi koliko je to točno i da li je uopće točno.

Kolega @dadaas i ja smo u nekoj od tema malo skrenuli u stranu vezano za Digital Ocean droplete, pa evo ovdje možemo nastavit diskusiju :slight_smile:

VPS, hmmm, kad vidim pojam 1 cpu, 2 cpu i sl. marketinški trik odmah me sašije meko ■■■■■, proljev na balkanski, 1 cpu (u biti 1 core a ne 1 cpu što je prva kriva informacija) može biti core od AMD Opteron-a, Inter Xeon E5-ice ili nekog trećeg CPU-a, nadalje taj core može biti logički ili fizički i ovisno o tome što dobijete možete proći bolje ili lošije.

Ovaj dio je valjda svima jasan, da jedna jezgra AMD-ovog CPU-a nije po snazi niti blizu Intel i7-ice ili Xeona i da mi daš 3 jezgre nekog AMD-a šta mi to znači kad je taj CPU potato. Drugi problem koji je malo skriveniji je činjenica da hosting firme “varaju”, ovo varati je doslovce to, prva stvar što vam prodaju 1 core, 2 core ili 8 core VPS i čak ako navedu CPU, recimo Intel Xeon E5-2670 nisu vam napisali ništa, kako ništa? pa jednostavno…ništa

Krenimo redom (ovo sam već negdje pisao po forumu pa nitko nije dao odgovor koji sam u međuvremenu saznao od ponavljam, ljudi koji handlaju najbolji datacentar u RH), konkretno taj CPU (Inter Xeon E5-2670) ima 8 jezgri i HT (intel tehnologija stara 15g. vezano za multithreading taskove) što tom CPU daje još 8 logičkih jezgri tako da operativni sustav, nebitno koji, vidi 16 jezgri. Naravno da ovih prvih 8 jezgri nije jednako ovim drugim, razlika u snazi je 4:1, znači 1 fizička jezgra može napraviti posla kao 4 logičke jezgre (dokaz za ovo neću izvodit ovdje ali google je vaš prijatelj kao i sintetički testovi, tko ima i7 ili Xeon može u BIOS-u disableat HT pa vidjet da je snaga CPU-a sa 50% threada manje samo 20-25% manja), da pojasnim snaga procesora u recimo video encodingu koji je vrhunski optimiziran za multithread izvođenje na procesoru sa 8+8 jezgri daje samo 20-25% bolja vremena nego kada isključimo HT pa ostane na 8+0 jezgri (tih 8 koje su ostale su prave fizičke jezgre).

Znači kada vam hosting prodaje 16x po 1 core VPS-ove na mašini koja ima jedan Xeon e5-2670 (16 threada, 8 jezgri) djelomično vam prodaju maglu u vidu logičkih jezgri. To znači da ovisno o tome koja jezgra vas zapadne takvu CPU snagu možete očekivati.

Ovi problemi su čisto tehničke prirode, siva zona, loša edukacija klijenta, marketing, kako god ali drugi dio, na koji sad idemo je teški kriminal :wink:

Da skaliramo sve na taj jedan CPU o kojem je riječ ovdje (inače se radi o ogromnim clusterima sa ogromin brojem jezgri ukupno), ajmo reć da ako hosting proda 16 VPS-ova sa 1core/1GB na toj mašini i ti corovi se nekako podjele, meni jači tebi slabiji ili svima isto, nebitno to bi čak i bilo prihvatljivo ali hosting proda 25 takvih VPS-ova i nada se da svi korisnici neće istovremeno imat 100% loada CPU-a, kad se to desi performanse padaju, baš kao i shared hosting, u biti suštinski ni nema neke razlike, kako se sa shared hostinzima oversela VPS tako se sa VPS-ovima oversela dedicated/cloud…

Test

Digital Ocean nudi stvarno jeftine i pouzdane VPS-ove, postoje godinama i imaju brand. Kako bi pokazao da i najveći pribjegavaju gore opisanim metodama napravio sam jedan jednstavan test:

1 - postavio sam 3 identična VPS dropleta (2cpu/2GB) na koje sam radi brzine stavio Ubuntu 16 LAMP image

2 - Spojio sam se na sva 3 preko konzole (SSH, SSH key-evima) i postavio jednostavan PHP CPU test, identičan test na sva tri VPS-a. Server 1 je datacentar New York, server 2 je datacentar Amsterdam i server 3 je datacentar Frankfurt:

3 - Test optereti CPU do kraja, RAM ne dira a brzina završetka testa određuje snagu VPS-a, kraće vrijeme = bolji (brži) VPS.

Svi testovi su ponovljeni 10 puta da se izbjegne slučajnost i da se lakše može definirati pattern, rezultati su slijedeći:

Zaključak
Kao što se vidi jednaki VPS sa jednakim OS-om i settings-ima sa jednakim testom daje BITNO DRUGAČIJE rezultate, i to ne samo oscilacije na pojedinom VPS-u (server 2, Amsterdam je oscilirao 35%) već i razlike u srednjem vremenu ovisno o datacentru, tj. o opterećenju datacentra, jer ne zaboravite da DJELITE hardware resurse sa drugim korisnicima, baš kao i na shared hostingu :wink:

Kako je Frankfurt najmanje opterećen tako ima najbolji VPS droplet, vrlo mala odstupanjau svih 10 mjerenja (<5%) i ukupno gledano najbolje srednje vrijeme (ispod 1m30s).

New York je pristojno konzistentan ali srednje vrijeme 1m41s što je 11s ili 12% lošije od Frankfurta.

Amsterdam je ili pod terorističkim napadom ili hostaju PornHub jer su spajkovi ogromni, znači najveći spajk je bio preko 1minute, na ovim gore mjerenjima 32 sekunde, što je vrlo nekonzistentno, dakle kako vam susjedi u Cloudu uzmaju resurse tako vaš VPS posustaje, srednje vrijeme je najveće, dakle najgori rezultat (preko 1m50s) što je 20% lošije od “identičnog” VPS-a u datacentru frankfurt.

Poanta
Dobro se raspitajte koji CPU ima vaš VPS, kao radi taj VPS, jeli vam garantiraju resurse i nakon svega sami izvrtite testove VPS-a kojeg želite kupit da vam ne prodaju muda pod bubrege jer nije svaki VPS isti kao što nije niti svaki core isti, o CPU-ima da niti ne govorimo. Ako želite sigurne i stabilne performanse, nažalost jedina solucija je dedicated mašina u pouzdanom datacentru, na njoj su oscilacije minimalne i jedina vam garantira “zalihu” resursa, a po potrebi i više od toga (god bless load balancers :blush:).

Eto, nadam se nikog nisam ugnjavio previše ovolikim tekstom, pozz.

5 Likeova

Odlicna digresija i (uglavnom) dobra zapazanja s kojim se slazem 100%.
Ima nekih stvari grje si fulao i gdje nisi u pravu (mogu pojasniti gdje grijesis).
Ukoliko zelis odraditi nekoliko komparativnih testova i usporediti nase Linux VPS s DO, samo pusti poruku. Dobit ces nasa custom KVM + OpenVZ rjesenja u nasem DC (Zagreb) kao i DC Warsaw gdje imamo jedan virtualizacijski cluster. Mi smo vec odavno radili usporedbe usluga koje nudimo s vecinom “mainstream” hosting providera, ali ne bi bilo realno i korektno da ja objavljujem te rezultate.

1 Like

I aj se slazem s vecinom, osim s ovim testom. Nazalost 10 runanja nije dovoljno, trebalo bi barem 1000 ako ne i vise da podaci mogu biti donekle statisticki tocni, tek onda bi ih se moglo nekako tumaciti, ovako samo mozemo nagadjati da bi mozda podaci bili isti.

Takodjer ne slazem se da je bolje uzet dedicated server nego VPS cloud hosting. Odnosno slazem se da za gamere koji zele imat server je bolje dedicated, osobe koje vrte neke programe ili imaju neke heavy load scripte koje obavljaju neke teske poslove je bolje dedicated. Dok za obicnu stranicu je bolje VPS Cloud Hosting, ne zato jer je dedicated overkill, nego zato sto VPS Cloud Hosting ima neke prednosti nasparam dedicateda. A jedna od njih je cijena. ZA web stranice core i nije toliko bitan. Kladims e da na svim ovim serverima koje si testirao, da si stavio stranice na njih nebi vidio nikakvu razliku.

A ovo s overselanjem je stara stvar. A i tu ja vise ne skacem na zadnje noge, jer jednostavno ako netko ima neki maleni site, koji bas i nije za shared hosting, moze dodat par dolara i doci na taj container i tamo mu site moze raditi bez problema dugi niz godina…

Bez brige, probao sam više puta (Amsterdam je plesamo preko 1 minute sa rezultatom) ali ponovit ću još koji put za par dana.

Zanimljivo je što su ovi dropleti imali po 2 core, moj komp doma ima trenutno 4 (isključio sam HT jer nešto radim) i bio je skoro 3x brži iako bi po nekoj logici trebao biti samo 2 puta :sunglasses: što bi dalo insinuirat joj štošta :smile:

@ControlEng Možda stvarno i budem istestirao, sad nisam baš s vremenom.

Zanimljivo da su svi CPU-ovi identični, ovo mi smrdi, Intel Xeon E5 2650L, evo probao desetak VPS-ova od jedne do 8 jezgri u više datacentara i CPU je svuda isti, moj i7-4770k sa duplo manje jezgi pojede ovaj Xeon, doduše moj je u OC-u na 4,4 GHz (LINK) što objašnjava kako moja mašina ovo izvrti značajno brže -.-

PS
Bitno je da 8 core VPS :wink:

Nisam se bas mucio s ovim testovima, ali mislim da nije samo processor bitan kod testa. Da bi testirali samo processore onda bi sve ostalo trebalo biti isto.

Ili ako nije onda reci kako testiras s tim testom processore.

i7 je jak processor, samo on nije namjenjen 24/7/365. A i neznam azsto se mucis s tim tstovima, vjerujem da su ti testovi vec odradjeni.
http://cpuboss.com/cpus/Intel-Xeon-E5-2650L-vs-Intel-Core-i7-4770K

Bitnije je ovo izracunat koliko su DO jezgre slabije od recimo istog tog na dedicatedu. to bi mene zanimalo.

Ja nekak volim sve sam isprobat, jebiga :stuck_out_tongue:

Pa baš zato što su gore sva 3 VPS-a imali isti procesor me čude tolike razlike u testu, jedno od objašnjenja je da u biti nemaš toliko resursa koliko piše, bar ne u trenutku dok ih i drugi koriste (iako sam na HTOP-u imao uredno 100% zauzeće dok test traje u svim slučajevima), zato je datacentar u Frankfurtu prazan pa imaš fino konzistentno svu snagu i najbolji ukupni rezultat.

Bitnije je ovo izracunat koliko su DO jezgre slabije od recimo istog tog na dedicatedu. to bi mene zanimalo.

To i mene zanima, iako više me zanima od kud toliki spajkovi i koji su ekstremi…

PS
Ovaj test koji si linkao je kriv, ovo je V1 nama treba V3 koji je bitno jača verzija, čak je jači od tog i7 ali core to core i7 ga pojede ali 16 vs 8 bi ipak trebalo naginjat na 16:

Mada ovaj processor XEON nije bas namjenjen za neke velike procesorske radnje, vise namjenjen citanju i pisanju iz memorije, pa mozda od tud ti spikeovi, kad ga se optereti onak do kraja on puca po savovima, nekad prije nekad kasnije.

Koliko znam oni daju dedicated jezgre, bar sam tako negdje procitao, mozda da im uputis pismo i pitas ih za objasnjenje?

Ma on mora davat snagu unutar spektra od 5% sigurno, na 1000 ljudi koji testira neki CPU svi dobiju rezultat unutar 5% na istom testu, nego snaga se negdje izgubi putem, tu je problem :stuck_out_tongue:

Dao si si truda @ubergosu i sve pet, ali ne razumijes elementarnu stvar. Ocito ni ti iz “koji hendlaju najbolji datacentar u HR” nisu znali/htjeli objasniti ili ih nisi dobro pitao. Dakle, premisa koju postavljas je kriva. vcpu koji ti vidis u VPS-u nema nikakve veze za fizickim corom ili fizickim cpu koji se nalazi ispod u hardveru(dedicated server) na kojoj je se vrti virtualizacija(hipervizor) u kojem se izvodi tvoj VPS. Dakle, tvoj jedan cpu koji ti vidis u virtualki je

VIRTUALIZIRAN, NIJE FIZICKI

Procesi koji se izvode na tom tvom VIRTUALNOM CPU/JEZGRI - totalno je svejedno sto ti vidi VIRTUALKA u 99% slucajeva (licenciranje softvera u virtualki je drugacije npr., al to te ne mora brinuti) - se onda izvode po fizickim cpu-ovima i jezgrama na fizickom hardveru te se rasporedjuju prema loadu i slobodom cpu time-u na tim fizickim procesorima.To sustav radi automatski i to se zove raspodjela resursa. Napredniji ili enterprise virtualizacijski sustavi(to se masno placa!) imaju DRS(Distributed Resource Scheduling) koji radi na nacin da te autiomatski preseli live na neki drugi fizicki host u clusteru kad vidi da je ovaj trenutni preopterecen. Ima tu jos finesa koje se mogu tjunirati, treshold i sl.

Bottom line, ne znam sto si se ulovio toga, mapiranje fizickog cpu./core neces dobiti kod nikoga, za tih par desetaka dolara mjesecno niti veliki provideri poput DO kojeg spominjes/te neimaju to omoguceno niti implementirano. Nema ni fucking rackspace koji kosta 100dolara mjesecno za najmanji vps (jer placaju 50$ mjesecno jos i uslugu hw maintenance koja se ne moze ne uzeti). Vrtis se na jednom hostu, kad je preopterecen napisi tamo podrsci da te presele na drugi manje opterecen host ili skaliraj vps na veci.

Zasto je to tako? Pa koji je smisao onda zarade sa strane providera kada bi na jednom fizickom serveru koji imaju cpu sa 8 jezgri i placa ga 120dolara mjesecno, izbacio 8 vps-ova po 10 dolara i da svaki ima svoju rezerviranu jezgru? Ajde dajte se saberite i prestanite vise pisat i cudit se performansama vps platforme, jeboga patak. Ako hoces vecu posjetu skaliraj vertikalno, kad ne ide vise vertikalno, ides horizontalno, matematika je jasna - lba -> webserveri->db serveri. Ili se prebaci na dedicated servere. Ili digni svoju virtualnu platformu, ako imas para.

2 Likeova

E pa to ja zovem odgovorom, znači da kad se navodi broj CPU/Core-ova kod VPS-a se u stvari prodaje magla pošto dotićčni nemaju veze sa fizičkim CPU/Core-ovima

PS
Vezano za “ljude”, ne bave se oni VPS-ovima, ne da im se zajebavat sa malim korisnicima i rade samo dedicated + sve veće od toga, a i ako sam što krivo razumio/prenio moja je greška jer nisam sistemac.

PS2
kako onda linux vidi ovo:

PS3
Šta ti misliš koliko “CPU”-ova DO proda za jedan fizički CPU? 2:1, 3:1?

Nije magla. Kako ces napisati koliko cpu dobijas u virtualki u nekoj preglednoj tablici? Nije da kad kupujes auto, ti tamo pise koje ventile koriste u motoru ili objasnjavaju sto su disk pakne, to se valjda podrazumijeva da znas.

PS2 - hipervizor ekspoza cpu i flagove koje podrzava (cpu set) u virtualku pa to onda vidis kao taj cpu. Moze se prikazati i neki drugi cpu,ovisi sto hipervizor podrzava, ali po defaultu eksposa cpu set i tip proca koji je na fizickom hostu.

PS3 - ako netko ima VPS na kojem ima 15usera online na maximumu, DO na jednom cpu moze takvih nastancat 20. Ako radi nesto trece ala samo email server ili neki torrent box, moze i vise… To mozes pitati njih, ali nece ti dati precizan odgovor :smiley:

1 Like

Haha, zahvaljujem opet na detaljnom i direktnom odgovoru, kudos -.-

Kako ces napisati koliko cpu dobijas u virtualki u nekoj preglednoj tablici? Nije da kad kupujes auto, ti tamo pise koje ventile koriste u motoru ili objasnjavaju sto su disk pakne, to se valjda podrazumijeva da znas.

Šta nije izvedivo da bude neka jedinica snage (kod auta recimo kW/KS) a kod CPU-a tipa FLOPS ili sl. Ako kupim recimo VPS sa 5MFlopsa ne zanima je jesu to 2-3 ili 16 jezgri i koje su, zanima me snaga koju sam kupio

Aj bogati
dmidecode -t system
komandu pa da vidis o kakvom je hardveru rijec.

Nije izvedivo je virt tehnologija ne podrzava tako nesto. Fair share je algoritam koji se koristi po defaultu, znaci svaki vcpu ima jednaka prava na koristenje hw resursa. Pa tako logicno onaj VPS koji ima vise vcpua ce koristiti i vise resursa.

Postoje i podesavanja na nivou prioriteta da kazes da ta i ta virtualka/vcpu ima veci prioritet izvodjenja na hardveru od nekog drugog i u konacnici imas rezervaciju fizickih jezgri ili cijelog fizickog cpu nekoj virtualki. ALI:
a) kako bi ovo sve objasnio i prezentirao kranjem korisniku na webu
b) koliki dio korisnika bi znao uopce o cemu se prica
c) koliki broj korisnika bi uopce htio onda uzeti uslugu
d) koliki broj korisnika bi zatvorilo stranicu jer bi bilo predetaljno
e) cijena rezervacija i prioriteta bi drasticno povecala cijene, drasticno jer onda prodajes hw za virtualke 1:1, sto ne drzi vodu…

Ima smisla, znači najbolje je uzet najeftiniji dedi server (tipa 50E na hetzneru) pa imaš 100% svoje resurse bez obzira kolko i kako ih koristiš.

OVO uopće nije skupo kada se uzme da je fully managed i da mi oni sve poslože :stuck_out_tongue:

evo ga…

Ovisi za sto ti je namjena VPS. Ako je high traffic site onda ili skaliras po virtualnoj platformi ili ides na dedicirane resurse. Netko bas zeli vps-ove, nece dedi i tu prica staje. To na hetzneru je pc :slight_smile: Nisam upucen u njihove managed pakete…

Imaju sve od ti PC-eva do DEll-ovih Power Edgea, ovo mi je cijenom vrlo primamljivo, pošto imam sličan CPU i znam da pojede višestuko skuplji VPS droplet na DO.

Izbor im je ogroman, a znam da dosta hostinga u RH resela njihov hardveraj

Eto, onda si rjesio :slight_smile: