Burstable EC2 VPN: vakio- vai rajoittamattomat CPU-krediitit?
Toinen tila rajoittaa perusviivalla, toinen jatkaa ja voi laskuttaa sinua. Laske krediitit ennen kuin pienestä instanssista tulee yhdyskäytäväsi.
Pieni VPN-yhdyskäytävä läpäisee nopeustestin, tuntuu hyvältä ja hidastuu sitten lounaan jälkeen. Instanssi ei valehdellut testin aikana; se kulutti krediittejä, jotka se oli ansainnut ollessaan joutilaana. Burstable-instanssit on suunniteltu juuri siihen, minkä vuoksi lyhyt testi on huono ennustaja siirtelyjä täynnä olevalle iltapäivälle. Kaksi krediittitilaa myös epäonnistuvat eri tavoin, ja niiden välillä valitseminen on varsinainen päätös.
Mistä nopeustesti lainasi
Yksi CPU-krediitti on yksi vCPU, joka käy täydellä kuormituksella yhden minuutin. Burstable-instanssi ansaitsee krediittejä perusviivansa tahdilla ja kuluttaa niitä, kun se ylittää sen. Joutilas yö kerryttää saldoa; kiireinen aamu kuluttaa sitä.
Siksi ensimmäinen testi näyttää hyvältä. Instanssilla oli säästetty budjetti, se kulutti sen salaus työhön ja raportoi terveen nopeuden. Mikään tuloksessa ei kerro, mitä tapahtuu, kun saldo saavuttaa nollan. Testi mittasi purskeen, ja purske on se, mitä instanssi on suunniteltu tuottamaan. Se ei koskaan mitannut tasaista tilaa, josta olet juuri tekemässä itsesi riippuvaiseksi.
Laskutoimitus, joka sinun on tehtävä
Syötteet ovat perusviivan prosenttiosuus vCPU:ta kohden, vCPU:iden määrä, kertynyt saldo ja odottamasi kuormitus. Vain havainnollistamiseksi: ota hypoteettinen instanssi, jossa on kaksi vCPU:ta, kymmenen prosentin perusviiva vCPU:ta kohden, 24 kertynyttä krediittiä ja yksi vCPU täysin varattuna toisen ollessa joutilaana. Nämä luvut ovat ilmoitettuja syötteitä, eivät minkään tietyn instanssikoon määrittely.
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 hoursNäillä oletuksilla budjetti on poissa noin puolessa tunnissa. Taustatyö, muuttuva kuormitus ja instanssin oma kirjanpito siirtävät tulosta, eikä mikään tästä ennusta VPN:n läpimenoa. Se ennustaa, milloin jatkuva rajoite alkaa purra.
Huomaa myös toinen lukema: yksi varattu vCPU on tässä esimerkissä noin puolet CPU:n kokonaiskapasiteetista. Maltillinen kokonaisprosentti voi piilottaa kyllästyneen ytimen, joten katso ytimenkohtaista käyttäytymistä krediittilukujen rinnalla.
Standard ja Unlimited: sama nolla, eri merkitys
Standard-tilassa ehtynyt saldo rajoittaa jatkuvaa CPU:ta perusviivaa kohti. Instanssi jatkaa työtä, vain hitaammin, ja katto on ennustettavissa. Unlimited-tilassa instanssi voi jatkaa ylijäämäkrediittien käyttöä sen jälkeen, kun saldo on nollassa, ja perusviivan yläpuolinen jatkuva käyttö voi palvelun kirjanpitosääntöjen mukaan aiheuttaa maksuja.
Niinpä CPUCreditBalance nollana tarkoittaa rajoitusta toisessa tilassa ja mahdollista laskua toisessa. Siinä on koko vertailu, ja siksi mittarin lukeminen ilman tilaa on harhaanjohtavaa.
Ylijäämä ei ole myöskään yksinkertainen lasku krediittiä kohden. Myöhempi perusviivan alapuolella tapahtuva käyttö voi vähentää ylijäämän käyttöä, ja muita maksuehtoja sovelletaan. Tarkista määritetty tila ja palvelun nykyiset säännöt sen sijaan, että luottaisit vanhasta blogikirjoituksesta peräisin olevaan väitteeseen ilmaisesta tasosta.
Mitä seurata todellisen työn aikana
Kirjaa CPUCreditUsage ja CPUCreditBalance siirron keston ja nopeuden viereen. Unlimitedissä lisää CPUSurplusCreditBalance ja CPUSurplusCreditsCharged. AWS:n CPU-krediittien seurantaopas selittää, mitä kukin niistä raportoi ja kuinka usein.
Testaa uudelleen edustavalla rinnakkaisuudella ja riittävällä kestolla, jotta näet trendin, ja kirjaa alkusaldo. Joutilas aamu ja kiireinen iltapäivä eivät ole sama koe, vaikka komennot olisivat identtiset.
Rajoitukset, jotka eivät ole CPU
Verkon kaistanleveydellä on oma perusviivansa ja purskekäyttäytymisensä, ja paketti- tai yhteyksien määrän rajat voivat sitoa ennen CPU:ta. Muisti on tärkeä, kun VPN-toteutus pitää tilaa yhteyttä kohden, ja pieni instanssi voi loppua siitä paljon ennen kuin krediitit loppuvat.
Terve krediittisaldo todistaa siis yhden asian: CPU-budjetti ei ole nykyinen rajoite. Se ei kerro mitään verkkoreitistä eikä siitä, mitä tapahtuu kaksinkertaisella rinnakkaisuudella. Seuraa verkkometriikoita samassa ikkunassa kuin krediittimetriikoita, jotta läpimenon laskulla on todennäköinen syy teorian sijaan.
Perusviivan valitseminen tarkoituksella
Käytä mitattua jatkuvaa kuormitusta perusviivan valintaan tai hyväksy purskeet nimenomaisesti ja budjetoi niille. Molemmat vastaukset ovat puolustettavissa, kun ne on kirjoitettu muistiin; kumpikaan ei ole puolustettavissa, kun ne johdetaan jonkun toisen onnistuneesta videostreamista.
Jos yhdyskäytävä on kantava, käsittele krediittitilaa osana kapasiteettisuunnitelmaa etkä oletusarvona, jota et koskaan avannut. Valitsemasi tila on se vika, jonka voit ennustaa.