Оценка приложений Spring с помощью Cloud Suitability Analyzer
В этом руководстве описывается, как оценить приложения Spring с помощью Cloud Suitability Analyzer (CSA) для оценки готовности к миграции в облако.
Когда следует использовать Анализатор пригодности в облаке?
Cloud Suitability Analyzer — это средство с открытым кодом, разработанное VMware. Его можно использовать для оценки приложений Spring, Spring Boot и Spring Cloud, чтобы определить, насколько они готовы к работе в облаке.
Вы можете скачать Cloud Suitability Analyzer в среду разработки, а затем проверить исходный код для оценки. Все результаты хранятся в локальной среде. Отчет об оценке позволяет оценить, сколько усилий потребуется для переноса приложения Spring в облако. В отчете также перечислены проблемы уровня строки кода, оцененные по важности.
Примечание
Используйте Chrome в качестве рекомендуемого браузера, если другие браузеры не могут правильно открыть веб-портал Cloud Suitability Analyzer.
Какие результаты можно получить из Cloud Suitability Analyzer?
В следующих разделах описаны результаты, полученные Cloud Suitability Analyzer.
Сводка по группе приложений
Cloud Suitability Analyzer оценивает готовность приложений Spring к облачным платформам, сопоставляя шаблоны с исходным кодом. Средство назначает каждой проблеме необработанную оценку на основе набора предопределенных или настраиваемых правил. Затем средство вычисляет техническую оценку в диапазоне от 0 до 10 для каждого приложения на основе суммы необработанных оценок. Чем более готово к облаку приложение, тем выше его техническая оценка.
Список приложений с соответствующей технической оценкой можно найти на странице Сводка отчета об оценке. На странице сводки также перечислены другие сведения, такие как строки кода и количество отсканированных файлов.
При каждом запуске оценки средство записывает новый отчет. Вы можете использовать элемент управления Выбор запуска на странице Сводка для просмотра и сравнения различных версий отчетов, а также для просмотра хода выполнения миграции.
Более подробное представление одного приложения
Список конкретных проблем на уровне строки кода можно найти в подробном отчете на странице Приложения . На этой странице перечислены проблемы для каждого приложения и их важность оценивается как "высокий", "средний" или "низкий". "Высокие" проблемы — это обязательные исправления, требующие ручных усилий, "средние" проблемы рекомендуется устранять, а "низкие" — просто информационные. Вы также можете найти имя файла, номер строки и предполагаемые усилия, необходимые для каждой проблемы в отчете.
Чтобы просмотреть результаты оценки для приложения, задайте для параметра Select Run нужную версию, а затем задайте для параметра Application значение имя приложения. В верхней части вкладки Результаты можно выбрать группу тегов, чтобы отфильтровать результаты и просмотреть только те, на которых вы хотите сосредоточиться.
Подробные сведения о конкретной проблеме
На странице Приложение можно выбрать идентификатор проблемы, чтобы просмотреть подробные сведения и предлагаемые действия. Эти сведения включают путь к файлу исходного кода с найденной проблемой, шаблон, соответствующий проблеме, и правило, описывающее шаблон и оценку усилий. В разделе Советы можно найти конкретное объяснение найденной проблемы и соответствующее предлагаемое действие.
Как использовать Анализатор соответствия облачным решениям?
Вы можете запустить Cloud Suitability Analyzer в трех шагах: настройка, проверка и проверка.
Настройка. Скачайте двоичные файлы Анализатора облачной пригодности и настраиваемые правила Azure. Двоичные файлы можно заменить последней версией из репозитория cloud-suitability-analyzer VMware. Извлеките пакет, и в том же каталоге должны находиться следующие элементы:
-
csa-l
: двоичный файл CSA для Linux -
csa
: двоичный файл CSA для macOS -
csa.exe
: двоичный файл CSA для Windows -
rules
: каталог, содержащий настраиваемые правила Azure. -
bins.yaml
: обязательный файл для настраиваемых правил -
run-csa-xxx
: сценарий единого останова для конкретной ОС, который выполняет все необходимые команды CSA для обычных сценариев.
Примечание
Во всех примерах в этой статье используется версия скрипта для Linux и двоичный файл. Параметры в командах также применимы к Windows и macOS.
-
Сканирование. Запустите терминал и запустите скрипт или двоичный файл с параметрами
-p <src_dir>
, как показано в следующих примерах:./run-csa-linux.sh -p <src_dir>
Или
./csa-l -p <src_dir>
Каталог
<src_dir>
содержит несколько подкаталогов с исходным кодом приложения Spring. Эта операция проверяет все эти проекты за один запуск и сохраняет результаты в файле с именем csa.db. Последующие проверки сохраняют результаты в том же csa.db файле.Проверка. При запуске скрипта автоматически запускается веб-портал. Кроме того, можно использовать следующую команду. На веб-портале по умолчанию отображается страница Сводка .
./csa-l ui
Как настроить правила?
В следующих разделах описаны правила и способы их настройки.
Список правил в действии
На веб-портале на странице Правила отображаются все правила, используемые для сопоставления проблем, перечисленных на странице Приложения . Вы также можете найти сведения о каждом правиле.
В следующем списке показаны некоторые настраиваемые правила Azure.
- Миграция в облако в целом
- Путь Windows к Linux
- Назначение журнала в STDOUT
- Локальное хранилище в файловом ресурсе Azure по протоколу SMB/NFS
- Правила обновления JDK
- Проверка версии JDK
- Обновление Spring Boot/Cloud
- Проверка версии Spring Boot
- Проверка версии Spring Cloud
- Переопределение конечной точки клиента Eureka
- Переопределение конечной точки клиента конфигурации
- Удаление Zipkin и использование Azure Monitor
Правила экспорта
Чтобы изменить правила или написать собственные правила, сначала экспортируйте текущие правила для использования в качестве базовых версий, которые можно изменить. Чтобы экспортировать правила, используйте следующую команду:
./csa-l rules export --output-dir=<output_dir>
При успешном выполнении команды файлы конфигурации, описывающие правила, находятся в указанном выходном каталоге.
Изменение правил
Вы можете редактировать каждое правило независимо с помощью текстового редактора. Подробное описание каждого поля можно найти в руководстве пользователя, доступном в репозитории cloud-suitability-analyzer .
Правила импорта
Чтобы добавить собственные правила или удалить правила, которые вам не нужны, поместите нужные правила в тот же каталог, а затем импортируйте этот каталог. Чтобы добавить или удалить правила, выполните следующие действия.
Перед импортом правил используйте следующую команду, чтобы очистить действующие правила и начать с чистого листа:
./csa-l rules delete-all
После очистки правил используйте следующую команду, чтобы импортировать собственный набор правил:
./csa-l rules import --rules-dir=<input_dir>
Теперь используйте следующую команду, чтобы снова проверить исходный код:
./csa-l -p <src_dir>
Затем используйте следующую команду, чтобы просмотреть результаты:
./csa-l ui
Теперь вы увидите страницу Правила , обновленную с учетом указанного набора правил.
Для этого рекомендуется обновить правила непосредственно в каталоге rules проекта azure-spring-suitability-rules , а затем выполнить скрипт с помощью следующей команды:
./run-csa-linux.sh -p <src_dir>
Эта команда автоматически перезагружает правила, повторно сканирует исходный код, а затем запускает веб-портал.
Целевые платформы для миграции
В Azure есть несколько платформ размещения, на которых можно разместить приложения Spring. Дополнительные сведения см. в статье Сравнение вариантов размещения приложений Java в Azure.
Azure Spring Apps — это полностью управляемая служба для разработчиков Spring. С помощью Azure Spring Apps вы можете сосредоточиться на коде и управлять приложениями с помощью встроенного мониторинга, обнаружения служб, управления конфигурацией, интеграции CI/CD, сине-зеленого развертывания и многого другого. Дополнительные сведения см. в статье Перенос приложений Spring Cloud в Azure Spring Apps. Многие шаги на этапах предварительной миграции и миграции уже рассматриваются в настраиваемых правилах Azure для Cloud Suitability Analyzer.
Дальнейшие действия
Дополнительные сведения см. в руководстве пользователя в репозитории cloud-suitability-analyzer .