Mali VPN gateway prođe test brzine, izgleda dobro, a zatim se poslije ručka pogorša. Instans nije lagao tokom testa; trošio je kredite koje je zaradio dok je mirovao. Burstable instansi su upravo za to napravljeni, što kratki benchmark čini lošim prediktorom za popodne puno transfera. Dva načina rada s kreditima također otkazuju na različite načine, a izbor između njih je prava odluka.

Odakle je test brzine posudio

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

Zato prvi test izgleda dobro. Instans je imao ušteđen budžet, potrošio ga na šifriranje i prijavio zdravu brzinu. Ništa u rezultatu ne govori šta se događa kada saldo padne na nulu. Benchmark je izmjerio izbijanje, a izbijanje je ono za šta je instans napravljen. Nikada nije izmjerio stabilno stanje na koje ćete se osloniti.

Aritmetika koju morate uraditi

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

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 budžet nestaje za oko pola sata. Pozadinski rad, promjenljivo opterećenje i vlastito računovodstvo instansa pomjeraju rezultat, i ništa od toga ne predviđa VPN propusnost. Ono što predviđa jeste kada će trajno ograničenje početi da se osjeti.

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

Standard i Unlimited: ista nula, drugo značenje

U načinu Standard iscrpljeni saldo ograničava trajni CPU prema osnovnoj liniji. Instans nastavlja raditi, samo sporije, a plafon je predvidiv. U načinu Unlimited instans 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 po računovodstvenim pravilima servisa.

Dakle CPUCreditBalance jednak nuli znači ograničavanje u jednom načinu i moguću naplatu u drugom. To je cijelo poređenje, 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 uslovi naplate. Provjerite konfigurisani način i trenutna pravila servisa, umjesto da se oslanjate na tvrdnju o besplatnom planu iz starog blog posta.

Na šta paziti tokom stvarnog rada

Bilježite CPUCreditUsage i CPUCreditBalance uz trajanje i brzinu transfera. Na Unlimited dodajte CPUSurplusCreditBalance i CPUSurplusCreditsCharged. AWS-ov vodič za praćenje CPU kredita objašnjava šta 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 komande.

Ograničenja koja nisu CPU

Mrežni propusni opseg ima svoju 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 mali instans može je potrošiti mnogo prije nego što potroši kredite.

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

Namjeran izbor osnovne linije

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

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

Povezani članci