Оценка приложений

Рационализация облака — это процесс оценки приложений, чтобы определить оптимальный способ миграции или модернизации приложений для облака.

К методам рационализации относятся:

  • Повторное размещение. Также известный как перенос лифтов и сдвигов , повторное размещение перемещает текущее приложение в облако с минимальным изменением.
  • Рефакторинг. Слегка рефакторинг приложения в соответствии с параметрами на основе платформы как службы (PaaS) может снизить операционные затраты.
  • Повторная иерархия. Повторное создание приложений, не совместимых с облачными компонентами или облачными приложениями, которые будут реализовывать затраты и операционные эффективность путем переключения в облачное решение.
  • Повторная сборка. Если изменения или затраты на перенос приложения слишком велики, рассмотрите возможность создания новой базы кода в машинном облаке. Перестроение особенно подходит для приложений, которые ранее соответствовали бизнес-потребностям, но теперь не поддерживаются или не соответствуют текущим бизнес-процессам.

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

Следующие проверка списки оценивают приложение, чтобы определить сложность и риск перестроения или перестроения.

Сложность и риск

Каждый из следующих факторов добавляет сложность, риск или оба.

Архитектура

Определите высокоуровневую архитектуру, например веб-приложение, веб-службы, хранилище данных или кэширование.

Множитель Сложность Риск
Компоненты приложения не переводятся непосредственно в Azure.
Приложению требуются изменения кода для запуска в Azure.
Приложению требуются основные, сложные изменения кода для запуска в Azure.

Бизнес-факторы

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

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

Технология

Множитель Сложность Риск
Это не веб-приложение и не размещено на веб-сервере.
Приложение не размещено в Службах IIS Windows
Приложение не размещено в Linux
Приложение размещается в веб-ферме и требует размещения веб-компонентов несколькими серверами.
Приложению требуется установить стороннее программное обеспечение на серверах.
Приложение размещается в одном центре обработки данных, а операции выполняются в одном расположении.
Приложение обращается к реестру сервера.
Приложение отправляет сообщения электронной почты и нуждается в доступе к SMTP-серверу.
Это не приложение .NET.
Приложение использует SQL Server в качестве хранилища данных.
Приложение хранит данные на локальных дисках и должно иметь доступ к дискам для правильной работы.
Приложение использует службы Windows для обработки асинхронных операций или требует внешних служб для обработки данных или операций.

Развертывание

При оценке требований к развертыванию рассмотрите следующие возможности:

  • Количество ежедневных пользователей
  • Среднее число одновременных пользователей
  • Ожидаемый трафик
  • Пропускная способность в Гбит/с
  • Число запросов в секунду
  • Объем памяти, необходимый

Вы можете снизить риск развертывания, сохраняя код под управлением версиями в системе управления версиями, например Git, Azure DevOps Server или SVN.

Множитель Сложность Риск
Использование существующего кода и данных является приоритетом #1.
Код приложения не контролируется версиями.
Нет автоматизированного процесса сборки, например Azure DevOps Server или Jenkins.
Для развертывания приложения нет автоматизированного процесса выпуска.
Приложение имеет соглашение об уровне обслуживания (SLA), которое определяет количество ожидаемых простоев.
Приложение испытывает пиковое или переменное время использования или загружается.
Веб-приложение сохраняет состояние сеанса в процессе, а не внешнее хранилище данных.

Operations

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

Безопасность

Множитель Сложность Риск
Приложение использует Active Directory для проверки подлинности пользователей.
Организация еще не настроила идентификатор Microsoft Entra или не настроила Microsoft Entra Подключение для синхронизации локальной службы AD с идентификатором Microsoft Entra.
Приложению требуется доступ к локальным ресурсам, для которых требуется VPN-подключение из Azure.
Организация еще не настроила VPN-подключение между Azure и локальной средой.
Для запуска приложения требуется SSL-сертификат.

Результаты

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

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

Общий возможный фактор сложности = 28, общий возможный фактор риска = 23

Для сложности и риска оценка, полученная из вычисления выше <0,3 = низкая, 0,7 = средняя, <>0,7 = высокая. Эти оценки обеспечивают относительную шкалу сложности и риска.

Рефакторинг, реархитирование или перестроение

Чтобы рационализировать размещение, рефакторинг, рефакторинг, реархитирование или перестроение приложения, рассмотрим следующие моменты. Многие из этих факторов также способствуют сложности и риску.

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

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

Повторное размещение или рефакторинг

  • Если использование существующего кода и данных является главным приоритетом, рассмотрите стратегию рефакторинга, а не перестроение или перестроение.

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

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

  • Если в портфеле есть приложения, обслуживающие аналогичные потребности, это может быть возможность повторно выполнить или перестроить все решение.

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

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

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

Множитель Перепроектирование Перестроение
Существуют другие приложения, обслуживающие аналогичные потребности в вашем портфеле.
Приложению требуются незначительные изменения кода для запуска в Azure.
Приложению требуются основные, сложные изменения кода для запуска в Azure.
Важно использовать существующий код.
Вы хотите переместить монолитное приложение в многоуровневую архитектуру.
Вы хотите переместить монолитное приложение в архитектуру микрослужб.
Вы ожидаете, что это приложение будет добавлять прорывные возможности, такие как ИИ, IoT или боты.
Среди функциональных возможностей, затрат, инфраструктуры и процессов функциональные возможности являются наименее эффективным аспектом этого приложения.
Приложению требуется стороннее программное обеспечение, установленное на серверах.
Приложение обращается к реестру сервера.
Приложение отправляет сообщения электронной почты и нуждается в доступе к SMTP-серверу.
Приложение использует SQL Server в качестве хранилища данных.
Приложение хранит данные на локальных дисках и должно иметь доступ к дискам для правильного выполнения.
Приложение использует службы Windows для обработки асинхронных операций или требует внешних служб для обработки данных или операций.
Веб-приложение сохраняет состояние сеанса в процессе, а не во внешнее хранилище данных.
Приложение имеет пиковое и переменное время использования и нагрузку.
Ожидается, что приложение обрабатывает высокий трафик.

Следующие шаги