Расширение виртуальной машины "Диагностика производительности Azure" для Windows

Расширение виртуальной машины "Диагностика производительности Azure" помогает собирать диагностические данные о производительности с виртуальных машин Windows. Расширение выполняет анализ и предоставляет отчет о результатах и рекомендациях по выявлению и устранению проблем с производительностью на виртуальной машине. Это расширение устанавливает средство устранения неполадок с именем PerfInsights.

Примечание.

Если вы хотите запустить диагностика на виртуальной машине из портал Azure для виртуальных машин, не являющихся классическими, рекомендуется использовать новый интерфейс. Дополнительные сведения см. в статье Диагностика производительности для виртуальных машин Azure.

Предварительные требования

Это расширение можно установить на:

  • Windows Server 2019
  • Windows Server 2016
  • Windows Server 2012 R2
  • Windows Server 2012
  • Windows Server 2008 R2
  • Windows 10
  • Windows 8.1
  • Windows 8

Схема расширения

В следующем формате JSON показана схема расширения виртуальной машины системы диагностики производительности Azure. Для этого расширения требуются имя и ключ для учетной записи хранения для хранения выходных данных и отчета диагностика. Эти значения являются конфиденциальными. Ключ учетной записи хранения должен храниться в конфигурации защищенного параметра. Данные параметров, защищенные расширением виртуальной машины Azure, шифруются и расшифровываются только на целевой виртуальной машине. Обратите внимание, что storageAccountName и storageAccountKey чувствительны к регистру. Другие обязательные параметры перечислены в следующем разделе.

    {
      "name": "[concat(parameters('vmName'),'/AzurePerformanceDiagnostics')]",
      "type": "Microsoft.Compute/virtualMachines/extensions",
      "location": "[parameters('location')]",
      "apiVersion": "2015-06-15",
      "properties": {
        "publisher": "Microsoft.Azure.Performance.Diagnostics",
        "type": "AzurePerformanceDiagnostics",
        "typeHandlerVersion": "1.0",
        "autoUpgradeMinorVersion": true,
        "settings": {
          "storageAccountName": "[parameters('storageAccountName')]",
          "performanceScenario": "[parameters('performanceScenario')]",
          "traceDurationInSeconds": "[parameter('traceDurationInSeconds')]",
          "perfCounterTrace": "[parameters('perfCounterTrace')]",
          "networkTrace": "[parameters('networkTrace')]",
          "xperfTrace": "[parameters('xperfTrace')]",
          "storPortTrace": "[parameters('storPortTrace')]",
          "srNumber": "[parameters('srNumber')]",
          "requestTimeUtc":  "[parameters('requestTimeUtc')]",
          "resourceId": "[resourceId('Microsoft.Compute/virtualMachines', parameters('vmName'))]"
        },
        "protectedSettings": {
            "storageAccountKey": "[parameters('storageAccountKey')]"        
        }
      }
    }

Значения свойства

Имя Значение и пример Описание
apiVersion 2015-06-15 Версия API.
publisher Microsoft.Azure.Performance.Diagnostics Пространство имен издателя для расширения.
type AzurePerformanceDiagnostics Тип расширения виртуальной машины.
typeHandlerVersion 1.0 Версия обработчика расширения.
performanceScenario Основные Сценарий производительности, для которого требуется записать данные. Допустимые значения: basic, vmslow, azurefiles и custom.
traceDurationInSeconds 300 Длительность трассировки, если выбран какой-либо из параметров трассировки.
perfCounterTrace p Параметр для включения трассировки счетчика производительности. Допустимые значения: p или пустое значение. Если вы не хотите записывать эту трассировку, оставьте значение пустым.
networkTrace n Параметр для включения трассировки сети. Допустимые значения : n или пустое значение. Если вы не хотите записывать эту трассировку, оставьте значение пустым.
xperfTrace x Параметр для включения трассировки XPerf. Допустимые значения: x или пустое значение. Если вы не хотите записывать эту трассировку, оставьте значение пустым.
storPortTrace s Параметр для включения трассировки StorPort. Допустимыми значениями являются s или пустое значение. Если вы не хотите записывать эту трассировку, оставьте значение пустым.
srNumber 123452016365929 Номер запроса в службу поддержки, если он доступен. Оставьте значение пустым, если у вас его нет.
requestTimeUtc 2017-09-28T22:08:53.736Z Текущее время даты в формате UTC. Если вы используете портал для установки этого расширения, вам не нужно предоставлять это значение.
resourceId /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} Уникальный идентификатор виртуальной машины.
storageAccountName mystorageaccount Имя учетной записи хранения для хранения журналов и результатов диагностика.
storageAccountKey lDuVvxuZB28NNP... hAiRF3voADxLBTcc== Ключ учетной записи хранения.

Установка расширения

Чтобы установить расширение на виртуальных машинах Windows, выполните следующие инструкции.

  1. Войдите на портал Azure.

  2. Выберите виртуальную машину, на которой требуется установить это расширение.

    Снимок экрана: портал Azure с выделенными виртуальными машинами.

  3. Выберите колонку Расширения и приложения и нажмите кнопку Добавить.

    Снимок экрана: колонка

  4. Поиск диагностики производительности Azure щелкните расширение, просмотрите условия и нажмите кнопку Далее.

    Снимок экрана: экран создания ресурса с выделенным элементом

  5. Укажите значения параметров для установки, а затем установите расширение. Дополнительные сведения о поддерживаемых сценариях см. в статье Использование PerfInsights.

    Снимок экрана: диалоговое окно

  6. После успешной установки состояние расширения показывает, что подготовка выполнена успешно.

    Снимок экрана: сообщение об успешной подготовке.

    Примечание.

    Расширение запускается после успешной подготовки. Выполнение базового сценария занимает не более двух минут. В других сценариях он выполняется через длительность, указанную во время установки.

Удаление расширения

Чтобы удалить расширение из виртуальной машины, выполните следующие действия.

  1. Войдите в портал Azure, выберите виртуальную машину, с которой нужно удалить это расширение, а затем выберите колонку Расширения и приложения.

  2. Выберите расширение "Диагностика производительности", а затем нажмите кнопку Удалить.

    Снимок экрана: колонка

Развертывание шаблона

Расширения виртуальных машин Azure можно развернуть с помощью шаблонов Azure Resource Manager. Схема JSON, описанная в предыдущем разделе, может использоваться в шаблоне Resource Manager Azure. При этом запускается расширение виртуальной машины системы диагностики производительности Azure во время развертывания шаблона Resource Manager Azure. Ниже приведен пример шаблона:

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "vmName": {
      "type": "string",
      "defaultValue": "yourVMName"
    },
    "location": {
      "type": "string",
      "defaultValue": "southcentralus"
    },
    "storageAccountName": {
      "type": "securestring",
      "defaultValue": "yourStorageAccount"
    },
    "storageAccountKey": {
      "type": "securestring",
      "defaultValue": "yourStorageAccountKey"
    },
    "performanceScenario": {
      "type": "string",
      "defaultValue": "basic"
    },
    "srNumber": {
      "type": "string",
      "defaultValue": ""
    },
  "traceDurationInSeconds": {
    "type": "int",
    "defaultValue": 300
  },
    "perfCounterTrace": {
      "type": "string",
      "defaultValue": "p"
    },
    "networkTrace": {
      "type": "string",
      "defaultValue": ""
    },
    "xperfTrace": {
      "type": "string",
      "defaultValue": ""
    },
    "storPortTrace": {
      "type": "string",
      "defaultValue": ""
    },
    "requestTimeUtc": {
      "type": "string",
      "defaultValue": "10/2/2017 11:06:00 PM"
    }        
  },
  "resources": [
    {
      "name": "[concat(parameters('vmName'),'/AzurePerformanceDiagnostics')]",
      "type": "Microsoft.Compute/virtualMachines/extensions",
      "location": "[parameters('location')]",
      "apiVersion": "2015-06-15",
      "properties": {
        "publisher": "Microsoft.Azure.Performance.Diagnostics",
        "type": "AzurePerformanceDiagnostics",
        "typeHandlerVersion": "1.0",
        "autoUpgradeMinorVersion": true,
        "settings": {
          "storageAccountName": "[parameters('storageAccountName')]",
          "performanceScenario": "[parameters('performanceScenario')]",
          "traceDurationInSeconds": "[parameters('traceDurationInSeconds')]",
          "perfCounterTrace": "[parameters('perfCounterTrace')]",
          "networkTrace": "[parameters('networkTrace')]",
          "xperfTrace": "[parameters('xperfTrace')]",
          "storPortTrace": "[parameters('storPortTrace')]",
          "srNumber": "[parameters('srNumber')]",
          "requestTimeUtc":  "[parameters('requestTimeUtc')]",
          "resourceId": "[resourceId('Microsoft.Compute/virtualMachines', parameters('vmName'))]"
        },
        "protectedSettings": {
            "storageAccountKey": "[parameters('storageAccountKey')]"
        }
      }
    }
  ]
}

Развертывание PowerShell

Команду Set-AzVMExtension можно использовать для развертывания расширения виртуальной машины системы диагностики производительности Azure на существующей виртуальной машине.

$PublicSettings = @{ "storageAccountName"="mystorageaccount";"performanceScenario"="basic";"traceDurationInSeconds"=300;"perfCounterTrace"="p";"networkTrace"="";"xperfTrace"="";"storPortTrace"="";"srNumber"="";"requestTimeUtc"="2017-09-28T22:08:53.736Z";"resourceId"="VMResourceId" }
$ProtectedSettings = @{"storageAccountKey"="mystoragekey" }

Set-AzVMExtension -ExtensionName "AzurePerformanceDiagnostics" `
    -ResourceGroupName "myResourceGroup" `
    -VMName "myVM" `
    -Publisher "Microsoft.Azure.Performance.Diagnostics" `
    -ExtensionType "AzurePerformanceDiagnostics" `
    -TypeHandlerVersion 1.0 `
    -Settings $PublicSettings `
    -ProtectedSettings $ProtectedSettings `
    -Location WestUS

Сведения о захваченных данных

Средство PerfInsights собирает различные журналы, данные конфигурации и диагностические данные в зависимости от выбранного сценария. Дополнительные сведения см. в документации по PerfInsights.

Просмотр результатов и предоставление общего доступа к ним

Выходные данные расширения можно найти в ZIP-файле, который передается в учетную запись хранения, указанную во время установки, и предоставляется совместно в течение 30 дней с помощью подписанных URL-адресов (SAS). Этот ZIP-файл содержит журналы диагностики и отчет с результатами и рекомендациями. Ссылка SAS на выходной ZIP-файл находится в текстовом файле с именем zipfilename_saslink.txt в папке C:\Packages\Plugins\Microsoft.Azure.Performance.Diagnostics.AzurePerformanceDiagnostics\<version>. Любой пользователь, имеющий эту ссылку, может скачать ZIP-файл.

Чтобы помочь инженеру службы поддержки, работающему с вашим запросом в службу поддержки, корпорация Майкрософт может использовать эту ссылку SAS для скачивания диагностика данных.

Чтобы просмотреть отчет, извлеките ZIP-файл и откройте файл Report.htmlPerfInsights .

Вы также сможете скачать ZIP-файл непосредственно с портала, выбрав расширение.

Снимок экрана: подробное состояние системы диагностики производительности и ссылка для скачивания расширения.

Примечание.

Ссылка SAS, отображаемая на портале, иногда может не работать. Это может быть вызвано неправильно сформированным URL-адресом во время операций кодирования и декодирования. Вместо этого можно получить ссылку непосредственно из файла *_saslink.txt виртуальной машины.

Устранение неполадок и поддержка

  • Состояние развертывания расширения (в области уведомлений) может отображаться "Выполняется развертывание", даже если расширение успешно подготовлено.

    Эту проблему можно спокойно игнорировать, если состояние расширения указывает на то, что расширение успешно подготовлено.

  • Некоторые проблемы во время установки можно устранить с помощью журналов расширений. Выходные данные выполнения расширения регистрируются в файлах, которые находятся в следующем каталоге:

    C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Performance.Diagnostics.AzurePerformanceDiagnostics\<version>

Свяжитесь с нами для получения помощи

Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.