Połączenie do wystąpienia aplikacji na potrzeby rozwiązywania problemów

Uwaga

Azure Spring Apps to nowa nazwa usługi Azure Spring Cloud. Mimo że usługa ma nową nazwę, stara nazwa będzie widoczna w niektórych miejscach przez pewien czas, ponieważ pracujemy nad aktualizowaniem zasobów, takich jak zrzuty ekranu, filmy wideo i diagramy.

Ten artykuł dotyczy: ✔️ Podstawowa/Standardowa ✔️ Enterprise

W tym artykule opisano sposób uzyskiwania dostępu do środowiska powłoki wewnątrz wystąpień aplikacji w celu przeprowadzenia zaawansowanego rozwiązywania problemów.

Mimo że usługa Azure Spring Apps oferuje różne zarządzane metody rozwiązywania problemów, możesz wykonać zaawansowane rozwiązywanie problemów przy użyciu środowiska powłoki. Na przykład możesz wykonać następujące zadania rozwiązywania problemów:

  • Bezpośrednio używaj narzędzi zestawu Java Development Kit (JDK).
  • Diagnozowanie usług zaplecza aplikacji pod kątem opóźnienia połączeń sieciowych i wywołań interfejsu API zarówno dla wystąpień sieci wirtualnej, jak i nienależących do sieci wirtualnej.
  • Diagnozowanie problemów z pojemnością magazynu, wydajnością i pamięcią procesora CPU.

Wymagania wstępne

  • Interfejs wiersza polecenia platformy Azure z rozszerzeniem Azure Spring Apps. Użyj następującego polecenia, aby usunąć poprzednie wersje i zainstalować najnowsze rozszerzenie. Jeśli wcześniej zainstalowano spring-cloud rozszerzenie, odinstaluj je, aby uniknąć niezgodności konfiguracji i wersji.

    az extension remove --name spring
    az extension add --name spring
    az extension remove --name spring-cloud
    
  • Wdrożona aplikacja w usłudze Azure Spring Apps.

  • Jeśli wdrożono kontener niestandardowy, program powłoki. Wartość domyślna to /bin/sh.

Przypisywanie roli platformy Azure

Przed nawiązaniem połączenia z wystąpieniem aplikacji musisz mieć przypisaną rolę Azure Spring Apps Połączenie Rola. Połączenie do wystąpienia aplikacji wymaga uprawnienia Microsoft.AppPlatform/Spring/apps/deployments/connect/actionakcji danych .

Rolę platformy Azure można przypisać przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Wykonaj poniższe kroki, aby przypisać rolę platformy Azure przy użyciu witryny Azure Portal.

  1. Otwórz portal Azure Portal.

  2. Otwórz istniejące wystąpienie usługi Azure Spring Apps.

  3. Wybierz pozycję Kontrola dostępu (Zarządzanie dostępem i tożsamościami) z menu po lewej stronie.

  4. Wybierz pozycję Dodaj na pasku poleceń, a następnie wybierz pozycję Dodaj przypisanie roli.

    Screenshot of the Access Control(IAM) page showing the Add role assignment command.

  5. Wyszukaj pozycję Rola Połączenie usługi Azure Spring Apps na liście, a następnie wybierz pozycję Dalej.

    Screenshot of the Add role assignment page showing the Azure Spring Apps Connect Role.

  6. Wybierz pozycję Wybierz członków, a następnie wyszukaj swoją nazwę użytkownika.

  7. Wybierz Przejrzyj + przypisz.

Połączenie do wystąpienia aplikacji

Możesz nawiązać połączenie z wystąpieniem aplikacji przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Wykonaj poniższe kroki, aby nawiązać połączenie z wystąpieniem aplikacji przy użyciu witryny Azure Portal.

  1. Otwórz portal Azure Portal.

  2. Otwórz istniejące wystąpienie usługi Azure Spring Apps.

  3. Wybierz pozycję Aplikacje z menu po lewej stronie, a następnie wybierz jedną z Twoich aplikacji.

  4. Wybierz pozycję Konsola z menu po lewej stronie.

  5. Wybierz wystąpienie aplikacji.

    Screenshot of the Azure portal Console page showing an app instance.

  6. Wybierz lub wprowadź powłokę do uruchomienia w kontenerze.

    Screenshot of the Azure portal Console page showing a Custom Shell entry.

  7. Wybierz pozycję Połącz.

    Screenshot of the Azure portal Console page showing the Connect command.

Rozwiązywanie problemów z wystąpieniem aplikacji

Po nawiązaniu połączenia z wystąpieniem aplikacji możesz sprawdzić stan pamięci sterta.

Użyj następującego polecenia, aby znaleźć identyfikator procesu Java, czyli zwykle 1:

jps

Dane wyjściowe powinny wyglądać podobnie do następującego przykładu:

Screenshot showing the output of the jps command.

Następnie użyj następującego polecenia, aby uruchomić narzędzie JDK, aby sprawdzić wynik:

jstat -gc 1

Dane wyjściowe powinny wyglądać podobnie do następującego przykładu:

Screenshot showing the output of the jstat command.

Odłączanie od wystąpienia aplikacji

Po zakończeniu exit rozwiązywania problemów użyj polecenia , aby odłączyć się od wystąpienia aplikacji, lub naciśnij klawisz Ctrl+d.

Narzędzia do rozwiązywania problemów

Poniższa lista zawiera opis niektórych wstępnie zainstalowanych narzędzi, których można użyć do rozwiązywania problemów:

  • lsof — Wyświetla listę otwartych plików.
  • top — Wyświetla informacje podsumowania systemu i bieżące wykorzystanie.
  • ps — Pobiera migawkę uruchomionego procesu.
  • netstat - Drukuje połączenia sieciowe i statystyki interfejsu.
  • nslookup — Interakcyjne zapytania dotyczące serwerów nazw internetowych.
  • ping — Sprawdza, czy można uzyskać dostęp do hosta sieciowego.
  • nc - Odczytuje i zapisuje w połączeniach sieciowych przy użyciu protokołu TCP lub UDP.
  • wget — Umożliwia pobieranie plików i interakcję z interfejsami API REST.
  • df — Wyświetla ilość dostępnego miejsca na dysku.

Możesz również użyć narzędzi dołączonych do zestawu JDK, takich jak jps, jcmdi jstat.

Na poniższej liście przedstawiono dostępne narzędzia, które zależą od planu usługi i typu wdrożenia aplikacji:

  • Wdrożenie kodu źródłowego, pliku JAR i artefaktów:
    • Plan podstawowy, standardowy i standardowy:
      • Typowe narzędzia — Tak
      • Narzędzia zestawu JDK — tak, tylko w przypadku obciążeń Java.
    • Plan przedsiębiorstwa:
      • Typowe narzędzia — zależy od tego, który stos systemu operacyjnego został wybrany w konstruktorze. Tak, w przypadku pełnego stosu systemu operacyjnego. Nie, dla podstawowego stosu systemu operacyjnego.
      • Narzędzia zestawu JDK — tak, tylko w przypadku obciążeń Java.
  • Wdrożenie obrazu niestandardowego: zależy od zainstalowanego narzędzia ustawionego na obrazie.

Uwaga

Narzędzia JDK nie są uwzględnione w ścieżce dla typu wdrożenia kodu źródłowego. Uruchom polecenie export PATH="$PATH:/layers/tanzu-buildpacks_microsoft-openjdk/jdk/bin" przed uruchomieniem dowolnych poleceń zestawu JDK.

Ograniczenia

Korzystanie ze środowiska powłoki w wystąpieniach aplikacji ma następujące ograniczenia:

  • Ponieważ aplikacja jest uruchomiona jako użytkownik niebędący użytkownikiem głównym, nie można wykonać niektórych akcji wymagających uprawnień głównych. Na przykład nie można zainstalować nowych narzędzi przy użyciu menedżera apt / yumpakietów systemowych .

  • Ponieważ niektóre funkcje systemu Linux są zabronione, narzędzia, które wymagają specjalnych uprawnień, takich jak tcpdump, nie działają.

Następne kroki