Schnellstart: Erstellen von Azure Advisor-Warnungen für neue Empfehlungen per ARM-Vorlage

In diesem Artikel wird veranschaulicht, wie Sie eine Warnung für neue Empfehlungen von Azure Advisor über eine Azure Resource Manager-Vorlage (ARM-Vorlage) einrichten.

Eine Azure Resource Manager-Vorlage ist eine JSON-Datei (JavaScript Object Notation), die die Infrastruktur und die Konfiguration für Ihr Projekt definiert. Die Vorlage verwendet eine deklarative Syntax. Sie beschreiben Ihre geplante Bereitstellung, ohne die Abfolge der Programmierbefehle zu schreiben, mit denen die Bereitstellung erstellt wird.

Sobald Azure Advisor eine neue Empfehlung für eine Ihrer Ressourcen erkennt, wird ein Ereignis im Azure-Aktivitätsprotokoll gespeichert. Sie können Warnungen für diese Ereignisse von Azure Advisor mithilfe einer Benutzeroberfläche für die Erstellung empfehlungsspezifischer Warnungen einrichten. Sie können ein Abonnement und optional eine Ressourcengruppe auswählen, um die Ressourcen anzugeben, für die Sie Warnungen erhalten möchten.

Sie können auch die Arten von Empfehlungen mithilfe der folgenden Eigenschaften festlegen:

  • Category
  • Auswirkungsstufe
  • Empfehlungstyp

Sie können auch die Aktion konfigurieren, die bei Auslösen einer Warnung durch folgende Ereignisse ausgeführt wird:

  • Auswählen einer vorhandenen Aktionsgruppe
  • Erstellen einer neuen Aktionsgruppe

Weitere Informationen zu Aktionsgruppen finden Sie unter Erstellen und Verwalten von Aktionsgruppen im Azure-Portal.

Hinweis

Advisor-Warnungen stehen derzeit nur für Hochverfügbarkeits-, Leistungs- und Kostenempfehlungen zur Verfügung. Sicherheitsempfehlungen werden nicht unterstützt.

Voraussetzungen

Überprüfen der Vorlage

Mit der folgenden Vorlage wird eine Aktionsgruppe mit einem E-Mail-Ziel erstellt, und alle Dienstintegritätsbenachrichtigungen für das Zielabonnement werden aktiviert. Speichern Sie diese Vorlage als CreateAdvisorAlert.json.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "actionGroups_name": {
      "defaultValue": "advisorAlert",
      "type": "string"
    },
    "activityLogAlerts_name": {
      "defaultValue": "AdvisorAlertsTest",
      "type": "string"
    },
    "emailAddress": {
      "defaultValue": "<email address>",
      "type": "string"
    }
  },
  "variables": {
    "alertScope": "[concat('/','subscriptions','/',subscription().subscriptionId)]"
  },
  "resources": [
    {
      "comments": "Action Group",
      "type": "microsoft.insights/actionGroups",
      "apiVersion": "2019-06-01",
      "name": "[parameters('actionGroups_name')]",
      "location": "Global",
      "scale": null,
      "dependsOn": [],
      "tags": {},
      "properties": {
        "groupShortName": "[parameters('actionGroups_name')]",
        "enabled": true,
        "emailReceivers": [
          {
            "name": "[parameters('actionGroups_name')]",
            "emailAddress": "[parameters('emailAddress')]"
          }
        ],
        "smsReceivers": [],
        "webhookReceivers": []
      }
    },
    {
      "comments": "Azure Advisor Activity Log Alert",
      "type": "microsoft.insights/activityLogAlerts",
      "apiVersion": "2017-04-01",
      "name": "[parameters('activityLogAlerts_name')]",
      "location": "Global",
      "scale": null,
      "tags": {},
      "properties": {
        "scopes": [
          "[variables('alertScope')]"
        ],
        "condition": {
          "allOf": [
            {
              "field": "category",
              "equals": "Recommendation"
            },
            {
              "field": "properties.recommendationCategory",
              "equals": "Cost"
            },
            {
              "field": "properties.recommendationImpact",
              "equals": "Medium"
            },
            {
              "field": "operationName",
              "equals": "Microsoft.Advisor/recommendations/available/action"
            }
          ]
        },
        "actions": {
          "actionGroups": [
            {
              "actionGroupId": "[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]",
              "webhookProperties": {}
            }
          ]
        },
        "enabled": true,
        "description": ""
      },
      "dependsOn": [
        "[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]"
      ]
    }
  ]
}

Die Vorlage definiert zwei Ressourcen:

Bereitstellen der Vorlage

Stellen Sie die Vorlage mit einer Standardmethode zur Bereitstellung einer ARM-Vorlage bereit, z. B. wie in den folgenden Beispielen per CLI und PowerShell. Ersetzen Sie die Beispielwerte für Resource Group und emailAddress durch die entsprechenden Werte für Ihre Umgebung. Der Name des Arbeitsbereichs muss für alle Azure-Abonnements eindeutig sein.

az login
az deployment group create --name CreateAdvisorAlert --resource-group my-resource-group --template-file CreateAdvisorAlert.json --parameters emailAddress='user@contoso.com'

Überprüfen der Bereitstellung

Überprüfen Sie mit einem der folgenden Befehle, ob der Arbeitsbereich erstellt wurde. Ersetzen Sie die Beispielwerte für Resource Group durch den Wert, den Sie oben verwendet haben.

az monitor activity-log alert show --resource-group my-resource-group --name AdvisorAlertsTest

Bereinigen von Ressourcen

Falls Sie mit weiteren Schnellstartanleitungen und Tutorials fortfahren möchten, sollten Sie die Ressourcen nicht bereinigen. Löschen Sie die Ressourcengruppe, wenn Sie die Ressourcen nicht mehr benötigen. Hierdurch werden die Warnungsregel und die zugehörigen Ressourcen gelöscht. Löschen der Ressourcengruppe per Azure-Befehlszeilenschnittstelle oder Azure PowerShell

az group delete --name my-resource-group

Nächste Schritte