Общие метрики автомасштабирования Azure Monitor

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

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

Автомасштабирование Azure поддерживает ресурсы различных типов. Дополнительные сведения о поддерживаемых для автомасштабирования ресурсах см. в этой статье.

Для всех ресурсов можно получить список доступных метрик с помощью PowerShell или Azure CLI.

Get-AzMetricDefinition -ResourceId <resource_id> 
az monitor metrics list-definitions --resource <resource_id>

Расчет метрик для виртуальных машин, развернутых с помощью Resource Manager

По умолчанию виртуальные машины на основе Azure Resource Manager и Масштабируемые наборы виртуальных машин выдавать базовые метрики (уровень узла). Кроме того, при настройке сбора данных диагностика для виртуальной машины Azure и Масштабируемые наборы виртуальных машин расширение Диагностика Azure также выдает счетчики производительности гостевой ОС. Эти счетчики обычно называют метриками гостевой ОС. Используйте все эти метрики в правилах автомасштабирования.

Если вы используете Масштабируемые наборы виртуальных машин и не видите определенную метрику, скорее всего, она отключена в расширении диагностики.

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

Если это так, то см. сведения о настройке и обновлении расширения системы диагностики виртуальных машин Azure для включения метрики в статье Включение системы диагностики Azure на виртуальной машине под управлением Windows с помощью PowerShell. В этой статье также содержится пример файла конфигурации системы диагностики.

Метрики уровня узла для виртуальных машин под управлением Windows и Linux, развернутых с помощью Resource Manager

Следующие метрики уровня узла по умолчанию создаются для виртуальной машины Azure и Масштабируемые наборы виртуальных машин в экземплярах Windows и Linux. Эти метрики описывают виртуальную машину Azure, но собираются из узла виртуальной машины Azure, а не через агент, установленный на гостевой виртуальной машине. Эти метрики можно использовать в правилах автомасштабирования.

Метрики гостевой ОС для виртуальных машин Windows на основе диспетчер ресурсов

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

Вы можете создать оповещение для метрик, приведенных в следующей таблице:

Имя метрики Единица измерения
\Процессор(_общий объем ресурсов)% загруженности процессора Процент
\Процессор(_общий объем ресурсов)% времени в привилегированном режиме Процент
\Процессор(_общий объем ресурсов)% времени в пользовательском режиме Процент
\Процессор(_общий объем ресурсов)\частота процессора Count
\Система\процессы Count
\Процессор (_общий объем ресурсов)\число потоков Count
\Процессор (_общий объем ресурсов)\число обработанных элементов Count
\Память% Использование выделенной памяти (в байтах) Процент
\Память\доступные байты Байт
\Память\выделенная память (в байтах) Байт
\Память\предел выделенной памяти Байт
\Память\выгружаемый пул (в байтах) Байт
\Память\невыгружаемый пул (в байтах) Байт
\Физический диск(_общий объем ресурсов)% времени работы диска Процент
\Физический диск(_общий объем ресурсов)% времени чтения с диска Процент
\Физический диск(_общий объем ресурсов)% времени записи на диск Процент
\Диск\Физический диск(_общий объем ресурсов) в секунду Число/с
\Физический диск(_общий объем ресурсов)\скорость чтения с диска/с Число/с
\Физический диск(_общий объем ресурсов)\скорость записи на диск/с Число/с
\Физический диск(_общий объем ресурсов)\скорость передачи данных (в байтах)/с BytesPerSecond
\Физический диск(_общий объем ресурсов)\скорость чтения с диска (в байтах)/с BytesPerSecond
\Физический диск(_общий объем ресурсов)\скорость записи на диск (в байтах)/с BytesPerSecond
\PhysicalDisk(_Total)\Avg. Длина очереди диска Count
\PhysicalDisk(_Total)\Средняя длина чтения очереди диска Count
\PhysicalDisk(_Total)\Средняя длина записи очереди диска Count
\Физический диск(_общий объем ресурсов)% свободного места Процент
\Логический диск(_общий объем ресурсов)\свободная память (в мегабайтах) Count

Метрики гостевой ОС для виртуальных машин под управлением Linux

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

Вы можете создать оповещение для метрик, приведенных в следующей таблице:

Имя метрики Единица измерения
\Память\Доступная память Байт
\Память\Процент доступной памяти Процент
\Память\Используемая память Байт
\Память\Процент используемой памяти Процент
\Память\Процент памяти, используемой кэшем Процент
\Память\Страниц в с Число/с
\Память\Прочитано страниц в с Число/с
\Память\Записано страниц в с Число/с
\Память\Доступное пространство файла подкачки Байт
\Память\Процент доступного пространства файла подкачки Процент
\Память\Используемое пространство файла подкачки Байт
\Память\Процент использованного пространства файла подкачки Процент
\Процессор\Процент времени простоя Процент
\Процессор\Процент работы в пользовательском режиме Процент
\Процессор\Процент времени оптимальной работы Процент
\Процессор\Процент работы в привилегированном режиме Процент
\Процессор\Процент времени прерываний Процент
\Процессор\Процент времени DPC Процент
\Процессор\Процент загруженности процессора Процент
\Процессор\Процент времени ожидания ввода/вывода Процент
\Физический диск\Байт/с BytesPerSecond
\Физический диск\Прочитано байт/с BytesPerSecond
\Физический диск\Записано байт/с BytesPerSecond
\Физический диск\Передач/с Число/с
\Физический диск\Операций чтения/с Число/с
\Физический диск\Операций записи/с Число/с
\Физический диск\Среднее время чтения сек.
\Физический диск\Среднее время записи сек.
\Физический диск\Среднее время передачи сек.
\Физический диск\Средняя длина очереди диска Count
\Сетевой интерфейс\Передано байт Байт
\Сетевой интерфейс\Получено байт Байт
\Сетевой интерфейс\Передано пакетов Count
\Сетевой интерфейс\ Получено пакетов Count
\Сетевой интерфейс\Всего байт Байт
\Сетевой интерфейс\Всего ошибок RX Count
\Сетевой интерфейс\Всего ошибок TX Count
\Сетевой интерфейс\Всего конфликтов Count

Часто используемые метрики службы приложений (фермы серверов)

Можно также выполнить автомасштабирование на основе общих метрик веб-сервера, таких как длина очереди HTTP. Имя метрики — HttpQueueLength. В следующем разделе перечислены доступные метрики фермы серверов (веб-приложений).

Метрики веб-приложений

Для веб-приложения эти метрики можно оповещать или масштабировать.

Имя метрики Единица измерения
CpuPercentage Процент
MemoryPercentage Процент
DiskQueueLength Count
HttpQueueLength Count
BytesReceived Байт
BytesSent Байт

Часто используемые метрики хранилища

Можно масштабировать по длине очереди службы хранилища Azure, которая представляет собой количество сообщений в очереди хранилища. Пороговым значением для этой специальной метрики является число сообщений на один экземпляр. Например, если есть два экземпляра и если пороговое значение — 100, то масштабирование выполняется, когда общее число сообщений в очереди достигнет 200. Число сообщений на экземпляр может быть 100, или 120 плюс 80, или любое другое сочетание, которое в сумме дает 200 или более.

Настройте эти значения на портале Azure в области Параметры. Для Масштабируемые наборы виртуальных машин можно обновить параметр автомасштабирования в шаблоне Resource Manager, чтобы использовать metricName как ApproximateMessageCount и передать идентификатор очереди хранилища в качествеmetricResourceUri.

Например, в классической учетной записи хранения параметр автомасштабирования metricTrigger включает следующие данные:

"metricName": "ApproximateMessageCount",
"metricNamespace": "",
"metricResourceUri": "/subscriptions/SUBSCRIPTION_ID/resourceGroups/RES_GROUP_NAME/providers/Microsoft.ClassicStorage/storageAccounts/STORAGE_ACCOUNT_NAME/services/queue/queues/QUEUE_NAME"

В обычной учетной записи хранения (неклассической) параметр metricTrigger включает следующие данные:

"metricName": "ApproximateMessageCount",
"metricNamespace": "",
"metricResourceUri": "/subscriptions/SUBSCRIPTION_ID/resourceGroups/RES_GROUP_NAME/providers/Microsoft.Storage/storageAccounts/STORAGE_ACCOUNT_NAME/services/queue/queues/QUEUE_NAME"

Часто используемые метрики служебной шины

Масштабирование возможно по длине очереди Служебной шины Azure. Длина очереди представляет собой количество сообщений в очереди. Пороговым значением для этой специальной метрики является число сообщений на один экземпляр. Например, если имеется два экземпляра, и если пороговое значение равно 100, масштабирование возникает, когда общее количество сообщений в очереди равно 200. Число сообщений на экземпляр может быть 100, или 120 плюс 80, или любое другое сочетание, которое в сумме дает 200 или более.

Для Масштабируемые наборы виртуальных машин можно обновить параметр автомасштабирования в шаблоне Resource Manager для использования metricName в качестве ActiveMessageCount и передать идентификатор очереди служебная шина в качествеmetricResourceUri.

"metricName": "ActiveMessageCount",
"metricNamespace": "",
"metricResourceUri": "/subscriptions/SUBSCRIPTION_ID/resourceGroups/RES_GROUP_NAME/providers/Microsoft.ServiceBus/namespaces/SB_NAMESPACE/queues/QUEUE_NAME"

Примечание.

Для служебная шина концепция группы ресурсов не существует. Azure Resource Manager создает группу ресурсов по умолчанию для каждого региона. Группа ресурсов обычно имеет формат Default-ServiceBus-[регион]. Примеры: Default-ServiceBus-EastUS, Default-ServiceBus-WestUS и Default-ServiceBus-AustraliaEast.