- tocdepth
2
Горизонтальное масштабирование клиентских приложений в облаке Advanced
Паттерн масштабирования клиентских приложений в облаке Advanced имеет следующие преимущества и риски:
Преимущества паттерна |
Риски |
---|---|
Простое решение по масштабированию клиентских приложений в облаке Advanced. Увеличение или уменьшение ресурсов (горизонтальное масштабирование) в заданное время или по запросу. |
Паттерн подходит только для приложений, которые работают по принципу Stateless, то есть не требуют запоминания своего состояния. |
Общая схема
Описание паттерна
Предварительные требования:
В тенанте должны быть созданы как минимум одна VPC и одна подсеть (Subnet).
Должен быть создан эталонный сервер ECS, на котором происходит настройка клиентского приложения.
Должен быть создан PaaS сервис RDS с необходимым типом баз данных в режиме Master/Standby для обеспечения высокой доступности.
При настройке клиентского приложения может использоваться сервис NAT Gateway, обеспечивающий выход в интернет из приватной подсети VPC.
После настройки клиентского приложения создается приватный системный образ в сервисе IMS для последующего использования в конфигурации Auto Scaling.
Далее на основе созданной конфигурации создается группа Auto Scaling.
Для обеспечения высокой доступности клиентского приложения серверы, входящие в группу Auto Scaling, располагаются в разных зонах доступности облака Advanced.
В качестве распределения нагрузки между серверами приложений в группе Auto Scaling используется сервис ELB.
Для достижения автоматического масштабирования настраиваются специальные политики Auto Scaling.
Политики могут основываться как на метриках загрузки CPU/RAM/Network Bandwidth из системы мониторинга Cloud Eye, так и на основе запланированных временных периодов.
Реализация
Список последовательных действий в тенанте Advanced при настройке автомасштабирования:
Создание VPC.
Создание подсетей (Subnet) для приложений и баз данных.
Создание групп безопасности (Security Group) для приложения и базы данных.
Создание NAT Gateway для выхода сервисов в интернет.
Создание Application Load Balancer для обработки запросов HTTP/S и перенаправление на группу серверов приложений.
Создание инстанса баз данных RDS в мульти-AZ типа Master/Standby для высокой доступности.
Создание целевого сервера ECS для настройки приложения.
Создание приватного образа в сервисе IMS из целевого сервера ECS.
Создание конфигурации группы автомасштабирования (AS Configuration) на основе созданного образа сервера приложений.
Создание группы авто масштабирования (AS Group) в мульти-AZ для высокой доступности приложения.
Настройка оповещений (Alarms) на основе метрик загрузки CPU/RAM в сервисе мониторинга Cloud Eye.
Настройка политики автомасштабирования на основе оповещений или запланированного временного периода (AS Policy).
Запуск приложения в облаке Advanced.
для Dev & Test