Sdílet prostřednictvím


Doporučení pro optimalizaci nákladů na prostředí

Platí pro toto doporučení kontrolního seznamu optimalizace nákladů architektury s dobře navrženou architekturou Azure:

CO:08 Optimalizujte náklady na prostředí. Sladění výdajů za účelem stanovení priorit předprodukčního prostředí, produkčního prostředí, provozu a zotavení po havárii Pro každé prostředí zvažte požadovanou dostupnost, licencování, provozní dobu a podmínky a zabezpečení. Neprodukční prostředí by měla emulovat produkční prostředí. Implementujte strategické kompromisy do neprodukčních prostředí.

Tato příručka popisuje doporučení pro optimalizaci nákladů v prostředích úloh. Každé prostředí by mělo být přizpůsobené konkrétnímu účelu a optimalizováno pro nákladovou efektivitu. Je důležité učinit strategické kompromisy a přidělovat prostředky tam, kde jsou nejdůležitější, bez ohrožení kritických komponent. Když budete s prostředími zacházet odlišně a odpovídajícím způsobem je optimalizovat, můžete dosáhnout rovnováhy mezi optimalizací nákladů a splněním požadovaných cílů.

Definice

Pojem definice
Cíl bodu obnovení (RPO) Maximální přijatelná doba trvání ztráty dat během incidentu.
Plánovaná doba obnovení (RTO) Maximální přijatelná doba, po které může být aplikace po incidentu nedostupná.
Smlouva o úrovni služeb (SLA) Smluvní smlouva mezi poskytovatelem služeb a zákazníkem služby. Smlouva definuje cíle na úrovni služeb (SLA). Pokud smlouvu nesplníte, může to mít finanční důsledky pro poskytovatele služeb.

Klíčové strategie návrhu

Cílem optimalizace nákladů na prostředí je najít správnou rovnováhu mezi hodnotami, náklady a riziky pro každé prostředí, včetně produkčního, předprodukčního a zotavení po havárii (DR). Přizpůsobte si každé prostředí pro své konkrétní použití, abyste ušetřili peníze a efektivně využívali prostředky. Určete výhody jednotlivých prostředí, jako je efektivita nebo spokojenost zákazníků. Chcete vyhodnotit návratnost investic (ROI) pro prostředí, i když nevydělá přímý zisk. Šetřete více peněz na vysoce riziková prostředí, abyste snížili problémy a ušetřili peníze v prostředích s nízkým rizikem. Snažte se v každém prostředí vyvážit hodnotu, náklady a riziko.

Posouzení hodnoty prostředí

Posouzení hodnoty každého prostředí znamená pochopení jeho širšího vlivu na obchodní, změření spokojenosti uživatelů a určení toho, jak je v souladu s nadstřešujícími organizačními cíli. Toto posouzení vám pomůže činit informovaná rozhodnutí o přidělování zdrojů a sladit náklady s prioritami životního prostředí. Podstata hodnoty přesahuje, kolik výnosů prostředí generuje. Při vyhodnocování hodnoty prostředí je nutné upřednostnit útratu způsobem, který rezonuje s cíli úlohy. Pokud chcete posoudit hodnotu jednotlivých prostředí, zvažte následující faktory:

  • Vezměte v úvahu uživatele: Zvažte, kdo používá každé prostředí a co z něj potřebuje. Zákazníci například používají produkční prostředí, které musí být spolehlivé a musí splňovat konkrétní smlouvy SLA pro výkon a dobu provozu.

    Na druhou stranu je vývojové prostředí určené hlavně pro tým úloh, jako jsou vývojáři a testeři. Toto prostředí nemusí splňovat smlouvy SLA určené pro zákazníky, ale mělo by mít potřebné nástroje a zdroje pro efektivní fungování týmu.

    Když rozumíte jedinečným potřebám uživatelů v každém prostředí, můžete lépe přidělit prostředky a vyhnout se dodatečným nákladům. To pomáhá zajistit, aby každé prostředí bylo funkční a nákladově efektivní.

  • Sladění s organizačními mírami hodnoty: Sladění úsilí o snížení nákladů s prioritami vaší organizace, jako je spokojenost zaměstnanců nebo zisk. Pro každé prostředí porozumíte tomu, jak je definován úspěch, abyste mohli zachovat akce v cíli. Pokud se například vaše organizace zaměřuje na maximalizaci zisku nebo spokojenost zaměstnanců, srovnejte rozhodnutí o útratě s těmito metrikami.

Určení nákladů na prostředí

Určení nákladů na prostředí spočívá v znalosti nákladů na infrastrukturu, služby, licence a provozní výdaje v jednotlivých prostředích úloh. Nástroje pro správu nákladů jsou klíčem k získání přehledu o vzorech útraty a trendech napříč prostředími. Pokud chcete určit náklady na prostředí, zvažte tyto strategie:

  • Identifikace nákladových faktorů: Identifikujte klíčové faktory, které řídí náklady v jednotlivých prostředích. Mezi tyto faktory patří využití prostředků, využití úložiště, uchovávání dat, přenos dat a konkrétní služby.

  • Vyhodnocení rizik: Vyhodnoťte rizika spojená s rozhodováním o útratě a jejich potenciálním účinkem na prostředí a obchodní operace. Zvažte faktory, jako jsou zabezpečení dat, dodržování předpisů, výkon, audity a požadavky sla.

  • Monitorování a úprava útraty: Nepřetržitě monitorujte a analyzujte vzorce útraty, doručování hodnot a rizikové faktory. Pravidelně kontrolujte a upravujte strategie optimalizace útraty podle potřeb prostředí a obchodního vývoje.

Optimalizace produkčního prostředí

Optimalizace nákladů v produkčním prostředí zahrnuje implementaci strategií, které snižují zbytečné výdaje a zlepšují efektivitu provozu. Zaměřte se na odlišování produkčních nasazení a splnění potřeb uživatelů. Tady jsou doporučení pro optimalizaci produkčního prostředí:

  • Rozlišovat oblasti: Trávit méně v oblastech, které obsluhují méně zákazníků. Měli byste například investovat více do oblasti, která obsluhuje 90 procent uživatelů než v oblasti, která obsluhuje 10 procent uživatelů. Upravte strategii nasazení tak, aby splňovala požadavky jednotlivých oblastí a uživatelských segmentů.

  • Rozlišení škálování: Implementace strategií horizontálního a vertikálního škálování Efektivně škálujte prostředky tak, aby splňovaly poptávku bez nadměrného zřizování.

  • Rozlišovat infrastrukturu: Vyberte nákladově efektivní řešení hardwaru a infrastruktury, která splňují požadovaný výkon a škálovatelnost. Zvažte faktory, jako je výkon, náklady, spolehlivost a škálovatelnost.

  • Ladění modelů tenanta: Přizpůsobení prostředí na základě modelu tenanta Například utraťte více služeb a funkcí pro placené tenanty a útratu méně za neplacené tenanty.

Optimalizace prostředí zotavení po havárii

Prostředí zotavení po havárii odkazuje na infrastrukturu a procesy, které úloha používá k obnovení po rušivé události. Rušivé události zahrnují přírodní katastrofy, kybernetické útoky a selhání hardwaru. Vyvažte náklady na údržbu prostředí zotavení po havárii a potenciální vliv na rušivé události. Zvažte následující strategie:

  • Vyhodnocení důležitosti systémů a dat: Vyhodnoťte důležitost systémů a dat a určete požadovanou úroveň ochrany a prostředků pro každou komponentu.

  • Určení objektů RTO a rpOs: Chcete-li pomoct určit návrh prostředí zotavení po havárii, definujte přijatelné limity výpadků a ztrát dat pro každý systém nebo aplikaci.

  • Optimalizace studeného prostředí zotavení po havárii: Studené prostředí zotavení po havárii má malou nebo žádnou infrastrukturu nebo spuštěné služby. Infrastrukturu můžete použít jako kód (IaC) k rychlému nasazení infrastruktury během rušivé události. Zásady zálohování a úložiště musí splňovat cíle rpO a RTO prostředí. Ujistěte se, že množství a četnost záloh dat nejsou robustnější, než je potřeba.

    Kompromis: Studené prostředí zotavení po havárii je nákladově efektivní možnost, ale možná máte dlouhou dobu obnovení.

  • Optimalizace horkého prostředí zotavení po havárii: Veškerá infrastruktura a služby běží v horkém prostředí zotavení po havárii. Data zrcadlí primární lokalitu v reálném čase. Poskytuje téměř okamžité převzetí služeb při selhání a minimální ztrátu dat, pokud dojde k havárii. Zvažte nasazení typu aktivní-aktivní, abyste optimalizovali náklady.

  • Optimalizace teplého prostředí zotavení po havárii: Teplý přístup k zotavení po havárii je střední zemí mezi studeným prostředím zotavení po havárii a horkým prostředím zotavení po havárii. Teplé prostředí je částečně aktivní a pravidelně se synchronizuje s primární lokalitou. Nabízí rovnováhu mezi náklady a dobou obnovení. Jedná se ale o přístup s nejnižšími náklady. Zvažte přístup ke studené nebo horké optimalizaci nákladů.

Optimalizace předprodukčních prostředí

Optimalizace předprodukčních prostředí zahrnuje strategickou správu prostředků v rámci vývojových, testovacích a přípravných oblastí, aby bylo nutné pečlivě simulovat produkci a zároveň snížit zbytečné náklady. Předprodukční prostředí nevyžadují úplné škálování a dostupnost produkčních prostředí. Většina příležitostí spočívá v přizpůsobení těchto prostředí konkrétním potřebám testování a vývoje bez nutnosti duplikovat produkční prostředí přesně. Oblasti snížení nákladů zahrnují použití prostředků s nižšími náklady, vypnutí nepotřebných služeb a uplatnění slev nabízených pro předprodukční využití. Zvažte následující strategie optimalizace předprodukčních prostředí:

Vyhodnocení předprodukčních prostředí

Nedostatečné nebo nesprávné přidělení předprodukčních prostředí může vést k nadměrnému zřizování nebo nedostatečnému zřizování prostředků. Pokud chcete vyhodnotit předprodukční prostředí pro vaši úlohu, zvažte následující doprovodné materiály:

  • Seznamte se s typy prostředí: Identifikujte typy předprodukčních prostředí, jako je vývoj, testování a příprava, které potřebujete pro svou úlohu. Každé prostředí by mělo mít definovanou roli a konkrétní funkci, aby se zajistilo efektivní přidělování prostředků.

  • Sladění s požadavky uživatelů: Než nastavíte předprodukční prostředí, porozumíte požadavkům a očekáváním vašich uživatelů. Přizpůsobte si funkce a specifikace podle svých potřeb, abyste se vyhnuli zbytečným výdajům na funkce nebo prostředky.

  • Konsolidace prostředí: Určete, jestli můžete kombinovat prostředí bez ohrožení jejich funkčnosti. Zkombinujte prostředí s funkcemi, které se nepřekrývají. Prostředí pro přijetí uživatele můžete například sloučit s prostředím pro zajištění kvality. Funkce jsou odlišné a jedno prostředí je obvykle nečinné, pokud se používá druhý.

    Riziko: Při kombinování prostředí buďte opatrní, abyste zajistili, že nepřinášíte konflikty nebo ohrožujete procesy testování nebo vývoje.

Následující tabulka obsahuje příklady běžných předprodukčních prostředí.

Příklad předprodukčního prostředí Popis
Vývojové prostředí Vývojáři používají toto prostředí k psaní a testování kódu. Poskytuje prostor sandboxu, aby vývojáři mohli experimentovat, sestavovat a integrovat změny kódu.
Prostředí pro zajištění kvality Toto prostředí je vyhrazené pro aktivity kontroly kvality. Testování k identifikaci a opravě chyb nebo problémů před nasazením do produkčního prostředí.
Prostředí zabezpečení Toto prostředí je určené pro testování zabezpečení. Je určená k zajištění zabezpečení aplikace před hrozbami a ohroženími zabezpečení.
Prostředí pro testování přijetí uživatelů V tomto prostředí koncoví uživatelé a účastníci testují aplikaci, aby ověřili její funkčnost a zajistili, že splňuje požadavky a očekávání.
Přípravné prostředí Toto prostředí se úzce podobá produkčnímu prostředí. Před nasazením do produkčního prostředí se jedná o konečné testování a ověření.

Použití zásad správného řízení

Použití zásad správného řízení se týká omezení možností nasazení v předprodukčních prostředích, aby bylo možné řídit výdaje a zmírnit rizika. V předprodukčním prostředí máte flexibilitu přizpůsobovat konfigurace a nasazovat prostředky. Čím více se předprodukční prostředí liší od produkčního prostředí, tím větší je potenciální riziko. Použití zásad správného řízení k omezení předprodukčních prostředí. Zvažte následující pokyny:

  • Omezení úrovní výkonu: Vyhodnoťte požadavky na výkon předprodukčních prostředí. Zvolte úrovně výkonu, které vyrovnává náklady a výkon. Služba má často různé úrovně výkonu a některé z těchto úrovní jsou vhodnější pro testování. Některé služby mají úrovně, které nabízejí funkce podobné produkčnímu prostředí, ale nepřicházejí se smlouvou SLA. Tyto služby snižují náklady, ale stále poskytují potřebné funkce pro testování a vývoj.

  • Seznamte se s předprodukčními skladovými jednotkami: Některé skladové položky jsou navržené pro vývojová prostředí. Pokud chcete optimalizovat náklady, vyhodnoťte služby a úrovně. Pokud úloha nevyžaduje vysoký výkon, rozhodněte se pro úrovně s nízkým výkonem.

  • Řídit počet instancí a procesorů: Určete optimální počet instancí a prostředků procesoru, které vaše předprodukční prostředí potřebuje na základě požadavků na úlohy. Vyhněte se nadměrnému zřizování prostředků, abyste minimalizovali náklady.

  • Omezení uchovávání a protokolování: Definujte zásady uchovávání informací pro protokoly a data v předprodukčních prostředích. Zvažte potřebnou dobu uchovávání protokolů a dat na základě požadavků na dodržování předpisů a požadavků na náklady. Vyhněte se nadměrnému protokolování a uchovávání, abyste snížili náklady na úložiště.

  • Použijte konzistentní architekturu procesoru: Použijte stejnou architekturu procesoru v předprodukčním a produkčním prostředí. Například aplikace x86 neběží nativně v Azure Resource Manageru a naopak. Použijte stejnou architekturu procesoru jako produkční prostředí, abyste zajistili kompatibilitu a minimalizovali potenciální problémy.

  • Použijte stejný operační systém: Vyhněte se změně operačního systému (například z Windows na Linux) nebo jádra v předprodukčních prostředích. Software vytvořený pro Windows často neběží nativně v Linuxu bez vrstvy kompatibility a naopak. Systémy souborů a adresářové struktury se liší, což může způsobit problémy s opravami aplikací. Konzistentní prostředí pomáhají snížit riziko problémů s kompatibilitou a zajistit hladké nasazení.

  • Škálování omezení: Pokud chcete optimalizovat náklady, můžete omezit automatizaci a zmírnit tak neběžnou automatizaci. Například nastavte maximální limit škálování na tři ve vývojovém prostředí a nastavte ho na 10 v produkčním prostředí. Omezení škálování, které pomáhá řídit náklady na využití prostředků a automatizaci

  • Vypněte nepotřebné prostředky: Vypněte prostředky, když se aktivně nepoužívají, například během mimo špičky a víkendů. K naplánování vypnutí a spuštění prostředků můžete použít automatizační nástroje nebo skripty. Někteří dodavatelé poskytují rozhraní API, která můžete použít k programovému zastavení a spuštění prostředků. Zvažte použití IaC k vytvoření dočasných prostředí, která můžete odebrat, když je už nepotřebujete.

  • Omezit dostupné oblasti: Zvažte potenciální výhodu spouštění předprodukčních prostředí v různých oblastech, kde můžou být prostředky Azure levnější. Omezte předprodukční nasazení do těchto oblastí, abyste optimalizovali náklady na tato prostředí.

Vyvážení podobnosti s produkčním prostředím

Pro předprodukční prostředí je často zbytečné a nákladné přesně zrcadlit produkční prostředí. Cílem je zajistit, aby se každé předprodukční prostředí správně liší od produkčního prostředí, aby nedocházelo k zbytečným nákladům. Pokud se ale předprodukční a produkční prostředí liší, hrozí riziko nasazení chyby do produkčního prostředí. Čím více se tato prostředí liší, tím větší je riziko. Přizpůsobení předprodukčního prostředí tak, aby vyhovovalo vašim potřebám, vám může pomoct se správou rizik při optimalizaci nákladů. Pokud chcete vyrovnávat podobnost s produkčním prostředím, zvažte následující doporučení:

  • Vyhněte se přesným replikám: Vyhněte se předprodukčnímu prostředí přesnou kopii produkčního prostředí. Může zbytečně zvýšit náklady. Vytvořte předprodukční prostředí, které je nákladově efektivní, ale umožňuje odhalit a řešit potenciální rizika před nasazením.

  • Vyhněte se extrémním odchylkám: Vyhněte se nadměrným odchylkám od produkce, jako je použití různých služeb. Různé služby nemusí přesně simulovat reálná rizika. Určete prahovou hodnotu rizika a nepřekračujte prahovou hodnotu pouze za účelem úspory peněz.

  • Zkrátit moduly runtime: Zvažte zkrácení běhů procesů v předprodukční fázi, abyste ušetřili peníze. Buďte opatrní před novými ohroženími zabezpečení, ke kterým může dojít, například nevrácené paměti.

  • Kontrola licencí: Zkontrolujte licenční plány pro vaše nástroje zabezpečení. Pokud se početuzlůchchm systémem výrazně liší mezi produkčním a předprodukčním nastavením, znovu vyhodnocuje vaše potřeby k vyladění nákladů bez ohrožení zabezpečení.

Optimalizace vývojových prostředí

Vývojová prostředí jsou určená pro účely vývoje, testování a ladění. Mají kratší životní cyklus a často se vytvářejí podle potřeby a existují po krátkou dobu. Vývojová prostředí mají obvykle nižší požadavky na spolehlivost, kapacitu a zabezpečení v porovnání s jinými předprodukčními a produkčními prostředími. Můžou mít méně funkcí a mohou přijímat nižší využití prostředků. Optimalizace vývojového prostředí:

  • Vyhodnocení nástrojů: Pravidelně vyhodnocujte nákladovou efektivitu aktuálního nastavení nástrojů, včetně integrovaných vývojových prostředí (IDE), licencí a souvisejících nástrojů. Zvažte bezplatné nebo opensourcové alternativy, které nabízejí podobné funkce bez ohrožení kvality. Nepřetržitě znovuhodnotujte nutnost a efektivitu těchto nástrojů při vývoji krajiny.

  • Zvažte hardware: Vyhodnoťte náklady a výkon aktuálních nastavení hardwaru. Investice do lepšího a efektivnějšího hardwaru může zvýšit produktivitu a snížit dlouhodobé náklady. Místo častých náhrad hardwaru zvažte upgrade stávajících systémů, aby se jejich životnost prodloužila a zlepšila výkon.

  • Optimalizujte počet prostředí: Analyzujte výhody a nevýhody individualizovaných vývojových prostředí a sdíleného prostředí. Jednotlivá prostředí můžou napodobovat produkční nastavení, zabránit rušení mezi vývojáři a nabízet přizpůsobená nastavení. Škálování se ale stává nákladnější s rostoucím počtem vývojářů. Sdílená prostředí můžou ušetřit náklady, ale problémy se spolehlivostí můžou nastat, pokud problémy ovlivňují celý vývojový tým současně. Najděte správnou rovnováhu na základě nákladů, zmírnění rizik, efektivity a spokojenosti vývojářů.

  • Pravidelné čištění: Pravidelně vyčistěte a optimalizujte vývojové prostředí, abyste se vyhnuli akumulace osamocených prostředků, nepoužitých dat a experimentů testování konceptu. Implementujte procesy čištění nebo automatizované nástroje pro identifikaci a odebrání nepoužívaných prostředků. Uchovávejte pouze základní a aktivní komponenty. Pravidelné čištění pomáhá snížit náklady na úložiště a zajistit efektivní využití prostředků.

  • Implementujte vzorkované škálování: Místo škálování všech komponent na maximální kapacitu zvažte ukázkový přístup, ve kterém selektivně škálujete důležité komponenty. Tento přístup může být nákladově efektivní a současně minimalizovat rizika. Vyhodnoťte poměr rizik k výhodě bez škálování určitých prvků a zvažte potenciální vliv na prostředí.

  • Optimalizace správy dat: Vývojová prostředí můžou mít nízké požadavky na uchovávání dat a frekvenci zálohování.

Zvažte emulaci koncových bodů.

Náklady v předprodukčním prostředí můžete optimalizovat pomocí emulace koncových bodů nebo napodobování koncových bodů, zejména pro nákladné prostředky, jako jsou GPU. Identifikujte komponenty nebo služby v předprodukčním prostředí, které jsou nejdražší nebo náročné na prostředky. Pomocí napodobených koncových bodů můžete simulovat odpovědi těchto nákladných komponent bez jejich vyvolání. K simulaci odpovědí rozhraní API můžete použít nástroje, jako je WireMock, postmanský napodobovaný server nebo vlastní implementace.

Emulace a napodobení koncových bodů pomáhají ušetřit náklady, ale musíte zajistit, aby představovaly produkční prostředí do dostatečného stupně pro testování. Zatěžte rovnováhu mezi přesností a náklady, abyste se vyhnuli budoucím problémům v produkčním prostředí. Pokud jsou například gpu hlavním nákladovým faktorem, zvažte emulaci GPU pro úlohy, které nevyžadují skutečný výkon zpracování GPU v předprodukčních fázích. Emulace nemusí plně reprezentovat výkon nebo výslovnost skutečných GRAFICKÝch procesorů, takže ji používejte v případě, že přesné chování GPU není důležité pro předprodukční testování.

Usnadnění azure

Určení a optimalizace nákladů na prostředí: Microsoft Cost Management je sada nástrojů, které organizacím pomáhají monitorovat, přidělovat a optimalizovat náklady na úlohy Microsoft Cloudu. Cost Management je k dispozici komukoli, kdo má přístup k rozsahu fakturace nebo správy prostředků.

Azure Advisor je nástroj, který poskytuje doporučení pro optimalizaci nákladů, včetně identifikace oblastí využití virtuálních počítačů, které potřebují optimalizaci. Využijte Advisor k tomu, abyste se mohli informovaně rozhodovat a optimalizovat náklady ve vašem prostředí Azure. Azure poskytuje nástroje a funkce správy nákladů, které pomáhají stanovit prioritu útraty. Pomocí těchto nástrojů můžete sledovat a analyzovat náklady napříč prostředími, nastavovat rozpočty a přijímat doporučení pro optimalizaci nákladů.

Použití zásad správného řízení: Pomocí služby Azure Policy můžete omezit typy prostředků, skladové položky a instance definováním pravidel zásad, která vynucují omezení typů prostředků, které můžete nasadit ve svém prostředí Azure. Můžete udržovat kontrolu nad zřízenými prostředky a zajistit dodržování zásad a osvědčených postupů vaší organizace.

Pokud chcete omezit typy prostředků pomocí služby Azure Policy, můžete definovat pravidla zásad, která určují povolené typy prostředků. Tato pravidla použijte pro příslušná předplatná Nebo skupiny prostředků Azure. Azure Policy brání uživatelům v nasazování prostředků, které nejsou povolené.

Pomocí Azure Resource Manageru můžete definovat a spravovat prostředky deklarativním způsobem. Prostředky, které jsou přiděleny jednotlivým prostředím, můžete ladit na základě jejich specifických požadavků. K optimalizaci nákladů použijte šablony a parametrizovat konfigurace prostředků.

Optimalizace předprodukčních prostředí: Azure nabízí možnosti pro vývoj/testování, které poskytují snížené sazby pro neprodukční prostředí. Pro kritická produkční prostředí můžete přidělit více prostředků a rozpočtu, což optimalizuje náklady v neprodukčních prostředích. Můžete také použít nabídku licencování Azure Zvýhodněné hybridní využití Azure.

Azure API Management můžete použít k napodobování rozhraní API. API Management funguje jako fasáda back-endových služeb, což umožňuje poskytovatelům rozhraní API abstrahovat implementace rozhraní API a vyvíjet back-endovou architekturu, aniž by to mělo vliv na uživatele rozhraní API.

Kontrolní seznam optimalizace nákladů

Projděte si kompletní sadu doporučení.