Přizpůsobení optimalizačního modulu Azure
Optimalizační modul Azure (AOE) je sada runbooků Azure Automation, které shromažďují, ingestují a analyzují data o spotřebě a výkonu Azure za účelem poskytování doporučení pro optimalizaci nákladů. Modul je navržený tak, aby byl flexibilní a přizpůsobitelný a umožňuje přizpůsobit jeho chování tak, aby lépe vyhovoval potřebám vaší organizace. Tento článek obsahuje pokyny k přizpůsobení nastavení modulu. Zahrnuje úpravu prahových hodnot, změnu plánů a rozšíření rozsahu modulu.
Rozšíření oboru motoru
Ve výchozím nastavení má spravovaná identita Azure Automation přiřazenou roli Čtenář pouze v příslušném předplatném. Rozsah doporučení však můžete rozšířit pouze tím, že udělíte stejnou roli Čtenář jiným předplatným nebo ještě jednodušší skupině pro správu nejvyšší úrovně.
V kontextu doporučení pro správnou velikost rozšířeného virtuálního počítače můžete mít virtuální počítače hlásit více pracovním prostorům. Pokud potřebujete zahrnout další pracovní prostory ( kromě hlavního prostředí AOE používá ) v oboru doporučení, stačí do AzureOptimization_RightSizeAdditionalPerfWorkspaces
proměnné přidat ID jejich pracovních prostorů (další podrobnosti o konfiguraci pracovních prostorů).
Pokud jste zákazník s více tenanty, můžete rozšířit dosah AOE na jiného tenanta, než na kterém byl nasazen. Abyste tohoto rozšíření dosáhli, musíte zajistit následující požadavky:
- Vytvořte instanční objekt (registraci aplikace) a tajný klíč v sekundárním tenantovi.
- Udělte požadovaná oprávnění instančnímu objektu v sekundárním tenantovi, konkrétně čtenáři v předplatných Azure nebo skupinách pro správu a globálním čtenáři v Microsoft Entra ID.
- Vytvořte přihlašovací údaje Automation v účtu Automation AOE. Nastavte ID klienta instančního objektu jako uživatelské jméno a tajný klíč jako heslo.
Register-MultitenantAutomationSchedules.ps1
Spusťte skript (dostupný v kořenové složce AOE) v kontextu předplatného, ve kterém byla nasazena služba AOE. Tento skript vytvoří nové plány úloh pro každý z exportovaných runbooků a nakonfiguruje je pro dotazování sekundárního tenanta. Stačí volat skript pomocí následující syntaxe:
./Register-MultitenantAutomationSchedules.ps1 -AutomationAccountName <AOE automation account> -ResourceGroupName <AOE resource group> -TargetSchedulesSuffix <suffix to append to every new job schedules, e.g., Tenant2> -TargetTenantId <secondary tenant GUID> -TargetTenantCredentialName <name of the Automation credential created in the previous step> [-TargetSchedulesOffsetMinutes <offset in minutes relative to original schedules, defaults to 0>] [-TargetAzureEnvironment <AzureUSGovernment|AzureGermanCloud|AzureCloud>] [-ExcludedRunbooks <An array of runbook names to exclude from the process>] [-IncludedRunbooks <An array of runbook names to include in the process>]
Úprava plánů
Ve výchozím nastavení se jako čas nasazení nastaví základní čas plánů služby AOE Automation. Brzy po dokončení počátečního nasazení se exporty, ingestace a doporučení runbooků spouštějí podle výchozích plánů modulu. Pokud například nasadíte AOE v pondělí v 11:00, dostanete nová doporučení každé pondělí v 2:30. Pokud tento plán z nějakého důvodu nevyhovuje vašim potřebám, můžete ho obnovit na dobu, která vám bude lépe vyhovovat, pomocí Reset-AutomationSchedules.ps1
skriptu (k dispozici v kořenové složce AOE). Stačí zavolat následující skript. Postupujte podle syntaxe a odpovězte na vstupní požadavky:
./Reset-AutomationSchedules.ps1 -AutomationAccountName <AOE automation account> -ResourceGroupName <AOE resource group> [-AzureEnvironment <AzureUSGovernment|AzureGermanCloud|AzureCloud>]
Výchozí čas, který zvolíte, musí být v UTC a musí být definován podle dne v týdnu a hodiny, kterou chcete vygenerovat. Musíte odvodit 3h30m od času, který zvolíte. Je to proto, že základní čas definuje plány pro všechny závislé runbooky automatizace, které se musí spouštět před generováním doporučení. Řekněme například, že chcete, aby se doporučení vygenerovala každé pondělí v 8h30 a.m.; základním časem je příští kalendářní datum, které spadá do pondělí v 5h00.00. Formát zvoleného data musí být RRRR-MM-dd HH:mm:ss, 2022-01-03 05:00:00
například .
Skript vás také požádá, abyste v případě potřeby zadali skupinu Hybrid Worker, ve které se mají runbooky spouštět (viz další pododdíl).
Škálování runbooků AOE pomocí Hybrid Workeru
Ve výchozím nastavení se runbooky AOE Automation spouští v kontextu sandboxu Azure Automation. Může dojít k problémům s výkonem kvůli limitům paměti sandboxu Automation. Nebo se můžete rozhodnout implementovat privátní koncové body pro účet úložiště nebo službu SQL Database pro posílení zabezpečení služby AOE. V obou případech potřebujete spustit runbooky z Hybrid Workeru. Jedná se o virtuální počítač Azure nebo místní virtuální počítač s rozšířením Automation Hybrid Worker. Pokud chcete změnit kontext spuštění runbooků AOE, musíte použít Reset-AutomationSchedules.ps1
skript. Podívejte se, jak použít skript v předchozí pododdílu. Po nastavení základního času spouštění runbooků zadejte název skupiny Hybrid Worker, ve které se mají runbooky spouštět.
Důležité
- Počítač Hybrid Worker musí mít nainstalované požadované moduly PowerShellu. Soubor
upgrade-manifest.json
obsahuje seznam požadovaných modulů. - Jakmile změníte kontext spuštění runbooku na Hybrid Worker, musíte vždy použít
DoPartialUpgrade
příznak při upgradu AOE nebo jinak ztratíte nastavení plánu runbooku a vrátíte se k výchozí konfiguraci sandboxu. - Spravovaná identita použitá k ověřování v rámci Azure, Microsoft Entra ID a rozsahů fakturačního účtu je stále ta, která azure Automation používá. Použije se i v případě, že má počítač Hybrid Worker přiřazenou spravovanou identitu (viz podrobnosti). Spravované identity přiřazené uživatelem jsou podporovány v kontextu Hybrid Worker pouze v těchto případech:
- Účet Automation nemá přidruženou spravovanou identitu, to znamená, že spravovanou identitu přiřazenou uživatelem může mít jenom počítač Hybrid Worker.
- Všechny runbooky běží v kontextu Hybrid Workeru. V tomto případě musíte vytvořit proměnnou
AzureOptimization_UAMIClientID
automation s ID klienta spravované identity přiřazené uživatelem jako hodnotu. - Hodnota
AzureOptimization_AuthenticationOption
proměnné Automation se aktualizuje naUserAssignedManagedIdentity
hodnotu .
Úprava prahových hodnot
U doporučení k nákladům Advisoru výchozí konfigurace AOE vytváří agregace metrik virtuálních počítačů percentilu 99. , ale můžete je upravit tak, aby byly méně konzervativní. K výpočtu skóre přizpůsobení se používají také upravitelné prahové hodnoty metrik. Výchozí prahové hodnoty jsou 30 % pro procesor (5 % pro doporučení k vypnutí), 50 % paměti (100 % pro vypnutí) a 750 Mb/s pro šířku pásma sítě (10 Mb/s pro vypnutí). Všechny nastavitelné konfigurace jsou k dispozici jako proměnné Azure Automation. Informace v další tabulce zvýrazňují nejrelevavantnější konfigurační proměnné. Pokud k nim chcete získat přístup, přejděte na možnost nabídky Sdílené prostředky účtu Automation – Proměnné .
Proměnná | Popis |
---|---|
AzureOptimization_AdvisorFilter |
Pokud vás nezajímá získání doporučení pro všechny pilíře služby Non-Cost Advisor, můžete zadat filtr na úrovni pilíře (seznam oddělený čárkami s alespoň jednou z následujících hodnot: HighAvailability,Security,Performance,OperationalExcellence ). Výchozí hodnota je pro všechny pilíře. |
AzureOptimization_AuthenticationOption |
Výchozí metoda ověřování pro runbooky automation je RunAsAccount . Pokud ale na virtuálním počítači Azure používáte Hybrid Worker, můžete to ManagedIdentity změnit. |
AzureOptimization_ConsumptionOffsetDays |
Runbook shromažďování dat Azure Consumption se každý den dotazuje na události fakturace, ke kterým došlo před sedmi dny (výchozí). Můžete změnit na užší posun, ale mějte na paměti, že některé typy předplatného (například MSDN) nepodporují nižší hodnotu. |
AzureOptimization_PerfPercentileCpu |
Výchozí percentil pro agregace metrik procesoru je 99. S nižším percentilem se algoritmus skóre fitu správné velikosti virtuálního počítače upravuje méně konzervativně. |
AzureOptimization_PerfPercentileDisk |
Výchozí percentil pro agregace metrik vstupně-výstupních operací a propustnosti disku je 99. S nižším percentilem se algoritmus skóre fitu správné velikosti virtuálního počítače upravuje méně konzervativně. |
AzureOptimization_PerfPercentileMemory |
Výchozí percentil pro agregace metrik paměti je 99. S nižším percentilem se algoritmus skóre fitu správné velikosti virtuálního počítače upravuje méně konzervativně. |
AzureOptimization_PerfPercentileNetwork |
Výchozí percentil pro agregace síťových metrik je 99. S nižším percentilem se algoritmus skóre fitu správné velikosti virtuálního počítače upravuje méně konzervativně. |
AzureOptimization_PerfPercentileSqlDtu |
Výchozí percentil, který se má použít pro metriky DTU databáze SQL. S nižším percentilem se algoritmus správné velikosti služby SQL Database upravuje méně konzervativně. |
AzureOptimization_PerfThresholdCpuPercentage |
Prahová hodnota procesoru (v % času procesoru). Nad ním se sníží skóre přizpůsobení správné velikosti virtuálního počítače. Pod ní se aktivuje doporučení ke správnému nastavení nákladů ve škálovací sadě virtuálních počítačů Azure (škálovací sada). |
AzureOptimization_PerfThresholdCpuShutdownPercentage |
Prahová hodnota procesoru (v % času procesoru). Nad ním se skóre přizpůsobení správné velikosti virtuálního počítače sníží (pouze doporučení k vypnutí). |
AzureOptimization_PerfThresholdCpuDegradedMaxPercentage |
Prahová hodnota procesoru (maximum pozorované v % času procesoru) Nad ní se triggery doporučení k výkonu škálovací sady správně zvětšují. |
AzureOptimization_PerfThresholdCpuDegradedAvgPercentage |
Prahová hodnota procesoru (průměr pozorovaný v % času procesoru) Nad ní se triggery doporučení k výkonu škálovací sady správně zvětšují. |
AzureOptimization_PerfThresholdMemoryPercentage |
Prahová hodnota paměti (v % využité paměti). Nad ním se sníží skóre přizpůsobení správné velikosti virtuálního počítače. Pod ní se aktivují triggery doporučení k nákladům správné velikosti škálovací sady. |
AzureOptimization_PerfThresholdMemoryShutdownPercentage |
Prahová hodnota paměti (v % využité paměti). Nad ním se skóre přizpůsobení správné velikosti virtuálního počítače sníží (pouze doporučení k vypnutí). |
AzureOptimization_PerfThresholdMemoryDegradedPercentage |
Prahová hodnota paměti (v % využité paměti). Nad ní se triggery doporučení k výkonu škálovací sady správně zvětšují. |
AzureOptimization_PerfThresholdNetworkMbps |
Prahová hodnota sítě (v součtu Mb/s) Nad ním se sníží skóre přizpůsobení správné velikosti virtuálního počítače. |
AzureOptimization_PerfThresholdNetworkShutdownMbps |
Prahová hodnota sítě (v součtu Mb/s) Nad ním se skóre přizpůsobení správné velikosti virtuálního počítače sníží (pouze doporučení k vypnutí). |
AzureOptimization_PerfThresholdDtuPercentage |
Prahová hodnota procentuálního využití DTU. Pod ní je instance služby SQL Database považována za nedostatečně využitou. |
AzureOptimization_RecommendAdvisorPeriodInDays |
Interval ve dnech, ve které se má hledat doporučení Advisoru v úložišti Log Analytics – výchozí hodnota je 7, protože doporučení Advisoru se shromažďují jednou týdně. |
AzureOptimization_RecommendationAADMaxCredValidityYears |
Maximální počet roků pro platnost přihlašovacích údajů nebo certifikátu instančního objektu – jakákoli platnost nad tímto intervalem generuje doporučení zabezpečení. Výchozí hodnota je 2. |
AzureOptimization_RecommendationAADMinCredValidityDays |
Minimální počet dnů pro přihlašovací údaje nebo certifikát instančního objektu před vypršením jeho platnosti – jakákoli platnost pod tímto intervalem generuje doporučení efektivity provozu. Výchozí hodnota je 30. |
AzureOptimization_RecommendationLongDeallocatedVmsIntervalDays |
Počet po sobě jdoucích dnů, po které byl virtuální počítač uvolněný před doporučením k odstranění (virtuální počítač byl uvolněn dlouho a disky stále účtují náklady). Výchozí hodnota je 30. |
AzureOptimization_RecommendationVNetSubnetMaxUsedPercentageThreshold |
Maximální procento tolerované pro využití prostoru IP podsítě Výchozí hodnota je 80. |
AzureOptimization_RecommendationVNetSubnetMinUsedPercentageThreshold |
Minimální procento využití prostoru PROTOKOLU IP podsítě – jakékoli využití pod touto hodnotou označuje příslušnou podsíť jako použití nízkého prostoru PROTOKOLU IP. Výchozí hodnota je 5. |
AzureOptimization_RecommendationVNetSubnetEmptyMinAgeInDays |
Minimální stáří ve dnech pro prázdné podsítě, které se mají označit příznakem, takže se vyhnete označení nově vytvořených podsítí. Výchozí hodnota je 30. |
AzureOptimization_RecommendationVNetSubnetUsedPercentageExclusions |
Seznam názvů podsítí oddělených čárkami oddělených jednoduchými uvozovkami, které musí být vyloučené z doporučení pro procento využití podsítě, 'gatewaysubnet' například ,'azurebastionsubnet' . Výchozí hodnota 'gatewaysubnet' je . |
AzureOptimization_RecommendationRBACAssignmentsPercentageThreshold |
Maximální procento přiřazení RBAC omezuje využití. Výchozí hodnota je 80. |
AzureOptimization_RecommendationResourceGroupsPerSubPercentageThreshold |
Maximální procento počtu skupinprostředkůch Výchozí hodnota je 80. |
AzureOptimization_RecommendationRBACSubscriptionsAssignmentsLimit |
Maximální limit pro přiřazení RBAC na předplatné. Aktuálně je nastavená na hodnotu 2000 (jak je uvedeno v dokumentu). |
AzureOptimization_RecommendationRBACMgmtGroupsAssignmentsLimit |
Maximální limit pro přiřazení RBAC na skupinu pro správu. Aktuálně je nastavená na 500 (jak je uvedeno). |
AzureOptimization_RecommendationResourceGroupsPerSubLimit |
Maximální limit počtu skupin prostředků na předplatné. Aktuálně je nastavená na 980 (jak je uvedeno). |
AzureOptimization_RecommendationStorageAcountGrowthThresholdPercentage |
Minimální procento růstu účtu úložiště vyžadované k označení úložiště jako nepoužívání zásad uchovávání informací. |
AzureOptimization_RecommendationStorageAcountGrowthMonthlyCostThreshold |
Minimální měsíční náklady (ve vaší měně EA/MCA) vyžadované k označení úložiště příznakem, že zásady uchovávání informací nejsou zavedené. |
AzureOptimization_RecommendationStorageAcountGrowthLookbackDays |
Období zpětného vyhledávání (ve dnech) pro analýzu růstu účtu úložiště. |
AzureOptimization_ReferenceRegion |
Oblast Azure použitá jako referenční informace k získání seznamu dostupných skladových položek (výchozí hodnota je westeurope ). |
AzureOptimization_RemediateRightSizeMinFitScore |
Aby k nápravě došlo, musí mít minimální skóre přizpůsobení, které musí mít doporučení správné velikosti virtuálního počítače. |
AzureOptimization_RemediateRightSizeMinWeeksInARow |
Aby bylo možné provést nápravu, musí být dokončen minimální počet týdnů v řádku doporučení správné velikosti virtuálního počítače. |
AzureOptimization_RemediateRightSizeTagsFilter |
Dvojice název/hodnota značky musí mít doporučení správné velikosti virtuálního počítače, aby k nápravě došlo. Příklad: [ { "tagName": "a", "tagValue": "b" }, { "tagName": "c", "tagValue": "d" } ] |
AzureOptimization_RemediateLongDeallocatedVMsMinFitScore |
Minimální skóre přizpůsobení dlouhého uvolněného virtuálního počítače musí mít, aby k nápravě došlo. |
AzureOptimization_RemediateLongDeallocatedVMsMinWeeksInARow |
Aby se náprava vyskytla, musí být minimální počet týdnů v řádku, ve kterém je doporučení k dlouho uvolněným virtuálním počítačům dokončeno. |
AzureOptimization_RemediateLongDeallocatedVMsTagsFilter |
Dvojice název/hodnota značky musí mít pro nápravu dlouhé doporučení uvolněného virtuálního počítače. Příklad: [ { "tagName": "a", "tagValue": "b" }, { "tagName": "c", "tagValue": "d" } ] |
AzureOptimization_RemediateUnattachedDisksMinFitScore |
Minimální skóre přizpůsobení nepřipojeného disku musí mít pro nápravu, aby k nápravě došlo. |
AzureOptimization_RemediateUnattachedDisksMinWeeksInARow |
Aby se náprava vyskytla, musí být minimální počet týdnů v řádku, kdy se nepřipojený disk doporučuje dokončit. |
AzureOptimization_RemediateUnattachedDisksAction |
Akce, která se má použít pro nápravu doporučení nepřipojeného disku (Delete nebo Downsize ). |
AzureOptimization_RemediateUnattachedDisksTagsFilter |
Název značky/hodnota páruje nepřipojené diskové doporučení, aby k nápravě došlo. Příklad: [ { "tagName": "a", "tagValue": "b" }, { "tagName": "c", "tagValue": "d" } ] |
AzureOptimization_RightSizeAdditionalPerfWorkspaces |
Čárkami oddělený seznam dalších ID pracovních prostorů služby Log Analytics, kde hledat metriky virtuálních počítačů (viz Konfigurace pracovních prostorů). |
AzureOptimization_PerfThresholdDiskIOPSPercentage |
Prahová hodnota využití vstupně-výstupních operací za sekundu disku. Pod ním se aktivují nedostatečně využité disky SSD úrovně Premium. |
AzureOptimization_PerfThresholdDiskMBsPercentage |
Prahová hodnota využití propustnosti disku. Pod ním se aktivují nedostatečně využité disky SSD úrovně Premium. |
AzureOptimization_RecommendationsMaxAgeInDays |
Maximální stáří (ve dnech) pro doporučení, které se má uchovávat v databázi SQL. Výchozí hodnota: 365. |
AzureOptimization_RetailPricesCurrencyCode |
Kód měny (například EUR, USD atd.) použitý ke shromáždění maloobchodních cen Rezervací. |
AzureOptimization_PriceSheetMeterCategories |
Kategorie měřiče oddělené čárkami používané pro filtrování ceníků, aby se zabránilo ingestování nepotřebných dat. Výchozí hodnota "Virtual Machines,Storage" je . |
AzureOptimization_ConsumptionScope |
Rozsah exportů spotřeby: Subscription (výchozí), BillingProfile (pouze MCA) nebo BillingAccount (pro MCA) vyžaduje přidání role Čtenář fakturačního účtu do spravované identity AOE. Projděte si další podrobnosti. |
Související obsah
Související produkty:
Související řešení: