Burstable EC2 VPN: standardní, nebo neomezené CPU kredity?
Jeden režim škrtí na základní linii, druhý pokračuje a může vám naúčtovat. Spočítejte kredity dřív, než se z malé instance stane vaše brána.
Malá VPN brána projde testem rychlosti, zdá se v pořádku a po obědě se zhorší. Instance během testu nelhala; utrácela kredity, které si vydělala, když zahálela. Burstable instance jsou navržené přesně pro tohle, a proto je krátký benchmark špatným prediktorem odpoledne plného přenosů. Oba režimy kreditů navíc selhávají různě a volba mezi nimi je to skutečné rozhodnutí.
Odkud si test rychlosti vypůjčil
Jeden CPU kredit je jedno vCPU běžící na plné vytížení jednu minutu. Burstable instance vydělává kredity tempem své základní linie a utrácí je, když ji překročí. Nečinná noc buduje zůstatek; rušné ráno ho vyčerpá.
Proto první test vypadá dobře. Instance měla našetřený rozpočet, utratila ho za šifrování a nahlásila zdravé tempo. Nic ve výsledku neříká, co se stane, když zůstatek klesne na nulu. Benchmark měřil krátký výbuch a výbuch je to, k čemu je instance navržená. Nikdy nezměřil ustálený stav, na kterém se právě chystáte záviset.
Aritmetika, kterou musíte udělat
Vstupy jsou procento základní linie na vCPU, počet vCPU, nasčítaný zůstatek a zátěž, kterou očekáváte. Jen pro ilustraci: vezměte hypotetickou instanci se dvěma vCPU, základní linií deset procent na vCPU, 24 nasčítanými kredity a jedním vCPU plně vytíženým, zatímco druhý zahálí. Ta čísla jsou deklarované vstupy, ne specifikace žádné konkrétní velikosti 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 hoursZa těchto předpokladů je rozpočet pryč zhruba za půl hodiny. Práce na pozadí, měnící se zátěž a vlastní účtování instance výsledek posouvají a nic z toho nepředpovídá propustnost VPN. Předpovídá to, kdy začne trvalé omezení tlačit.
Všimněte si i druhého čtení: jedno vytížené vCPU je v tomto příkladu zhruba polovina celkové kapacity CPU. Mírné celkové procento může skrýt nasycené jádro, proto se dívejte na chování po jádrech spolu s čísly kreditů.
Standard a Unlimited: stejná nula, jiný význam
V režimu Standard vyčerpaný zůstatek omezuje trvalý CPU k základní linii. Instance pracuje dál, jen pomaleji, a strop je předvídatelný. V režimu Unlimited může instance dál čerpat z přebytkových kreditů poté, co zůstatek klesne na nulu, a trvalé využití nad základní linií může podle účetních pravidel služby vytvořit poplatky.
Takže CPUCreditBalance rovnající se nule znamená omezení v jednom režimu a možné účtování ve druhém. To je celé srovnání, a proto je čtení metriky bez čtení režimu zavádějící.
Přebytek také není jednoduchá faktura za kredit. Pozdější provoz pod základní linií může přebytkové využití umořit a platí další podmínky účtování. Zkontrolujte nastavený režim a aktuální pravidla služby, místo abyste se spoléhali na tvrzení o bezplatné vrstvě ze starého blogového příspěvku.
Na co dávat pozor při skutečné práci
Zaznamenejte CPUCreditUsage a CPUCreditBalance vedle doby trvání a rychlosti přenosu. U Unlimited přidejte CPUSurplusCreditBalance a CPUSurplusCreditsCharged. Průvodce AWS pro sledování CPU kreditů vysvětluje, co každý z nich hlásí a jak často.
Otestujte znovu s reprezentativní souběžností a dostatečným trváním, abyste viděli trend, a zaznamenejte počáteční zůstatek. Nečinné ráno a rušné odpoledne nejsou stejný experiment, ani se shodnými příkazy.
Limity, které nejsou CPU
Síťová šířka pásma má vlastní základní linii a chování výbuchu a limity počtu paketů nebo spojení se mohou projevit dřív než CPU. Paměť je důležitá, když implementace VPN drží stav pro každé spojení, a malá instance ji může vyčerpat dávno předtím, než jí dojdou kredity.
Zdravý zůstatek kreditů tedy dokazuje jednu věc: rozpočet CPU není současné omezení. Nic neříká o síťové cestě ani o tom, co se stane při dvojnásobné souběžnosti. Sledujte síťové metriky ve stejném okně jako metriky kreditů, aby pokles propustnosti měl kandidátskou příčinu místo teorie.
Vědomá volba základní linie
Použijte naměřenou trvalou zátěž k volbě základní linie, nebo výbuch výslovně přijměte a naplánujte na něj rozpočet. Každá odpověď je obhajitelná, když je zapsaná; žádná není obhajitelná, když je odvozená z něčího úspěšného videostreamu.
Pokud brána nese zátěž, berte režim kreditů jako součást plánu kapacity, ne jako výchozí hodnotu, kterou jste nikdy neotevřeli. Režim, který zvolíte, je selhání, které můžete předvídat.