Поделиться через


Управление и операции для приложений контейнеров Azure — акселератор целевой зоны

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

  • Общие сведения об ограничениях для приложений-контейнеров.

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

  • Сведения о способах управления потреблением ресурсов рабочими нагрузками.

  • Используйте пробы работоспособности для получения отчетов и восстановления после ухудшения работоспособности приложений.

  • Используйте Dapr для установления безопасных подключений к внешним службам.

  • Используйте ведение журнала и мониторинг, чтобы получить представление о любых проблемах, связанных с приложениями.

  • Используйте оповещения во время критических событий приложений и системных событий, чтобы гарантировать, что сотрудники операций могут выполнять быстрые действия в сбоях приложения событий.

  • Определите стратегию масштабирования, чтобы обеспечить достаточную емкость для обработки трафика в приложение, минимизируя неиспользуемую емкость. Триггеры масштабирования включают использование ЦП или памяти вместе с любым поддерживаемым масштабировщиком KEDA.

  • Будьте знакомы с Envoy, так как приложения контейнеров Azure используют его в качестве сетевого прокси-сервера.

  • Помните о требованиях к целевому времени восстановления (RTO) и целевой точке восстановления (RPO) вокруг непрерывности бизнес-процессов и аварийного восстановления. Определите соглашение об уровне обслуживания (SLA) для инфраструктуры и приложения. Сведения об уровне обслуживания для приложений контейнеров Azure. Информацию о вычислении времени работы за месяц см. в разделе Сведения о соглашении об уровне обслуживания.

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

    • Зоны доступности — это конструкции изоляции сбоя в проектировании центра обработки данных Azure. Каждая зона имеет собственную мощность, сеть и охлаждение, чтобы свести к минимуму вероятность сбоев, распространяющихся по зонам. Чтобы использовать Зоны доступности, каждый ресурс Azure можно развернуть в определенной зоне ("зональной") или во всех зонах ("избыточных между зонами").

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

  • Рассмотрите возможность использования Azure DevOps и GitHub для автоматического управления процессами разработки, сборки и развертывания.

Рекомендации

  • Изоляция по среде: создание отдельных сред контейнерных приложений для полной изоляции ресурсов. Избегайте использования редакций для создания приложений контейнеров для конкретного клиента. Дополнительные сведения см. в разделе "Приложения контейнеров Azure" в мультитенантном решении.

  • Используйте ограничения вычислительных ресурсов: используйте ограничения ресурсов ЦП и памяти контейнеров для управления вычислительными ресурсами и памятью в среде. Ограничения по умолчанию контейнера — 2 виртуальных ЦП и 4 ГиБ для вычислений и памяти соответственно.

  • Используйте пробы работоспособности: добавьте пробы работоспособности в приложения контейнеров. Убедитесь, что редакции содержат livenessProbe, readinessProbeи startupProbe. Дополнительные сведения см. в статье о пробах работоспособности приложений контейнеров Azure.

  • Правильно настройте пробы работоспособности: проба работоспособности отвечает за выполнение вызовов к конечной точке и ожидает получения кода состояния успешного выполнения, как правило, в диапазоне HTTP 2xxx, когда система находится в работоспособном состоянии. Рекомендуется, чтобы эта конечная точка выполняла проверка не только о работоспособности системы, но и о работоспособности критически важных подчиненных компонентов, таких как базы данных, хранилища и службы обмена сообщениями. Чтобы предотвратить непрерывный каскад проверка работоспособности, важно реализовать кэширование подчиненных ответов на работоспособность в течение короткого периода времени.

  • Подробное ведение журнала. Создание запросов Log Analytics для поиска предупреждений, ошибок и критически важных сообщений.

    • Журналы приложений создаются выходными сообщениями консоли контейнеров (/stdoutstderr). Если dapr включен, выходные данные консоли содержат сообщения контейнера приложений и бокового автомобиля Dapr. Дополнительные сведения о том, как запрашивать журналы с помощью log analytics, см. в статье "Мониторинг журналов".

    • Системные журналы создаются приложениями контейнеров Azure.

  • Включение визуальной трассировки. При включении Dapr настройте daprAIInstrumentationKey на уровне среды ACA для визуализации приложений контейнеров распределенной трассировки в карте приложений приложение Azure Аналитика.

  • Используйте пакет SDK для приложений Аналитика. Использование пакета SDK для приложений Аналитика для данных приложения в качестве агента автоматического инструментирования еще не поддерживается.

  • Используйте зоны доступности: если требуется высокий уровень доступности, используйте Зоны доступности во всех ресурсах. Убедитесь, что не только приложения-контейнеры являются избыточными по зонам, но и смежными службами, необходимыми для выполнения запросов, таких как базы данных, службы хранения и обмена сообщениями.

  • Используйте распределенную реплика tion: для аварийного восстановления (АВАРИЙНОго восстановления) убедитесь, что данные приложения и исходный код доступны в нескольких регионах Azure. Например, служба хранилища Azure учетные записи позволяют размещать геоза реплика хранилища и База данных SQL Azure разрешать размещение реплика чтения в других регионах.

  • Автоматизация сборок. Используйте сквозную автоматизацию для создания и развертывания приложений контейнеров Azure.

  • Используйте реестр контейнеров: сохраните образы контейнеров в Реестр контейнеров Azure и гео реплика te реестра в каждом регионе ACA.

  • Протестируйте план аварийного восстановления: регулярно создавайте и тестируйте план аварийного восстановления с помощью ключевых сценариев сбоя. Дополнительные сведения см. в разделе "Тестирование резервного копирования и аварийного восстановления".