Ocena aplikacji Spring za pomocą analizatora przydatności chmury
W tym przewodniku opisano, jak ocenić aplikacje Spring za pomocą narzędzia Cloud Suitability Analyzer (CSA), aby ocenić gotowość do migracji do chmury.
Kiedy należy używać analizatora przydatności chmury?
Cloud Suitability Analyzer to narzędzie typu open source opracowane przez oprogramowanie VMware. Można go użyć do oceny aplikacji Spring, Spring Boot i Spring Cloud w celu określenia, jak są gotowe do użycia w chmurze.
Analizator przydatności chmury można pobrać do środowiska deweloperskiego, a następnie przeskanować kod źródłowy do oceny. Wszystkie wyniki są przechowywane w środowisku lokalnym. Raport oceny zawiera oszacowanie, ile wysiłku jest wymagane do przeprowadzenia migracji aplikacji Spring do chmury. Raport zawiera również listę problemów na poziomie wiersza kodu ocenianych według ważności.
Uwaga
Użyj przeglądarki Chrome jako zalecanej przeglądarki, jeśli inne przeglądarki nie będą prawidłowo otwierać portalu internetowego Analizatora dostępności chmury.
Jakie wyniki można uzyskać z narzędzia Cloud Suitability Analyzer?
W poniższych sekcjach opisano wyniki wygenerowane przez narzędzie Cloud Suitability Analyzer.
Podsumowanie dla grupy aplikacji
Cloud Suitability Analyzer szacuje gotowość aplikacji Spring na platformach w chmurze, pasując do wzorców względem kodu źródłowego. Narzędzie przypisuje każdemu problemowi nieprzetworzony wynik na podstawie zestawu wstępnie zdefiniowanych lub dostosowanych reguł. Następnie narzędzie oblicza wynik techniczny z zakresu od 0 do 10 dla każdej aplikacji na podstawie sumy nieprzetworzonych wyników. Im więcej aplikacji jest gotowych do chmury, tym wyższa jest jego ocena techniczna.
Listę aplikacji można znaleźć na stronie Podsumowanie raportu oceny. Strona podsumowania zawiera również inne informacje, takie jak wiersze kodu i liczba skanowanych plików.
Za każdym razem, gdy uruchamiasz ocenę, narzędzie rejestruje nowy raport. Możesz użyć kontrolki Wybierz przebieg na stronie Podsumowanie , aby wyświetlić i porównać różne wersje raportu oraz zobaczyć postęp nakładu pracy związanych z migracją.
Bliżej widoku jednej aplikacji
Aby uzyskać listę określonych problemów na poziomie kodu, możesz znaleźć szczegółowy raport na stronie Aplikacja . Ta strona zawiera listę problemów dla każdej aplikacji i określa ich znaczenie jako "wysokie", "średnie" lub "niskie". Problemy "Wysokie" to poprawki wymagające ręcznego nakładu pracy, zalecane są problemy "średnie" do rozwiązania, a "niskie" problemy są jedynie informacyjne. Możesz również znaleźć nazwę pliku, numer wiersza i szacowany nakład pracy wymagany dla każdego problemu w raporcie.
Aby wyświetlić wyniki oceny dla aplikacji, ustaw pozycję Wybierz uruchom na wersję, którą chcesz wyświetlić, a następnie ustaw pozycję Aplikacja na nazwę aplikacji. W górnej części karty Wyniki możesz wybrać grupę tagów, aby filtrować wyniki i wyświetlać tylko te, na których chcesz skupić się.
Szczegółowe informacje dotyczące konkretnego problemu
Na stronie Aplikacja możesz wybrać identyfikator problemu, aby wyświetlić szczegółowe informacje i sugerowane akcje. Te informacje obejmują ścieżkę pliku kodu źródłowego z znalezionym problemem, wzorcem dopasowanym do problemu oraz regułą opisaną wzorzec i wynik nakładu pracy. W sekcji Porady możesz znaleźć konkretne wyjaśnienie znalezionego problemu i sugerowaną odpowiednią akcję.
Jak używać analizatora przydatności chmury?
Narzędzie Cloud Suitability Analyzer można uruchomić w trzech krokach: konfigurowanie, skanowanie i przeglądanie.
Konfiguracja: pobierz pliki binarne analizatora dopasowania do chmury i niestandardowe reguły platformy Azure. Pliki binarne można zastąpić najnowszą wersją z repozytorium VMware cloud-suitability-analyzer . Wyodrębnij pakiet i należy znaleźć następujące elementy w tym samym katalogu:
-
csa-l
: plik binarny CSA dla systemu Linux -
csa
: plik binarny CSA dla systemu macOS -
csa.exe
: plik binarny CSA dla systemu Windows -
rules
: katalog zawierający niestandardowe reguły platformy Azure -
bins.yaml
: wymagany plik dla niestandardowych reguł -
run-csa-xxx
: Skrypt jednorazowego zatrzymania specyficzny dla systemu operacyjnego, który uruchamia wszystkie wymagane polecenia CSA dla zwykłych scenariuszy
Uwaga
Wszystkie przykłady w tym artykule używają wersji systemu Linux skryptu i pliku binarnego. Parametry w poleceniach mają również zastosowanie do systemów Windows i macOS.
-
Skanowanie: uruchom terminal i uruchom skrypt lub plik binarny z parametrami
-p <src_dir>
, jak pokazano w poniższych przykładach:./run-csa-linux.sh -p <src_dir>
Lub
./csa-l -p <src_dir>
Katalog
<src_dir>
zawiera kilka podkatalogów z kodem źródłowym aplikacji Spring. Ta operacja skanuje wszystkie te projekty w jednym uruchomieniu i przechowuje wyniki w pliku o nazwie csa.db. Kolejne skanowania przechowują wyniki w tym samym pliku csa.db .Przegląd: po uruchomieniu skryptu automatycznie uruchamia portal internetowy. Alternatywnie można użyć następującego polecenia. Portal internetowy domyślnie wyświetla stronę Podsumowanie .
./csa-l ui
Jak dostosować reguły?
W poniższych sekcjach opisano reguły i sposób ich dostosowywania.
Reguły listy w efekcie
W portalu internetowym na stronie Reguły są wyświetlane wszystkie reguły używane do dopasowywania problemów wymienionych na stronie Aplikacja . Szczegółowe informacje dotyczące każdej reguły można również znaleźć.
Na poniższej liście przedstawiono niektóre z niestandardowych reguł platformy Azure:
- Migracja do chmury ogólnie
- Ścieżka systemu Windows do ścieżki systemu Linux
- Miejsce docelowe dziennika do usługi STDOUT
- Magazyn lokalny do udziału plików platformy Azure za pomocą protokołu SMB/NFS
- Reguły uaktualniania zestawu JDK
- Sprawdzanie wersji zestawu JDK
- Uaktualnianie platformy Spring Boot/chmury
- Sprawdzanie wersji platformy Spring Boot
- Sprawdzanie wersji rozwiązania Spring Cloud
- Zastępowanie punktu końcowego klienta Eureka
- Zastępowanie punktu końcowego klienta konfiguracji
- Usuwanie narzędzia Zipkin i korzystanie z usługi Azure Monitor
Eksportowanie reguł
Aby edytować reguły lub napisać własne reguły, najpierw wyeksportuj bieżące reguły do użycia jako wersje podstawowe, które można zmodyfikować. Aby wyeksportować reguły, użyj następującego polecenia:
./csa-l rules export --output-dir=<output_dir>
Po pomyślnym powrocie polecenia pliki konfiguracji opisujące reguły znajdują się w określonym katalogu wyjściowym.
Edytowanie reguł
Każdą regułę można edytować niezależnie za pomocą edytora tekstów. Szczegółowe wyjaśnienie każdego pola można znaleźć w podręczniku użytkownika dostępnym w repozytorium cloud-suitability-analyzer .
Importowanie reguł
Aby dodać własne reguły lub usunąć niepotrzebne reguły, umieść reguły, które chcesz umieścić w tym samym katalogu, a następnie zaimportuj ten katalog. Aby dodać lub usunąć reguły, wykonaj następujące czynności:
Przed zaimportowaniu reguł użyj następującego polecenia, aby wyczyścić obowiązujące reguły i rozpocząć od czystego łupka:
./csa-l rules delete-all
Po wyczyszeniu reguł użyj następującego polecenia, aby zaimportować własny zestaw reguł:
./csa-l rules import --rules-dir=<input_dir>
Teraz użyj następującego polecenia, aby ponownie przeskanować kod źródłowy:
./csa-l -p <src_dir>
Następnie użyj następującego polecenia, aby wyświetlić wyniki:
./csa-l ui
Teraz możesz wyświetlić stronę Reguły zaktualizowane przy użyciu określonego zestawu reguł.
W tym procesie zalecamy zaktualizowanie reguł bezpośrednio w katalogu reguł projektu azure-spring-suitability-rules , a następnie uruchomienie skryptu za pomocą następującego polecenia:
./run-csa-linux.sh -p <src_dir>
To polecenie automatycznie ponownie ładuje reguły, ponownie skanuje kod źródłowy, a następnie uruchamia portal internetowy.
Platformy docelowe do migracji
Na platformie Azure istnieje wiele platform hostingowych, które mogą hostować aplikacje Spring. Aby uzyskać więcej informacji, zobacz Porównanie opcji hostingu aplikacji Java na platformie Azure.
Azure Spring Apps to w pełni zarządzana usługa dla deweloperów platformy Spring. Dzięki usłudze Azure Spring Apps możesz skoncentrować się na kodzie i zarządzać aplikacjami za pomocą wbudowanego monitorowania, odnajdywania usług, zarządzania konfiguracją, integracji ciągłej integracji/ciągłego wdrażania, wdrażania blue-green i nie tylko. Aby uzyskać więcej informacji, zobacz Migrowanie aplikacji Spring Cloud do usługi Azure Spring Apps. Wiele kroków w fazach premigration i migracji zostało już omówionych w dostosowanych regułach platformy Azure dla analizatora przydatności chmury.
Następne kroki
Aby uzyskać więcej informacji, zobacz podręcznik użytkownika w repozytorium cloud-suitability-analyzer .