Installatieopties voor Azure-optimalisatie-engine
In dit artikel worden geavanceerde scenario's beschreven voor het instellen of upgraden van de Azure Optimization Engine (AOE).
Een lokale opslagplaats gebruiken
Als u ervoor kiest om alle afhankelijkheden uit uw eigen lokale opslagplaats te implementeren, moet u de oplossingsbestanden publiceren in een openbaar toegankelijke URL. U moet ervoor zorgen dat de volledige AOE-projectstructuur beschikbaar is op dezelfde basis-URL. SAS-token-URL's voor opslagaccounts worden niet ondersteund.
.\Deploy-AzureOptimizationEngine.ps1 -TemplateUri <URL to the Bicep file (e.g., https://contoso.com/azuredeploy.bicep)> [-AzureEnvironment <AzureUSGovernment|AzureGermanCloud|AzureCloud>]
# Example - Deploying from a public endpoint
.\Deploy-AzureOptimizationEngine.ps1 -TemplateUri "https://contoso.com/azuredeploy.bicep"
# Example 2 - Deploying from a public endpoint, using resource tags
$tags = @{"CostCenter"="FinOps";"Environment"="Production"}
.\Deploy-AzureOptimizationEngine.ps1 -TemplateUri "https://contoso.com/azuredeploy.bicep" -ResourceTags $tags
Stille implementatie
U kunt ook de SilentDeploymentSettingsPath
invoerparameter gebruiken om AOE op een meer geautomatiseerde manier te implementeren.
Het bestand waarnaar wordt verwezen, moet een JSON-bestand zijn met de benodigde kenmerken die zijn gedefinieerd (alle verplicht , tenzij opgegeven).
Een voorbeeld van de inhoud van een dergelijk stille implementatiebestand is:
{
"SubscriptionId": "<<SubscriptionId>>",
"NamePrefix": "<<CustomNamePrefix>>", // prefix for all resources. Fill in 'EmptyNamePrefix' to specify the resource names
"WorkspaceReuse": "n", // y = reuse existing workspace, n = create new workspace
"ResourceGroupName": "<<CustomName>>-rg", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
"StorageAccountName": "<<CustomName>>sa", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
"AutomationAccountName": "<<CustomName>>-auto", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
"SqlServerName": "<<CustomName>>-sql", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
"SqlDatabaseName": "<<CustomName>>-db", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
"WorkspaceName": "<<ExistingName>>", // mandatory if WorkspaceReuse is set to 'n'
"WorkspaceResourceGroupName": "<<ExistingName>>", // mandatory if workspaceReuse is set to 'n'
"DeployWorkbooks": "y", // y = deploy the workbooks, n = don't deploy the workbooks
"TargetLocation": "westeurope",
"DeployBenefitsUsageDependencies": "y", // deploy the dependencies for the Azure commitments workbooks (EA/MCA customers only + agreement administrator role required)
"CustomerType": "MCA", // mandatory if DeployBenefitsUsageDependencies is set to 'y', MCA/EA
"BillingAccountId": "<guid>:<guid>_YYYY-MM-DD", // mandatory if DeployBenefitsUsageDependencies is set to 'y', MCA or EA Billing Account ID
"BillingProfileId": "ABCD-DEF-GHI-JKL", // mandatory if CustomerType is set to 'MCA"
"CurrencyCode": "EUR" // mandatory if DeployBenefitsUsageDependencies is set to 'y'
}
Wanneer u AOE op de achtergrond implementeert, wat meestal gebeurt in geautomatiseerde werkstromen voor continue implementatie, wilt u mogelijk Microsoft Entra-verificatie gebruiken voor Azure SQL-parameters. Als u bijvoorbeeld de SQL-beheerdersrol wilt verlenen aan een Microsoft Entra ID-groep met de service-principal voor werkstroomautomatisering als lid. Hier volgt een voorbeeld:
.\Deploy-AzureOptimizationEngine.ps1 -SilentDeploymentSettingsPath "<path to deployment settings file>" -SqlAdminPrincipalType Group -SqlAdminPrincipalName "<Group Name>" -SqlAdminPrincipalObjectId "<Group Object GUID>"
Notitie
Wanneer u AOE implementeert met niet-gebruikersidentiteiten (service-principals), moet u ervoor zorgen dat u een systeemidentiteit toewijst aan de AOE SQL Server en deze de Directory Readers
rol in Microsoft Entra-id verleent. Volg de stappen in Microsoft Entra-service-principals met Azure SQL.
Azure-werkmappen met toezeggingen inschakelen
Als u de werkmappen wilt gebruiken waarmee u uw Gebruik van Azure-toezeggingen kunt analyseren (Benefits Usage
, Reservations Usage
enSavings Plans Usage
) of het effect van andere verbruikstoezeggingen (Benefits Simulation
enReservations Potential
) wilt schatten, moet u AOE configureren en bevoegdheden verlenen aan de beheerde identiteit op het niveau van uw verbruiksovereenkomst (EA of Microsoft-klantovereenkomst (MCA)). Als u dit niet kunt doen tijdens de installatie/upgrade, kunt u deze extra configuratiestappen nog steeds uitvoeren, mits u dit doet met een gebruiker die zowel Inzender in de AOE-resourcegroep is als beheerdersbevoegdheden heeft voor de verbruiksovereenkomst (Enterprise Enrollment Administrator voor EA of Eigenaar van factureringsprofiel voor MCA). U hoeft alleen het Setup-BenefitsUsageDependencies.ps1
script te gebruiken met behulp van de volgende syntaxis en de invoeraanvragen te beantwoorden:
./Setup-BenefitsUsageDependencies.ps1 -AutomationAccountName <AOE automation account> -ResourceGroupName <AOE resource group> [-AzureEnvironment <AzureUSGovernment|AzureGermanCloud|AzureCloud>]
Als u problemen ondervindt met de opname van het Prijzenoverzicht van Azure (vanwege de grote grootte van de CVS-export), kunt u de volgende Azure Automation-variabele maken om te filteren in de regio's van het prijzenoverzicht: AzureOptimization_PriceSheetMeterRegions
ingesteld op de door komma's gescheiden factureringsregio's van uw virtuele machines. Bijvoorbeeld EU - west, EU en noord.
De werkmap Gebruik van reserveringen bevat een aantal tegels met ongebruikte reserveringen waarvoor AOE verbruiksgegevens moet exporteren in het EA/MCA-bereik (in plaats van het standaardabonnementsbereik). U kunt overschakelen naar EA/MCA-bereikverbruik door de AzureOptimization_ConsumptionScope
Automation-variabele te maken/bij te werken met BillingAccount
(EA/MCA, waarvoor handmatig een andere rol van lezer voor factureringsaccounts is vereist die handmatig is verleend aan de door AOE beheerde identiteit) of BillingProfile
(alleen MCA) als waarde. Met deze optie kunt u een grote export van één verbruik genereren die kan leiden tot fouten als gevolg van onvoldoende geheugen (het zou op zijn beurt de implementatie van AOE met een Hybrid Worker vereisen).
AOE upgraden
Als u een eerdere versie van AOE hebt en een upgrade wilt uitvoeren, is het net zo eenvoudig als het opnieuw uitvoeren van het implementatiescript. Gebruik de opties voor naamgeving van resources die u tijdens de eerste implementatie hebt gekozen. Hiermee wordt de ARM-sjabloon opnieuw geïmplementeerd, nieuwe resources toegevoegd en bestaande resources bijgewerkt.
Als u echter eerder aangepaste onderdelen zoals Automation-variabelen of -planningen hebt aangepast, de prestaties van de taakuitvoering met Hybrid Workers hebt verbeterd of de oplossing hebt beperkt met Private Link, moet u het implementatiescript uitvoeren met de DoPartialUpgrade
switch, bijvoorbeeld:
.\Deploy-AzureOptimizationEngine.ps1 -DoPartialUpgrade
Met de DoPartialUpgrade
switch wordt alleen de implementatie uitgevoerd:
- Nieuwe opslagcontainers toevoegen
- Automation-runbooks bijwerken/toevoegen
- Automation-modules bijwerken/toevoegen
- Nieuwe Automation-planningen toevoegen
- Nieuwe Automation-variabelen toevoegen
- Het SQL-databasemodel upgraden
- Log Analytics-werkmappen bijwerken
Sommige klanten kunnen ook de SQL Server-implementatie aanpassen, bijvoorbeeld migreren van SQL Database naar een met SQL beheerd exemplaar. Er is geen hulpprogramma's beschikbaar om de migratie te helpen, maar zodra de databasemigratie handmatig is uitgevoerd, ondersteunt het AOE-upgradescript toekomstige DoPartialUpgrade
upgrades met de IgnoreNamingAvailabilityErrors
schakeloptie (slaat sql Server-naamgeving/bestaansvalidatie over).
Gerelateerde inhoud
Gerelateerde FinOps-mogelijkheden:
Gerelateerde producten:
Verwante oplossingen: