Упражнение. Правила автомасштабирования
В этом упражнении мы рассмотрим упражнения по настройке и активации автомасштабирования примера приложения.
Упражнение на применение правила
В примере приложения Azure Spring Apps приложение активировало горизонтальное масштабирование микрослужбы службы клиентов при его создании.
Приложение для обслуживания клиентов масштабируется out, когда среднее количество запросов к Tomcat превышает 10 сеансов в минуту. После активации автомасштабирования оно масштабируется в том случае, если среднее число запросов меньше или равно 10 транзакциям в минуту.
Просмотр настройки автомасштабирования на портал Azure
- В новой вкладке веб-браузера откройте портал Azure.
- В верхнем поле поиска найдите Azure Spring Apps.
- На странице "Обзор Azure Spring Apps" выберите экземпляр Azure Spring Apps в списке результатов.
- Выберите вкладку "Приложения" в меню " Параметры " в левой области навигации.
- Выберите приложение службы по работе с клиентами. Затем вы увидите страницу обзора приложения.
- Перейдите на вкладку "Горизонтальное масштабирование " в разделе "Параметры" в меню слева от страницы.
Существует два параметра для управления потребностями автомасштабирования:
- Масштабирование вручную: поддерживает число фиксированных экземпляров. На уровне "Стандартный" можно горизонтально увеличивать масштаб не более чем до 500 экземпляров. Это значение изменяет количество отдельных работающих экземпляров приложений для микрослужб.
- Настраиваемое автомасштабирование: масштабирование по любому расписанию на основе любых метрик.
В портал Azure просмотрите предварительную конфигурацию приложения. На следующем рисунке показана настраиваемая автоматическая шкала, настроенная для масштабирования по количеству запросов tomcat.
Просмотр завершенных событий автомасштабирования
На экране параметров горизонтального масштабирования перейдите на вкладку "Журнал выполнения ", чтобы просмотреть последние действия масштабирования. На вкладке приведено графическое представление изменения наблюдаемой емкости в динамике, а также журнал для каждого действия автомасштабирования.
Запуск действия масштабирования с помощью сценария
Вы также можете активировать автоматическое масштабирование вручную с помощью веб-браузера или скрипта оболочки.
Чтобы проверить правила автомасштабирования, мы создадим некоторую нагрузку на экземпляры. В результате моделирования нагрузки правила автомасштабирования горизонтально увеличивают масштаб и число экземпляров. После того как моделирование нагрузки прекращено, правила автомасштабирования горизонтально уменьшат масштаб и сократят количество экземпляров.
Чтобы разрешить активировать автомасштабирование, мы предоставили скрипт оболочки в том же репозитории GIT, который использовался для создания приложения Azure Spring Apps.
Задайте имя экземпляра службы Spring Apps, выполнив следующую команду в https://shell.azure.com окне bash. Используйте то же имя службы Azure Spring Apps, которое вы использовали в предыдущем упражнении:
export SPRING_APPS_SERVICE=<spring-apps-instance-name>Затем в окне bash выполните следующие команды, чтобы выполнить транзакции с микрослужбой customers-service в Spring Apps.
cd mslearn-autoscale-java sh loadTest.shВы должны увидеть результат нагрузочного теста службы клиентов который отправляет 100 запросов в ваш экземпляр.
Запуск действия горизонтального увеличения масштаба вручную через веб-браузер (необязательно)
Чтобы вручную активировать условие горизонтального масштабирования в созданном параметре автомасштабирования, микросервис customers-service должен обрабатывать более 10 запросов менее чем за одну минуту.
Откройте новое окно браузера и перейдите к микрослужбе службы клиентов :
https://<your-spring-apps-service>-api-gateway.azuremicroservices.io/api/customer/ownersБыстро перезагрузите страницу больше 10 раз.
Просмотр действия горизонтального увеличения масштаба
Вернитесь в исходное окно браузера, откройте параметр автомасштабирования и выберите вкладку "Журнал выполнения".
Должна отобразиться диаграмма, отражающую число экземпляров.
Через несколько минут число экземпляров должно увеличиваться с 1 до 2.
На диаграмме должны быть записи журнала действий для каждого действия масштабирования, выполняемого этим параметром автомасштабирования.
Действие горизонтального уменьшения масштаба
Условие уменьшения масштабирования в параметре автомасштабирования активируется, если в течение одной минуты к микросервису клиентов поступает меньше либо равно 10 запросам.
Убедитесь, что запросы не отправляются в микрослужбу службы клиентов , а окно браузера в приложение или службу закрыто.
Просмотрите количество экземпляров. Через несколько минут число экземпляров может упасть от 2 до 1 (см. следующую важную точку).
Внимание
Azure Spring Apps может не масштабироваться, так как автомасштабирование попытается оценить окончательное состояние после масштабирования. То есть, при автомасштабировании потребуется еще раз выполнить масштабирование, если среднее число запросов Tomcat остается неизменным или даже немного уменьшается.