Udostępnij za pośrednictwem


Nawiązywanie połączenia z wystąpieniem aplikacji na potrzeby rozwiązywania problemów

Uwaga

Plany Podstawowa, Standardowa i Enterprise zostaną wycofane od połowy marca 2025 r. z 3-letnim okresem emerytalnym. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz ogłoszenie o wycofaniu usługi Azure Spring Apps.

Zużycie standardowe i dedykowany plan zostaną wycofane od 30 września 2024 r. z całkowitym zamknięciem po sześciu miesiącach. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz Migrowanie użycia usługi Azure Spring Apps w warstwie Standardowa i dedykowanego planu do usługi Azure Container Apps.

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ć rolę Azure Spring Apps Connect. Nawiązywanie połączenia z wystąpieniem 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.

    Zrzut ekranu przedstawiający stronę Kontrola dostępu (zarządzanie dostępem i tożsamościami) z poleceniem Dodaj przypisanie roli.

  5. Wyszukaj rolę Azure Spring Apps Connect na liście, a następnie wybierz pozycję Dalej.

    Zrzut ekranu przedstawiający stronę Dodawanie przypisania roli z rolą Azure Spring Apps Connect.

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

  7. Wybierz Przejrzyj + przypisz.

Nawiązywanie połączenia z wystąpieniem 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.

    Zrzut ekranu przedstawiający stronę Konsola witryny Azure Portal z wystąpieniem aplikacji.

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

    Zrzut ekranu przedstawiający stronę Konsola witryny Azure Portal z wpisem powłoki niestandardowej.

  7. Wybierz pozycję Połącz.

    Zrzut ekranu przedstawiający stronę Konsola witryny Azure Portal z poleceniem Połącz.

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:

Zrzut ekranu przedstawiający dane wyjściowe polecenia jps.

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:

Zrzut ekranu przedstawiający dane wyjściowe polecenia jstat.

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 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