Korisnici često pitaju o CPU steal vremenu. Posebno oni koji intenzivno koriste procesore i kojima je to ključni kriterij performansi. Postoji prilično mnogo razlika u postavljanju i ponašanju procesora i jezgri između fizičkih i virtualnih okruženja. Čak i među pružateljima usluga u oblaku postoje razlike u postavkama koje otežavaju izravnu usporedbu na prvi pogled. Iz tog razloga smatrali smo korisnim pružiti kratak pregled naših postavki i logike dodjele procesora za korisnike, kao i objasniti najčešće izvore CPU steal vremena.
Dakle, najprije, za one koji nisu upoznati s konceptom, CPU steal vrijeme je vrijeme koje vaš virtualni procesor unutar vašeg poslužitelja u oblaku mora čekati na stvarni fizički procesor dok je hipervizor zauzet njegovim korištenjem za druge stvari (poput drugih virtualnih strojeva / poslužitelja u oblaku). Ovo je odličan članak o CPU steal vremenu koji svakako vrijedi pročitati.
Malo informacija o našim postavkama procesora
Prva stvar koju treba razumjeti odnosi se na način na koji dodjeljujemo jezgre između virtualnih strojeva na svakom fizičkom računalnom čvoru koji udomljuje vaše računalstvo. Procesori i njihove jezgre na CloudSigma su dijeljeni. Drugim riječima, ne vežemo korisnički poslužitelj u oblaku za određene jezgre. CPU vrijeme dinamički dodjeljuje planer fizičkog računalnog čvora i sve se dijeli. Vjerujemo da to ima niz prednosti u pružanju pouzdanijih performansi u cjelini, omogućujući računalnom čvoru da u hodu donosi razumne prilagodbe dodjele kako bi uravnotežio opterećenje.
U kombinaciji s tim, koristimo Kontrolne grupe (skraćeno cgroups) kako bismo zajamčili dovoljno CPU vremena za svaki od poslužitelja u oblaku u skladu s resursima koje ste postavili putem veličine poslužitelja. Na kraju, planer odlučuje što će učiniti s preostalim resursima i cgroups. Također je vrijedno napomenuti da rezerviramo skup specifičnih jezgri koje su izvan raspona dodjele za računalna opterećenja korisnika. Ove jezgre koristimo za pokretanje operativnog sustava fizičkog domaćina. Posebno rezerviramo dodatne jezgre za obradu mrežnih i skladišnih operacija. Sve to ima za cilj povećati stabilnost cjelokupnog stroja. Nadalje, pomaže u pružanju pouzdanih razina performansi tijekom vremena, neovisno o opterećenju drugih korisnika za vas kao kupca.
Izvori CPU steal vremena u virtualiziranom okruženju
Za razliku od fizičkog okruženja, postoji više izvora i situacija u kojima možete doživjeti CPU steal vrijeme. To je zato što su stvari složenije u višekorisničkom virtualiziranom okruženju. Nisu sve od njih doista situacije u kojima ne primate CPU vrijeme koje biste trebali, zapravo u mnogim slučajevima često možete iskoristiti slobodne CPU cikluse izvan vaše dodijeljene veličine, ali to nije situacija u kojoj biste vidjeli CPU steal vrijeme. Tri najčešće situacije detaljnije su opisane u nastavku.
Vaš poslužitelj u oblaku je preopterećen
To se događa! Svatko želi iskoristiti što je više moguće kapaciteta onoga što plaća, međutim, ako dodijeljeni CPU vašem virtualnom poslužitelju u oblaku nije dovoljan za obradu radnog opterećenja, možete vidjeti CPU steal vrijeme kako se stvari nakupljaju i čekaju u redu unutar virtualnog procesora. Ako je to glavni uzrok CPU steal vremena, rješenje je promjena veličine poslužitelja u oblaku. Ako se radi o privremenom preopterećenju, možete sigurno ostaviti stvari nepromijenjenima. Vidjet ćete kako CPU steal vrijeme nestaje kada se vaše opterećenje smanji.
Fizički poslužitelj koji udomljuje vaš poslužitelj u oblaku je preopterećen
Ako dođe do preopterećenja domaćina, u ovom slučaju to je pogreška s naše strane. To je rijetko, ali se može dogoditi. U tom slučaju koristimo migraciju uživo za migraciju virtualnih strojeva bez prekida na druge fizičke računalne čvorove kako bismo razine opterećenja vratili na normalne razine. Općenito održavamo domaćine znatno ispod punog opterećenja. Stoga, ako to nastavite primjećivati tijekom duljeg razdoblja, kontaktirajte nas. Naša besplatna podrška 24/7 može provjeriti fizičkog domaćina na kojem se nalazite. Ako nema preopterećenja, onda je malo vjerojatno da je to glavni uzrok vašeg CPU steal vremena.
Koristite manju veličinu virtualne jezgre
U CloudSigmi vam omogućujemo definiranje veličine virtualne jezgre kako biste iskoristili prednosti posjedovanja, na primjer, više CPU niti od više manjih virtualnih jezgri za bilo koju veličinu poslužitelja u oblaku. Poslužitelj u oblaku unutar operacijskog sustava uvijek će vidjeti veličinu jezgre kao punu fizičku veličinu.
Ako je fizička jezgra 2.6GHz, ali je vaš VM 4GHz i ima dvije jezgre, svaka virtualna jezgra bit će 2GHz. Stoga ćete uvijek vidjeti steal time. Zapravo, to je zato što primate razmjerni (pro rata) dio ukupne jezgre, a ne punu veličinu, zbog toga što je veličina virtualne jezgre manja. Zbog toga biste uvijek trebali prilagoditi sve izračune CPU steal timea kako biste uzeli u obzir manju veličinu virtualne jezgre ako je doista koristite. Da biste to izbjegli, možete koristiti punu veličinu jezgre po jezgri. To možete učiniti proširenjem veličine virtualne jezgre na punu veličinu CPU jezgre (npr. Intel v4 2.6GHz).
Zaključak
CPU steal time u oblaku malo je složeniji od tradicionalnih fizičkih okruženja s jednim zakupcem. Međutim, on definitivno i dalje postoji. Izvještavanje o CPU steal timeu od strane operacijskih sustava se međutim nije prilagodilo različitim uvjetima. To znači da možete dobiti lažno pozitivne rezultate. Kada uočite CPU steal time, to obično znači da dolazi do ograničenja resursa. Nadamo se da će vam ova objava pomoći da brzo identificirate uzrok i osigurate nastavak nesmetanog rada.
Ugodno računanje!
Robert
Komentari
Još nema komentara. Budite prvi.