Měření udržitelnosti aplikací Azure pomocí skóre SCI

Azure Monitor
Azure Automation
Azure Logic Apps
Azure Table Storage
Power BI

Tato ukázková úloha vám pomůže vytvořit model udržitelnosti na základě dostupných proxy serverů. Tento model umožňuje bodování uhlíkové účinnosti aplikace. Toto skóre SCI (Software Carbon Intensity) poskytuje směrný plán pro měření změn ve výstupu uhlíku aplikace.

Poznámka:

Jiné skleníkových plynů kromě oxidu uhličitého mají různé účinky na životní prostředí. Například jedna tuna metanu má stejný topný účinek jako 80 tun oxidu uhličitého. Podle konvence tento článek normalizuje všechno na míru ekvivalentu CO2. Odkazy na uhlík vždy znamenají ekvivalent CO2.

Architektura

Diagram vytvoření modelu udržitelnosti založeného na dostupných proxy serverech, které vyhodnocují uhlíkový dopad aplikace

Stáhněte si soubor aplikace Visio s touto architekturou.

Tok dat

  1. Nakonfigurujte zdroje dat aplikace tak, aby se použily k výpočtu skóre SCI.
  2. Uložte data ve službě Azure Table Storage v účtu Azure Storage.
  3. K výpočtu skóre SCI použijte obslužné rutiny událostí. Obslužné rutiny událostí můžou zahrnovat Azure Functions, Azure Logic Apps a Azure Blob Storage. Skóre je množství emisí uhlíku v gramech na jednotku, kde jednotka odkazuje na faktor škálování aplikace nebo aproximaci pomocí proxy serverů.
  4. Pomocí runbooků Azure Functions, Logic Apps a Automation můžete aktivovat tvarování poptávky v aplikaci nebo zahájit předdefinovaný ekomodu aplikace.
  5. Power BI můžete použít pro sestavy a vizualizaci skóre v průběhu času.

Komponenty

  • Řídicí panel dopadu emisí pro Azure pomáhá měřit potenciál cloudových emisí a úspor uhlíku. Sleduje přímé a nepřímé emise skleníkových plynů související s využitím cloudu.
  • Application Přehledy je rozšíření služby Azure Monitor, které poskytuje monitorování výkonu aplikací (APM). Přehledy aplikace vám pomůže pochopit, jak uživatelé vaši aplikaci používají. Využijte tyto znalosti ke zlepšení efektivity aplikací.
  • Azure Table Storage je služba, která ukládá nerelační strukturovaná data, označovaná také jako strukturovaná data NoSQL. Poskytuje úložiště klíčů a atributů s návrhem bez schématu. U mnoha typů aplikací je přístup k datům Table Storage rychlý a nákladově efektivní. Table Storage obvykle stojí méně než tradiční SQL pro podobné objemy dat.
  • Azure Logic Apps je platforma, kde můžete vytvářet a spouštět automatizované pracovní postupy s malými až žádným kódem. Pomocí vizuálního návrháře a výběru z předem připravených operací vytvořte pracovní postup, který integruje a spravuje zdroje proxy serveru, úložiště dat a systémy výpočtů efektivity.
  • Azure Functions je bezserverové řešení, které umožňuje psát méně kódu, udržovat méně infrastruktury a ušetřit náklady. Cloudová infrastruktura poskytuje všechny aktuální prostředky potřebné k udržování vašich aplikací v provozu.
  • Power BI může převést data na analýzy a sestavy, které poskytují přehledy v reálném čase. Ať už jsou vaše data cloudová nebo místní, Azure a Power BI mají integraci a možnosti připojení, aby se vizualizace a analýzy oživily.

Alternativy

Služby Azure použité v tomto dokumentu můžete nahradit podobnými službami. Pokud chcete provést výpočet s minimálním účinkem na infrastrukturu a zvýšit hustotu a využití stávajících prostředků, použijte služby Nebo nástroje Azure, které jsou už ve vašem prostředí nasazené:

  • Místo řídicích panelů Power BI používejte služby Azure Monitor Workbooks nebo Azure Managed Grafana .
  • V případě Přehledy aplikace nahraďte jiným nástrojem APM, například Elasticsearch nebo Open APM.
  • Tabulky dat můžete ukládat pomocí jiného systému záznamů, jako je MySQL nebo MariaDB.
  • Pokud máte spuštěné aplikace Azure Functions nebo Logic Apps, zvažte pravidelné spuštění výpočtu z existujících nasazení.
  • Pokud jsou prostředky aplikace distribuovány napříč několika skupinami prostředků, použijte značky ke korelaci nákladových dat a vypočítejte množství uhlíku, které aplikace generuje.

Podrobnosti scénáře

Tyto části popisují podrobnosti potřebné k výpočtu směrného plánu pro měření změn ve výstupu uhlíku.

Zdroje dat

Zkuste vytvořit proxy rovnici, která má několik proměnných. Zvolte metriky proxy serveru, které představují chování a výkon aplikace. V tomto příkladu se používají následující metriky:

  • Emise uhlíku infrastruktury z Řídicí panel dopadu emisí pro Azure
  • Náklady na infrastrukturu měřené denním nebo měsíčním útratou podle skupiny prostředků ze služby Microsoft Cost Management
  • Metriky výkonu a škálování aplikace z aplikačních Přehledy:
    • Počet uživatelů, volání rozhraní API nebo požadavků na server, které jsou připojené k aplikaci
    • Využití procesoru
    • Využití paměti
    • Doba odezvy pro odesílání nebo příjem

Kurz nastavení aplikačních Přehledy pro metriky najdete v tématu Sada Application Přehledy SDK pro aplikace ASP.NET Core.

Do rovnice můžete přidat další proměnné, například:

  • Emise uhlíku v infrastruktuře a hraničních službách
  • Čas, kdy se uživatelé připojují, protože výroba elektřiny a poptávka se liší podle času
  • Jakákoli jiná zvláštní metrika aplikace, která může vysvětlit, jak se jeho výkon mění v průběhu času

Vytvoření této rovnice do skóre, které může odrážet také počet uživatelů, představuje nejbližší aproximaci skóre uhlíku. Tato hodnota je srovnávacím testem pro změny a vylepšení udržitelnosti aplikace.

Dalším aspektem výkonu aplikace jsou náklady. Ve většině případů existuje přímá korelace efektivity výkonu s úsporou nákladů a uhlíku.

Popis Závěr
Výkon je vyšší, ale náklady jsou stejné Aplikace je optimalizovaná a snižuje emise uhlíku.
Náklady jsou nižší, ale výkon je stejný Aplikace je optimalizovaná a snižuje emise uhlíku.
Výkon a náklady jsou vzhůru Aplikace není optimalizovaná a zvyšuje emise uhlíku.
Náklady jsou vyšší, ale výkon je nižší nebo roven Aplikace není optimalizovaná a zvyšuje emise uhlíku nebo jsou vyšší náklady na energii, což také způsobuje vyšší emise uhlíku.

Tato korelace mezi skóre SCI aplikace, náklady a výkonem je pro každou aplikaci jedinečná. Závisí na mnoha faktorech. Shromažďování dat pro tyto tři proměnné umožňuje vytvořit algoritmus pro prognózu jejich variant. SCI vám pomůže činit informovaná rozhodnutí o architektuře a vzorech aplikací.

Výpočty

V tomto scénáři zpracujte data shromážděná z Řídicí panel dopadu emisí jako výchozí bod. Výpočet směrného plánu SCI je následující:

SCI = C * R

Součásti jsou:

  • SCI. Výsledek intenzity emisí uhlíku softwaru.

  • C. Emise uhlíku pro aplikaci.

    Tato hodnota závisí na tom, jak se aplikace nasadí v Azure. Pokud jsou například všechny prostředky aplikace v jedné skupině prostředků, emise uhlíku pro tuto skupinu prostředků budou proměnnou C .

    Poznámka:

    Tento scénář nebere v úvahu jiné zdroje emisí pro aplikaci, které závisí na architektuře a chování hraničních zařízení nebo uživatelů. Tyto aspekty jsou dalším krokem při používání uhlíkových proxy serverů.

  • R. Faktor škálování aplikace.

    Tato hodnota může být početprůměrných Faktor škálování umožňuje, aby skóre zohlednilo celkový účinek využití aplikace, a ne jen jeho nároky na nasazení.

Časový interval je dalším důležitým aspektem tohoto výpočtu. Emise uhlíku se u jakéhokoli zařízení nebo systému spotřebovávají energie, protože energetická síť může mít někdy obnovitelné nebo alternativní zdroje energie, ale ne v jiných. Solární energie je například proměnlivá. Pokud chcete být co nejpřesnější, začněte nejkratším možným časovým rámcem, například denním nebo hodinovým výpočtem.

Řídicí panel dopadu emisí poskytuje měsíční informace o emisích uhlíku na základě služeb v rámci předplatného. Pokud chcete získat toto číslo pro jednu skupinu prostředků, použijte následující rovnici:

Carbon (res-group) = (Carbon(subscription) * Cost(res-group)) / Cost(subscription)

Uložte měsíční informace o emisích uhlíku pro vaši skupinu prostředků spolu se zbývajícími daty, jak je vysvětleno v následující části.

Úložiště dat

Uložte informace o emisích uhlíku a uhlíku shromážděné v předchozí části. Exportujte informace do řídicích panelů nebo sestav, abyste mohli vizualizovat skóre emisí uhlíku v průběhu času a provádět informované volby. Z důvodů udržitelnosti a v souladu s osvědčenými postupy architektury Well Architected Framework použijte minimální použitelný systém záznamů, například Azure Table Storage.

Tabulky, které popisují shromážděná data, používají data jako v následujícím příkladu:

Data ze sestav:

  • Datum
  • Název skupiny prostředků
  • Emise uhlíku z řídicího panelu C
  • Náklady

Data z APM:

  • Procesor
  • Memory (Paměť)
  • Koeficient doby odezvy (odesílání a přijímání) Koeficient R

Výpočty: SCI

Další informace naleznete v tématu:

Korelace dat

Data o uhlíku, výkonu a nákladech aplikace umožňují vytvořit korelační algoritmus, který je specifický pro vaši aplikaci. Uvedené informace poskytují pokyny při plánování nákladů, výkonu a optimalizace emisí uhlíku.

Poznámka:

Rovnice s náklady, které slevy, jako jsou rezervace Azure nebo plány úspor nákladů, vytvářejí nesrovnalosti v korelačním algoritmu.

Další informace o výběru algoritmu najdete v tématu Výběr algoritmů pro Učení Azure Machine.

Zobrazení dat

Data a výpočty můžete zobrazit několika způsoby, například prostřednictvím přizpůsobeného sešitu služby Azure Monitor nebo jednoduchého řídicího panelu Power BI. Další informace najdete v tématu Vytvoření vlastních řídicích panelů klíčových ukazatelů výkonu pomocí Přehledy aplikace a vytvoření řídicího panelu Power BI ze sestavy.

Triggery akcí skóre SCI

Po určení skóre uhlíkového efektu aplikace pomocí proxy serverů je dalším krokem definování toho, jaké akce by se měly aktivovat nežádoucí podmínky ve skóre emisí uhlíku. Mezi příklady těchto podmínek patří:

  • Výroba energie a poptávka jsou vysoké a výroba energie je náročná na výrobu
  • Elektřina není dostupná kvůli přírodní katastrofě nebo geopolitickému konfliktu
  • Infrastruktura edge přestane být dostupná kvůli problémům s nadměrným využitím prostředků nebo dodavatelským řetězcem

Jakmile identifikujete body selhání, které můžou mít vliv na aplikaci, rozhodněte, jaké akce se mají provést, aby byla aplikace odolná vůči špičce uhlíku.

Zvažte vytvoření ekologické verze aplikace. Eco-mode verze je jednodušší, menší, levnější, zelenější verze plné aplikace. Pokud dojde ke špičkám emisí uhlíku, aplikace se vrátí k těmto minimálním funkcím.

Zvažte pomoc koncovým uživatelům při výběru verze ekologického režimu. Poskytněte uživatelům zelené tlačítko , aby deklarovali, že jsou v pořádku se štíhlým rozhraním, menším počtem grafických prvků a omezenými funkcemi výměnou za snížení emisí uhlíku. Zapojení uživatelů poskytuje příležitost řídit kulturní změny spolu s technickými změnami:

  • Určete účinek této volby: Pomocí zelené verze šetříte <X> množství uhlíku nebo přinášíte skóre uhlíku na <Y>.
  • Přečtěte si o chování uživatele a úpravě verze ekologického režimu tak, aby odrážela jejich volby. Pokud například někdo používá jenom 10 procent funkcí aplikace, může být ideálním uživatelem zelené verze.
  • V ideálním případě je plná verze v průběhu času optimalizovaná pro emise a verze se nakonec konvergují.

Důležité informace

Tyto aspekty implementují pilíře dobře architektuře Azure, což je sada hlavních principů, které je možné použít ke zlepšení kvality úlohy. Další informace naleznete v tématu Microsoft Azure Well-Architected Framework.

Zabezpečení

Zabezpečení poskytuje záruky proti záměrným útokům a zneužití cenných dat a systémů. Další informace najdete v tématu Přehled pilíře zabezpečení.

Pokud chcete zajistit větší zabezpečení, použijte koncové body služby Azure Virtual Network k zabezpečení prostředků služeb Azure pouze pro vaši virtuální síť. Tento přístup zavře přístup k těmto prostředkům z veřejného internetu a povolí provoz pouze z vaší virtuální sítě.

Pomocí tohoto přístupu vytvoříte virtuální síť v Azure a pak vytvoříte koncové body privátní služby pro služby Azure. Tyto služby jsou pak omezeny na provoz z této virtuální sítě. Můžete se také spojit se službami z místní sítě prostřednictvím brány.

Poznámka:

Pokud chcete přesunout data z místního prostředí do Azure Storage, musíte povolit veřejné IP adresy z místních počítačů nebo použít Azure ExpressRoute. Podrobnosti najdete v tématu Nasazení vyhrazených služeb Azure do virtuálních sítí.

Obecné pokyny k návrhu zabezpečených řešení najdete v dokumentaci k zabezpečení Azure.

Optimalizace nákladů

Optimalizace nákladů se zabývá způsoby, jak snížit zbytečné výdaje a zlepšit efektivitu provozu. Další informace najdete v tématu Přehled pilíře optimalizace nákladů.

Sestavy služby Řídicí panel dopadu emisí a Microsoft Cost Management jsou bezplatné. Tento příklad je záměrně minimální, aby se ušetřily náklady a emise uhlíku. Tuto architekturu můžete nasadit pomocí několika alternativních služeb Azure.

Použijte jakoukoli ekvivalentní službu, kterou už máte v nasazení aplikace. Následující zdroje informací o cenách komponent:

Efektivita výkonu

Efektivita výkonu je schopnost úlohy škálovat se tak, aby efektivním způsobem splňovala požadavky, které na ni kladou uživatelé. Další informace najdete v tématu Přehled pilíře efektivity výkonu.

Primárním účelem této architektury je poskytnout skóre udržitelnosti pro vaše aplikace s minimálním dopadem na náklady a samotný uhlík. Většina komponent je platforma jako služba (PaaS) a bezserverové služby Azure, které se můžou škálovat nezávisle na základě použití a provozu.

Řídicí panel a rozhraní úložiště v tomto příkladu nejsou vhodné pro velké využití a konzultace. Pokud chcete toto řešení poskytnout mnoha uživatelům, zvažte tyto alternativy:

  • Oddělení extrahovaných dat jejich transformací a uložením do jiného systému záznamu
  • Přepnutí služby Azure Table Storage na škálovatelnější alternativu datové struktury, jako je Azure Cosmos DB

Přispěvatelé

Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.

Hlavní autoři:

Další přispěvatel:

Pokud chcete zobrazit neveřejné profily LinkedIn, přihlaste se na LinkedIn.

Další kroky

Tato práce je v souladu s principy a metodologií zeleného softwarového základu.

Dalším krokem k vytvoření zelenější aplikace je vložení sady SDK s podporou emisí uhlíku do vaší aplikace. Triggery můžete automatizovat v reálném čase, jakmile splníte konkrétní podmínky emisí uhlíku. Další informace naleznete v tématu Green Software Foundation Carbon Aware SDK.

Pokyny pro cloudové úlohy udržitelnosti v dobře architektuře najdete v dokumentaci k úlohám Sustainability.

Další informace o udržitelnosti najdete v těchto článcích: