Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel werden die vorausgehenden Szenarien zum Einrichten oder Aktualisieren des Azure-Optimierungsmoduls (AOE) beschrieben.
Verwenden eines lokalen Repositorys
Wenn Sie alle Abhängigkeiten aus Ihrem eigenen lokalen Repository bereitstellen möchten, müssen Sie die Lösungsdateien in einer öffentlich erreichbaren URL veröffentlichen. Sie müssen sicherstellen, dass die gesamte AOE-Projektstruktur unter derselben Basis-URL verfügbar ist. Speicherkonto-SAS-tokenbasierte URLs werden nicht unterstützt.
.\Deploy-AzureOptimizationEngine.ps1 -TemplateUri <URL to the Bicep file (for example, 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
Unbeaufsichtigte Bereitstellung
Optional können Sie auch den SilentDeploymentSettingsPath Eingabeparameter verwenden, um AOE auf automatisierte Weise bereitzustellen.
Die referenzierte Datei sollte eine JSON-Datei sein, in der die erforderlichen Attribute definiert sind (alle obligatorisch, sofern nicht anders angegeben).
Ein Beispiel für den Inhalt einer solchen Datei für die unbeaufsichtigte Bereitstellung ist:
{
"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'
}
Wenn Sie AOE unbeaufsichtigt bereitstellen, wie es typischerweise in automatisierten Continuous-Deployment-Workflows der Fall ist, könnten Sie erwägen, für Azure-SQL-Parameter die Microsoft-Entra-Authentifizierung zu verwenden. Um beispielsweise einer Microsoft Entra ID-Gruppe, deren Mitglied der Dienstprinzipal für die Workflowautomatisierung ist, die SQL-Administratorrolle zuzuweisen. Hier sehen Sie ein Beispiel:
.\Deploy-AzureOptimizationEngine.ps1 -SilentDeploymentSettingsPath "<path to deployment settings file>" -SqlAdminPrincipalType Group -SqlAdminPrincipalName "<Group Name>" -SqlAdminPrincipalObjectId "<Group Object GUID>"
Hinweis
Wenn Sie AOE mit Nicht-Benutzeridentitäten (Dienstprinzipale) bereitstellen, müssen Sie sicherstellen, dass Sie dem AOE SQL Server eine Systemidentität zuweisen und ihm die Directory Readers Rolle in der Microsoft Entra-ID erteilen. Führen Sie die Schritte unter Microsoft Entra-Dienstprinzipale mit Azure SQL aus.
Aktivieren von Azure-Verpflichtungsarbeitsmappen
Um die Arbeitsmappen zu verwenden, mit denen Sie die Nutzung Ihrer Azure-Zusagen (Benefits Usage, Reservations Usage und Savings Plans Usage) analysieren oder die Auswirkungen anderer Verbrauchszusagen (Benefits Simulation und Reservations Potential) abschätzen können, müssen Sie AOE konfigurieren und der verwalteten Identität die entsprechenden Berechtigungen auf Ebene Ihrer Verbrauchsvereinbarung (EA oder Microsoft-Kundenvereinbarung (MCA)) erteilen. Wenn Sie dies während des Setups/Upgrades nicht tun konnten, können Sie diese zusätzlichen Konfigurationsschritte weiterhin ausführen, vorausgesetzt, Sie tun es mit einem Benutzer, der sowohl Mitwirkender in der AOE-Ressourcengruppe ist als auch über Administratorrechte für den Verbrauchsvertrag (Enterprise Enrollment Administrator für EA oder Abrechnungsprofilbesitzer für MCA). Sie müssen das Setup-BenefitsUsageDependencies.ps1 Skript nur mit der folgenden Syntax verwenden und die Eingabeanforderungen beantworten:
./Setup-BenefitsUsageDependencies.ps1 -AutomationAccountName <AOE automation account> -ResourceGroupName <AOE resource group> [-AzureEnvironment <AzureUSGovernment|AzureGermanCloud|AzureCloud>]
Wenn bei der Erfassung des Azure-Preisblatts (aufgrund der großen Größe des CVS-Exports) Probleme auftreten, können Sie die folgende Azure Automation-Variable erstellen, um die Preisblattregionen zu filtern: AzureOptimization_PriceSheetMeterRegions Legen Sie sie auf die durch Kommas getrennten Abrechnungsregionen Ihrer virtuellen Computer fest. Beispiel: EU-Westen, EU und Norden.
Die Arbeitsmappe „Reservierungsnutzung“ enthält einige „Nicht verwendete Reservierungen“-Kacheln, für die AOE Verbrauchsdaten auf EA-/MCA-Ebene exportieren muss (anstelle des standardmäßigen Abonnementbereichs). Sie können zur Nutzung im EA/MCA-Bereich wechseln, indem Sie die Automatisierungsvariable AzureOptimization_ConsumptionScope erstellen/aktualisieren und als Wert BillingAccount (EA/MCA; hierfür ist eine weitere Billing Account Reader-Rolle erforderlich, die der verwalteten AOE-Identität manuell zugewiesen wird) oder BillingProfile (nur MCA) festlegen. Diese Option kann einen großen einzelnen Export von Verbrauchsdaten generieren, der aufgrund von Speichermangel zu Fehlern führen kann (was wiederum die Bereitstellung von AOE mit einem Hybrid Worker erfordern würde).
Aktualisieren von AOE
Wenn Sie über eine frühere Version von AOE verfügen und ein Upgrade durchführen möchten, ist es so einfach wie das erneute Ausführen des Bereitstellungsskripts. Verwenden Sie die Ressourcenbenennungsoptionen, die Sie bei der ersten Bereitstellung ausgewählt haben. Die ARM-Vorlage wird erneut bereitgestellt, neue Ressourcen hinzugefügt und vorhandene aktualisiert.
Wenn Sie jedoch zuvor Komponenten wie Automatisierungsvariablen oder Zeitpläne angepasst haben, die Leistung der Auftragsausführung mit Hybrid Workern verbessert oder die Lösung mit privatem Link gehärtet haben, sollten Sie das Bereitstellungsskript mit dem DoPartialUpgrade Switch ausführen, z. B.:
.\Deploy-AzureOptimizationEngine.ps1 -DoPartialUpgrade
Mit dem DoPartialUpgrade Schalter wird die Bereitstellung nur Folgendes tun:
- Hinzufügen neuer Speichercontainer
- Aktualisieren/Hinzufügen von Automatisierungs-Runbooks
- Aktualisieren/Hinzufügen von Automatisierungsmodulen
- Hinzufügen neuer Automatisierungszeitpläne
- Hinzufügen neuer Automatisierungsvariablen
- Aktualisieren des SQL-Datenbankmodells
- Aktualisieren von Log Analytics-Arbeitsmappen
Einige Kunden passen möglicherweise auch die Bereitstellung von SQL Server an, beispielsweise durch die Migration von SQL Database zu einer SQL Managed Instance. Es stehen keine Tools zur Unterstützung der Migration zur Verfügung, aber sobald die Datenbankmigration manuell durchgeführt wurde, unterstützt das AOE-Upgrade-Skript zukünftige DoPartialUpgrade-Upgrades bei aktiviertem Schalter IgnoreNamingAvailabilityErrors (überspringt die Überprüfung von SQL-Server-Namen und -Existenz).
Zugehöriger Inhalt
Verwandte FinOps-Funktionen:
Verwandte Produkte:
Verwandte Lösungen: