Opzioni di configurazione del motore di ottimizzazione di Azure
Questo articolo descrive gli scenari di avanzamento per la configurazione o l'aggiornamento del motore di ottimizzazione di Azure .This article describes advance scenarios for setting up or upgrade Azure optimization engine (AOE).
Uso di un repository locale
Se si sceglie di distribuire tutte le dipendenze dal proprio repository locale, è necessario pubblicare i file della soluzione in un URL raggiungibile pubblicamente. È necessario assicurarsi che l'intera struttura del progetto AOE sia disponibile nello stesso URL di base. Gli URL basati su token di firma di accesso condiviso dell'account di archiviazione non sono supportati.
.\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
Distribuzione invisibile all'utente
Facoltativamente, è anche possibile usare il SilentDeploymentSettingsPath
parametro di input per distribuire AOE in modo più automatizzato.
Il riferimento al file deve essere un file JSON con gli attributi necessari definiti (tutti obbligatori , a meno che non sia specificato).
Un esempio del contenuto di tale file di distribuzione invisibile all'utente è:
{
"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'
}
Quando si distribuisce in modo invisibile all'utente AOE, che in genere si verifica nei flussi di lavoro di distribuzione continua automatizzati, è possibile usare l'autenticazione Di Microsoft Entra per i parametri SQL di Azure. Ad esempio, per concedere il ruolo di amministratore SQL a un gruppo microsoft Entra ID con l'entità servizio di automazione del flusso di lavoro come membro. Ecco un esempio:
.\Deploy-AzureOptimizationEngine.ps1 -SilentDeploymentSettingsPath "<path to deployment settings file>" -SqlAdminPrincipalType Group -SqlAdminPrincipalName "<Group Name>" -SqlAdminPrincipalObjectId "<Group Object GUID>"
Nota
Quando si distribuisce AOE con identità non utente (entità servizio), è necessario assicurarsi di assegnare un'identità di sistema a AOE SQL Server e concedergli il Directory Readers
ruolo in Microsoft Entra ID. Seguire la procedura descritta in Entità servizio Microsoft Entra con Azure SQL.
Abilitare le cartelle di lavoro degli impegni di Azure
Per usare le cartelle di lavoro che consentono di analizzare l'utilizzo degli impegni di Azure (Benefits Usage
, Reservations Usage
e Savings Plans Usage
) o stimare l'effetto di avere altri impegni a consumo (Benefits Simulation
e Reservations Potential
), è necessario configurare AOE e concedere privilegi alla relativa identità gestita a livello di contratto di consumo (EA o Contratto del cliente Microsoft)). Se non è stato possibile eseguire questa operazione durante l'installazione o l'aggiornamento, è comunque possibile eseguire questi passaggi di configurazione aggiuntivi, purché lo si faccia con un utente che sia Collaboratore nel gruppo di risorse AOE e disponga dei privilegi amministrativi per il contratto di consumo (Amministratore registrazione enterprise per EA o Proprietario del profilo di fatturazione per MCA). È sufficiente usare lo Setup-BenefitsUsageDependencies.ps1
script usando la sintassi seguente e rispondere alle richieste di input:
./Setup-BenefitsUsageDependencies.ps1 -AutomationAccountName <AOE automation account> -ResourceGroupName <AOE resource group> [-AzureEnvironment <AzureUSGovernment|AzureGermanCloud|AzureCloud>]
Se si verificano problemi con l'inserimento dell'elenco prezzi di Azure (a causa delle dimensioni elevate dell'esportazione CVS), è possibile creare la variabile di Automazione di Azure seguente per filtrare nelle aree elenco prezzi: AzureOptimization_PriceSheetMeterRegions
impostare sulle aree di fatturazione separate da virgole delle macchine virtuali. Ad esempio, UE occidentale, UE e Nord.
La cartella di lavoro Utilizzo prenotazioni include un paio di riquadri "Prenotazioni inutilizzate" che richiedono AOE di esportare i dati a consumo nell'ambito EA/MCA (anziché nell'ambito di sottoscrizione predefinito). È possibile passare all'utilizzo dell'ambito EA/MCA creando/aggiornando la AzureOptimization_ConsumptionScope
variabile di automazione con BillingAccount
(EA/MCA, richiedendo un altro ruolo lettore account di fatturazione concesso manualmente all'identità gestita AOE) o BillingProfile
(solo mca) come valore. Questa opzione può generare un'esportazione a consumo singolo di grandi dimensioni che potrebbe causare errori a causa della mancanza di memoria(a sua volta richiederebbe la distribuzione di AOE con un ruolo di lavoro ibrido).
Aggiornamento di AOE
Se si ha una versione precedente di AOE e si vuole eseguire l'aggiornamento, è semplice come riesecuzione dello script di distribuzione. Usare le opzioni di denominazione delle risorse scelte nella distribuzione iniziale. Ridistribuisce il modello arm, aggiungendo nuove risorse e aggiornando quelli esistenti.
Tuttavia, se in precedenza sono stati personalizzati componenti come variabili di automazione o pianificazioni, prestazioni di esecuzione dei processi migliorate con ruoli di lavoro ibridi o la soluzione con collegamento privato, è necessario eseguire lo script di distribuzione con il DoPartialUpgrade
commutatore, ad esempio:
.\Deploy-AzureOptimizationEngine.ps1 -DoPartialUpgrade
Con l'opzione DoPartialUpgrade
, la distribuzione sarà solo:
- Aggiungere nuovi contenitori di archiviazione
- Aggiornare/aggiungere runbook di Automazione
- Aggiornare/aggiungere moduli di Automazione
- Aggiungere nuove pianificazioni di automazione
- Aggiungere nuove variabili di automazione
- Aggiornare il modello di database SQL
- Aggiornare le cartelle di lavoro di Log Analytics
Alcuni clienti potrebbero anche personalizzare la distribuzione di SQL Server, ad esempio la migrazione da database SQL a un Istanza gestita di SQL. Non sono disponibili strumenti per facilitare la migrazione, ma una volta eseguita manualmente la migrazione del database, lo script di aggiornamento AOE supporta gli aggiornamenti futuri DoPartialUpgrade
con l'opzione IgnoreNamingAvailabilityErrors
(ignora la convalida della denominazione/esistenza di SQL Server).
Contenuto correlato
Funzionalità FinOps correlate:
- Inserimento dati
- Creazione di report e analisi
- Ottimizzazione della frequenza
- Ottimizzazione del carico di lavoro
Prodotti correlati:
Soluzioni correlate: