Mali VPN pristupnik prođe test brzine, djeluje dobro, a zatim se poslije ručka pogorša. Instanca nije lagala tijekom testa; trošila je kredite koje je zaradila dok je mirovala. Burstable instance upravo su za to napravljene, što kratki benchmark čini lošim prediktorom popodneva punog prijenosa. Dva načina rada s kreditima također otkazuju na različite načine, a izbor između njih prava je odluka.

Odakle je test brzine posudio

Jedan CPU kredit je jedan vCPU koji radi uz puno iskorištenje jednu minutu. Burstable instanca zarađuje kredite po stopi svoje osnovne linije i troši ih kada je premaši. Mirna noć gradi saldo; zauzeto jutro ga crpi.

Zato prvi test izgleda dobro. Instanca je imala ušteđen proračun, potrošila ga na šifriranje i prijavila zdravu brzinu. Ništa u rezultatu ne govori što se događa kada saldo padne na nulu. Benchmark je izmjerio izbijanje, a izbijanje je ono za što je instanca napravljena. Nikada nije izmjerio stabilno stanje na koje ćete se osloniti.

Aritmetika koju morate napraviti

Ulazi su postotak osnovne linije po vCPU, broj vCPU, nagomilani saldo i opterećenje koje očekujete. Samo radi ilustracije: uzmite hipotetsku instancu s dva vCPU, osnovnom linijom od deset posto po vCPU, 24 nagomilana kredita i jednim vCPU potpuno zauzetim dok drugi miruje. Ti su brojevi deklarirani ulazi, a ne specifikacija bilo koje konkretne veličine instance.

Earn rate:       2 x 10% x 60 = 12 credits/hour
Workload usage:  1 x 100% x 60 = 60 credits/hour
Net draw:        60 - 12 = 48 credits/hour
Accrued budget:  24 / 48 = 0.5 hours

Pod tim pretpostavkama proračun nestaje za otprilike pola sata. Pozadinski rad, promjenjivo opterećenje i vlastito računovodstvo instance pomiču rezultat i ništa od toga ne predviđa VPN propusnost. Ono što predviđa jest kada će trajno ograničenje početi djelovati.

Obratite pozornost i na drugo čitanje: jedan zauzet vCPU u ovom je primjeru otprilike polovica ukupnog CPU kapaciteta. Umjeren ukupni postotak može sakriti zasićenu jezgru, zato gledajte ponašanje po jezgri uz brojeve kredita.

Standard i Unlimited: ista nula, drugo značenje

U načinu Standard iscrpljeni saldo ograničava trajni CPU prema osnovnoj liniji. Instanca nastavlja raditi, samo sporije, a plafon je predvidljiv. U načinu Unlimited instanca može nastaviti crpiti iz viška kredita nakon što saldo padne na nulu, a trajno korištenje iznad osnovne linije može proizvesti naplate prema računovodstvenim pravilima servisa.

Dakle CPUCreditBalance jednak nuli znači ograničavanje u jednom načinu i moguću naplatu u drugom. To je cijela usporedba i zato je čitanje metrike bez čitanja načina obmanjujuće.

Višak također nije jednostavan račun po kreditu. Kasniji rad ispod osnovne linije može otplatiti korištenje viška i primjenjuju se drugi uvjeti naplate. Provjerite konfigurirani način i trenutna pravila servisa umjesto da se oslanjate na tvrdnju o besplatnom planu iz starog blog posta.

Na što paziti tijekom stvarnog rada

Bilježite CPUCreditUsage i CPUCreditBalance uz trajanje i brzinu prijenosa. Na Unlimited dodajte CPUSurplusCreditBalance i CPUSurplusCreditsCharged. AWS-ov vodič za praćenje CPU kredita objašnjava što svaki od njih prijavljuje i koliko često.

Ponovite test s reprezentativnom paralelnošću i dovoljnim trajanjem da vidite trend i zabilježite početni saldo. Mirno jutro i zauzeto popodne nisu isti eksperiment, čak i uz identične naredbe.

Ograničenja koja nisu CPU

Mrežna propusnost ima vlastitu osnovnu liniju i ponašanje izbijanja, a ograničenja brzine paketa ili broja veza mogu se aktivirati prije CPU-a. Memorija je važna kada VPN implementacija čuva stanje po vezi, a mala instanca može je potrošiti mnogo prije nego što potroši kredite.

Zdrav saldo kredita stoga dokazuje jedno: CPU proračun nije trenutno ograničenje. Ne govori ništa o mrežnom putu ni o tome što se događa pri dvostrukoj paralelnosti. Gledajte mrežne metrike u istom prozoru kao i metrike kredita, da pad propusnosti ima vjerojatan uzrok umjesto teorije.

Namjeran odabir osnovne linije

Koristite izmjereno trajno opterećenje da odaberete osnovnu liniju ili izričito prihvatite izbijanje i planirajte proračun za njega. Svaki je odgovor obranjiv kada je zapisan; nijedan nije obranjiv kada je izveden iz nečijeg uspješnog video streama.

Ako pristupnik nosi opterećenje, tretirajte način rada s kreditima kao dio plana kapaciteta, a ne kao zadanu postavku koju nikada niste otvorili. Način koji odaberete otkaz je koji možete predvidjeti.

Povezani članci