Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Автомасштабирование в Azure Monitor помогает обеспечить именно тот объем ресурсов, необходимый для обработки нагрузки вашего приложения. Эта функция дает возможность добавлять ресурсы для обработки дополнительной нагрузки и удалять неиспользуемые ресурсы для экономии средств. Можно масштабировать на основе расписания, фиксированного даты или выбранной метрики ресурсов. Дополнительные сведения см. в разделе Обзор автомасштабирования.
Служба автомасштабирования предоставляет метрики и журналы, помогающие понять, какие действия масштабирования произошли, и оценить условия, которые привели к этим действиям. Вы можете найти ответы на такие вопросы:
- Почему моя служба расширяется или уменьшается?
- Почему моя служба не масштабировалась?
- Почему не удалось выполнить автоматическое масштабирование?
- Почему действие автомасштабирования занимает время?
Flex Масштабируемые наборы виртуальных машин
Задержка автоматического масштабирования может составлять до нескольких часов после выполнения ручного масштабирования ресурса Flex Microsoft.Compute/virtualMachineScaleSets (VMSS) для определенных операций виртуальных машин.
Например, azure VM CLI Delete или Azure VM Rest API Delete , где выполняется операция на отдельной виртуальной машине.
В таких случаях служба автомасштабирования не знает об отдельных операциях виртуальной машины.
Чтобы избежать этого сценария, используйте ту же операцию, но на уровне масштабируемого набора виртуальных машин. Например, удаление экземпляра Azure VMSS CLI или удаление экземпляра Azure VMSS Rest API. Автомасштабирование обнаруживает изменение количества экземпляров в масштабируемом наборе виртуальных машин и выполняет соответствующие действия масштабирования.
Метрики автоматического масштабирования
Автомасштабирование предоставляет четыре метрики для понимания своей операции:
- Наблюдаемое значение метрики: значение метрики, по которому вы решили выполнить действие масштабирования, как это видит или вычисляет подсистема автомасштабирования. Так как один параметр автомасштабирования может иметь несколько правил и, следовательно, несколько источников метрик, можно фильтровать с помощью источника метрик в качестве измерения.
- Пороговое значение метрик: пороговое значение, заданное для выполнения действия масштабирования. Так как один параметр автомасштабирования может иметь несколько правил и, следовательно, несколько источников метрик, можно фильтровать с помощью "правила метрики" в качестве измерения.
- Наблюдаемая емкость: активное число экземпляров целевого ресурса, как показано подсистемой автомасштабирования.
- Действия, инициированные масштабированием: количество действий масштабирования и масштабирования, инициированных подсистемой автомасштабирования. Можно отфильтровать по действиям расширения (scale-out) и уменьшения (scale-in) масштабирования.
Вы можете использовать обозреватель метрик для построения графиков всех предыдущих метрик в одном месте. На диаграмме должно отображаться следующее:
- Фактическая метрика.
- Метрика, вычисляемая подсистемой автомасштабирования.
- Пороговое значение для действия масштабирования.
- Изменение емкости.
Пример 1. Анализ правила автомасштабирования
Параметр автомасштабирования для масштабируемого набора виртуальных машин:
- Расширяется, если средняя загрузка ЦП в наборе превышает 70 % в течение 10 минут.
- Масштабируется, если процент ЦП набора меньше 5 % в течение более 10 минут.
Давайте проанализируем метрики из службы автомасштабирования.
На следующей диаграмме показана метрика процента ЦП для масштабируемого набора виртуальных машин.
На следующей диаграмме показана метрика "Наблюдаемая величина" для параметра автомасштабирования.
Заключительная диаграмма показывает пороговые значения и наблюдаемую емкость. Пороговое значение метрики в верхней части правила масштабирования равно 70. Метрика наблюдаемой емкости в нижней части показывает количество активных экземпляров, которое в настоящее время составляет 3.
Примечание.
Вы можете отфильтровать Пороговое значение метрики по правилу увеличения масштаба триггера метрики, чтобы увидеть порог горизонтального масштабирования, и по правилу уменьшения масштаба.
Пример 2. Расширенное автоматическое масштабирование для масштабируемого набора виртуальных машин
Параметр автомасштабирования позволяет ресурсу масштабируемого набора виртуальных машин масштабироваться на основе собственной метрики исходящих потоков . Выбран параметр "Разделить метрика по количеству экземпляров" для порогового значения метрик.
Правило действия масштабирования — если значение исходящего потока для каждого экземпляра больше 10, служба автомасштабирования должна масштабироваться на 1 экземпляр.
В этом случае наблюдаемое значение метрик подсистемы автомасштабирования вычисляется как фактическое значение метрики, разделенное на количество экземпляров. Если наблюдаемое значение метрики меньше порогового значения, действие по увеличению масштаба не инициируется.
На следующих снимках экрана показаны две диаграммы метрик.
Диаграмма средних исходящих потоков показывает значение метрики исходящих потоков. Фактическое значение равно 6.
На следующей диаграмме показаны несколько значений:
- Метрика "Наблюдаемое значение метрик" в середине составляет 3, так как есть 2 активных экземпляра, а 6 разделены на 2 равно 3.
- Метрика наблюдаемой емкости, расположенная внизу, показывает количество экземпляров, фиксируемое механизмом автомасштабирования.
- Метрика Пороговое значение вверху установлена на 10.
Если существует несколько правил действия масштабирования, можно использовать разделение или параметр добавления фильтра в диаграмме обозревателя метрик для просмотра метрик по определенному источнику или правилу. Дополнительные сведения о разбиение диаграммы метрик см. в разделе "Дополнительные функции диаграмм метрик" — разделение.
Пример 3. Общие сведения о событиях автомасштабирования
На экране настройки автомасштабирования перейдите на вкладку Журнал выполнения, чтобы просмотреть последние действия по масштабированию. На вкладке также показано изменение Наблюдаемой емкости с течением времени. Дополнительные сведения обо всех действиях автомасштабирования, включая операции, такие как обновление и удаление параметров автомасштабирования, откройте журнал действий и отфильтруйте по операциям автомасштабирования.
Журналы ресурсов автомасштабирования
Служба автомасштабирования предоставляет журналы ресурсов. Существует две категории журналов:
- Оценки автомасштабирования: механизм автомасштабирования фиксирует записи журнала для каждой оценки условий при каждом выполнении проверки. Запись содержит подробные сведения о наблюдаемых значениях метрик, оцененных правилах, а также привело ли вычисление к действию масштабирования или нет.
- Действия масштабирования: подсистема записывает события масштабирования, инициируемые службой автомасштабирования, и результаты этих действий масштабирования (успешное выполнение, сбой и количество операций масштабирования, как показано службой автомасштабирования).
Как и в любой поддерживаемой службе Azure Monitor, можно использовать параметры диагностики для маршрутизации этих журналов в:
- Ваше рабочее пространство Log Analytics для подробного анализа.
- Центры событий Azure, а затем в средства, отличные от Azure.
- Ваша учетная запись Azure Storage для архива.
На предыдущем снимках экрана показана панель параметров диагностики автомасштабирования портал Azure. На вкладке "Журналы диагностики и ресурсов" можно выбрать вкладку "Журналы диагностики и ресурсов" и включить сбор журналов и маршрутизацию. Вы также можете выполнить то же действие с помощью REST API, Azure CLI, PowerShell и шаблонов Azure Resource Manager для параметров диагностики, выбрав тип ресурса в качестве Microsoft.Insights/AutoscaleSettings.
Устранение неполадок с использованием журналов автомасштабирования
Для оптимального устранения неполадок рекомендуется направление журналов в Azure Monitor Logs (Log Analytics) через рабочую область при создании настройки автомасштабирования. Этот процесс показан на снимке экрана в предыдущем разделе. Вы можете лучше проверить оценки и масштабируемые действия с помощью Log Analytics.
После настройки журналов автомасштабирования, которые будут отправляться в рабочую область Log Analytics, можно выполнить следующие запросы, чтобы проверить журналы.
Чтобы приступить к работе, попробуйте выполнить этот запрос, чтобы просмотреть самые последние журналы оценки автомасштабирования:
AutoscaleEvaluationsLog
| limit 50
Или попробуйте выполнить следующий запрос, чтобы просмотреть самые последние журналы действий масштабирования:
AutoscaleScaleActionsLog
| limit 50
Используйте следующие разделы, чтобы ответить на эти вопросы.
Произошло действие масштабирования, которое вы не ожидали
Сначала выполните запрос, чтобы найти интересующее вас действие масштабирования. Если это последнее действие масштабирования, используйте следующий запрос:
AutoscaleScaleActionsLog
| take 1
Выберите поле CorrelationId
из журнала действий масштабирования. Используйте CorrelationId
, чтобы найти правильный журнал оценки. При выполнении следующего запроса отображаются все правила и условия, которые были оценены и привели к такому действию масштабирования.
AutoscaleEvaluationsLog
| where CorrelationId = "<correliationId>"
Какой профиль вызвал действие масштабирования?
Произошло масштабируемое действие, но у вас есть перекрывающиеся правила и профили и необходимо отслеживать, какое из них вызвало действие.
CorrelationId
Найдите действие масштабирования, как описано в примере 1. Затем выполните запрос в журналах оценки, чтобы узнать больше о профиле.
AutoscaleEvaluationsLog
| where CorrelationId = "<correliationId_Guid>"
| where ProfileSelected == true
| project ProfileEvaluationTime, Profile, ProfileSelected, EvaluationResult
Кроме того, можно лучше понять всю оценку профиля с помощью следующего запроса:
AutoscaleEvaluationsLog
| where TimeGenerated > ago(2h)
| where OperationName contains == "profileEvaluation"
| project OperationName, Profile, ProfileEvaluationTime, ProfileSelected, EvaluationResult
Действие масштабирования не произошло
Вы ожидали крупномасштабного действия, но этого не произошло. События или журналы действий масштабирования могут быть отсутствуют.
Проверьте метрики автомасштабирования, если вы используете правило масштабирования на основе метрик. Возможно, значение наблюдаемой метрики или значение наблюдаемой емкости не является ожидаемым, поэтому правило масштабирования не срабатывает. По-прежнему будут видны оценки, но правила масштабирования отсутствуют. Возможно также, что период охлаждения не позволил произойти действию масштабирования.
Просмотрите журналы оценки автомасштабирования в течение периода времени, когда ожидается, что действие масштабирования произойдет. Проверьте все выполненные оценки и причины, по которым действие масштабирования не было инициировано.
AutoscaleEvaluationsLog
| where TimeGenerated > ago(2h)
| where OperationName == "MetricEvaluation" or OperationName == "ScaleRuleEvaluation"
| project OperationName, MetricData, ObservedValue, Threshold, EstimateScaleResult
Не удалось выполнить действие масштабирования
Может возникнуть случай, когда служба автомасштабирования приняла действие масштабирования, но система решила не масштабировать или не выполнить действие масштабирования. Используйте этот запрос для поиска неудачных действий масштабирования:
AutoscaleScaleActionsLog
| where ResultType == "Failed"
| project ResultDescription
Создайте правила генерации оповещений, чтобы получать уведомления о действиях или сбоях автомасштабирования. Можно также создать правила генерации оповещений, чтобы получать уведомления о событиях автомасштабирования.
Схема журналов ресурсов автомасштабирования
Дополнительные сведения см. в журналах ресурсов автомасштабирования.
Следующие шаги
Ознакомьтесь с информацией о лучших практиках автомасштабирования.