Udostępnij za pośrednictwem


Wskazówki dotyczące rozwiązywania problemów z agentem usługi Azure Monitor na maszynach wirtualnych z systemem Linux i zestawach skalowania

Omówienie agenta usługi Azure Monitor

Zanim przejdziesz dalej, musisz zapoznać się z agentem usługi Azure Monitor i regułami zbierania danych.

Terminologia

Nazwisko Akronim opis
Agent usługi Azure Monitor AMA Nowy agent usługi Azure Monitor
Reguły zbierania danych DcR Reguły konfigurowania zbierania danych przez agenta, tj. co należy zbierać, gdzie wysyłać i nie tylko
Usługa konfiguracji usługi Azure Monitor AMCS Usługa regionalna hostowana na platformie Azure, która kontroluje zbieranie danych dla tego agenta i innych części usługi Azure Monitor. Agent wywołuje do tej usługi, aby pobrać kontrolery domeny.
Punkt końcowy dzienników -- Punkt końcowy do wysyłania danych do obszarów roboczych usługi Log Analytics
Punkt końcowy metryk -- Punkt końcowy do wysyłania danych do baz danych metryk usługi Azure Monitor.
Usługa metadanych wystąpienia i usługa hybrydowa IMDS i HIMDS Usługi hostowane na platformie Azure, które udostępniają informacje o aktualnie uruchomionych maszynach wirtualnych, zestawach skalowania (za pośrednictwem usług IMDS) i serwerach z obsługą usługi Arc (za pośrednictwem usługi HIMDS) odpowiednio
Obszar roboczy usługi Log Analytics PRAWO Miejsce docelowe w usłudze Azure Monitor, do którego można wysyłać dzienniki zebrane przez agenta
Metryki niestandardowe -- Miejsce docelowe w usłudze Azure Monitor, do którego można wysyłać metryki gościa zebrane przez agenta

Podstawowe kroki rozwiązywania problemów

Wykonaj poniższe kroki, aby rozwiązać problemy z najnowszą wersją agenta usługi Azure Monitor uruchomionego na maszynie wirtualnej z systemem Linux:

  1. Dokładnie zapoznaj się z wymaganiami wstępnymi tutaj.

  2. Sprawdź, czy rozszerzenie zostało pomyślnie zainstalowane i aprowizowane, co powoduje zainstalowanie plików binarnych agenta na maszynie:

    1. Otwórz witrynę Azure Portal > , wybierz maszynę > wirtualną Otwórz ustawienia : Rozszerzenia i aplikacje z okienka po lewej stronie > "AzureMonitorLinuxAgent" powinny być wyświetlane ze stanem: "Aprowizowanie powiodło się"
    2. Jeśli nie widzisz rozszerzenia na liście, sprawdź, czy maszyna może nawiązać dostęp do platformy Azure, i znajdź rozszerzenie do zainstalowania przy użyciu poniższego polecenia:
      az vm extension image list-versions --location <machine-region> --name AzureMonitorLinuxAgent --publisher Microsoft.Azure.Monitor
      
    3. Poczekaj 10–15 minut, ponieważ rozszerzenie może przechodzić stan. Jeśli nadal nie jest wyświetlana jak powyżej, odinstaluj i zainstaluj rozszerzenie ponownie.
    4. Sprawdź, czy na maszynie występują błędy w dziennikach /var/log/azure/Microsoft.Azure.Monitor.AzureMonitorLinuxAgent/ rozszerzeń
  3. Sprawdź, czy agent jest uruchomiony:

    1. Sprawdź, czy agent emituje dzienniki pulsu do obszaru roboczego usługi Log Analytics, korzystając z poniższego zapytania. Pomiń, jeśli element "Metryki niestandardowe" jest jedynym miejscem docelowym w kontrolerze domeny:
      Heartbeat | where Category == "Azure Monitor Agent" and Computer == "<computer-name>" | take 10
      
    2. Sprawdzanie, czy usługa agenta jest uruchomiona
      systemctl status azuremonitoragent
      
    3. Sprawdź, czy na maszynie są widoczne błędy w podstawowych dziennikach /var/opt/microsoft/azuremonitoragent/log/mdsd.* agenta
  4. Sprawdź, czy kontroler domeny istnieje i jest skojarzony z maszyną wirtualną:

    1. Jeśli używasz obszaru roboczego usługi Log Analytics jako miejsca docelowego, sprawdź, czy kontroler domeny istnieje w tym samym regionie fizycznym co obszar roboczy usługi Log Analytics.
    2. Otwórz witrynę Azure Portal>, wybierz regułę zbierania danych Otwórz konfigurację > : Zasoby w okienku po lewej stronie > Powinna zostać wyświetlona maszyna wirtualna wymieniona tutaj.
    3. Jeśli nie ma na liście, kliknij pozycję "Dodaj" i wybierz maszynę wirtualną z selektora zasobów. Powtórz wszystkie kontrolery domeny.
  5. Sprawdź, czy agent mógł pobrać skojarzone kontrolery domeny z usługi AMCS:

    1. Sprawdź, czy w tej lokalizacji jest wyświetlana najnowsza wersja narzędzia DCR /etc/opt/microsoft/azuremonitoragent/config-cache/configchunks/

Problemy z zbieraniem dziennika systemowego

Aby uzyskać więcej informacji na temat rozwiązywania problemów z dziennikiem systemowym przy użyciu agenta usługi Azure Monitor, zobacz tutaj.

  • Plik /var/opt/microsoft/azuremonitoragent/log/mdsd.qos jakości usług (QoS) zapewnia agregacje w formacie CSV 15-minutowe przetworzonych zdarzeń i zawiera informacje o ilości przetworzonych zdarzeń dziennika systemowego w danym przedziale czasu. Ten plik jest przydatny podczas śledzenia spadków pozyskiwania zdarzeń dziennika systemowego.

    Na przykład poniższy fragment pokazuje, że w ciągu 15 minut poprzedzających 2022-02-28T19:55:23.5432920Z agent otrzymał 77 zdarzeń dziennika systemowego z demonem obiektu i informacjami o poziomie i wysłał 77 wymienionych zdarzeń do zadania przekazywania. Ponadto zadanie przekazywania agenta odebrało 77 i pomyślnie przekazano wszystkie 77 tych komunikatów daemon.info.

    #Time: 2022-02-28T19:55:23.5432920Z
    #Fields: Operation,Object,TotalCount,SuccessCount,Retries,AverageDuration,AverageSize,AverageDelay,TotalSize,TotalRowsRead,TotalRowsSent
    ...
    MaRunTaskLocal,daemon.debug,15,15,0,60000,0,0,0,0,0
    MaRunTaskLocal,daemon.info,15,15,0,60000,46.2,0,693,77,77
    MaRunTaskLocal,daemon.notice,15,15,0,60000,0,0,0,0,0
    MaRunTaskLocal,daemon.warning,15,15,0,60000,0,0,0,0,0
    MaRunTaskLocal,daemon.error,15,15,0,60000,0,0,0,0,0
    MaRunTaskLocal,daemon.critical,15,15,0,60000,0,0,0,0,0
    MaRunTaskLocal,daemon.alert,15,15,0,60000,0,0,0,0,0
    MaRunTaskLocal,daemon.emergency,15,15,0,60000,0,0,0,0,0
    ...
    MaODSRequest,https://e73fd5e3-ea2b-4637-8da0-5c8144b670c8_LogManagement,15,15,0,455067,476.467,0,7147,77,77
    

Kroki rozwiązywania problemów

  1. Najpierw zapoznaj się z ogólnymi krokami rozwiązywania problemów z usługą AMA systemu Linux. Jeśli agent emituje pulsy, przejdź do kroku 2.

  2. Przeanalizowana konfiguracja jest przechowywana w lokalizacji /etc/opt/microsoft/azuremonitoragent/config-cache/configchunks/. Sprawdź, czy kolekcja syslog jest zdefiniowana, a lokalizacje docelowe dziennika są takie same jak w formacie DCR UI/DCR JSON.

    1. Jeśli tak, przejdź do kroku 3. Jeśli tak nie jest, problem znajduje się w przepływie pracy konfiguracji.
    2. Zbadaj mdsd.errpliki ,mdsd.warnmdsd.info w obszarze /var/opt/microsoft/azuremonitoragent/log pod kątem możliwych błędów konfiguracji.
  3. Zweryfikuj układ przepływu pracy kolekcji Syslog, aby upewnić się, że wszystkie niezbędne elementy są dostępne i dostępne:

    1. W przypadku rsyslog użytkowników upewnij się, że /etc/rsyslog.d/10-azuremonitoragent.conf plik jest obecny, nie jest pusty i jest dostępny dla demona rsyslog (użytkownik dziennika systemowego).
      1. Sprawdź konfigurację rsyslog pod /etc/rsyslog.conf adresem i /etc/rsyslog.d/* sprawdź, czy masz jakiekolwiek dane wejściowe powiązane z zestawem reguł innych niż domyślne, ponieważ komunikaty z tych danych wejściowych nie będą przekazywane do agenta usługi Azure Monitor. Na przykład komunikaty z danych wejściowych skonfigurowanych przy użyciu zestawu reguł innych niż domyślne, takie jak input(type="imtcp" port="514" ruleset="myruleset") nie będą przekazywane.
    2. W przypadku syslog-ng użytkowników upewnij się, że /etc/syslog-ng/conf.d/azuremonitoragent.conf plik jest obecny, nie jest pusty i jest dostępny dla demona syslog-ng (użytkownik dziennika systemowego).
    3. Upewnij się, że plik /run/azuremonitoragent/default_syslog.socket istnieje i jest dostępny odpowiednio.rsyslog syslog-ng
    4. Sprawdź, czy kolejka demona dziennika systemowego nie jest przepełniona, powodując niepowodzenie przekazywania, odwołując się do wskazówek tutaj: dane rsyslog nie zostały przekazane z powodu problemu z pełnym miejscem na dysku w agencie systemu AMA Linux
  4. Aby dodatkowo debugować pozyskiwanie zdarzeń dziennika systemu, możesz dołączyć flagę śledzenia -T 0x2002 na końcu MDSD_OPTIONS w pliku /etc/default/azuremonitoragenti ponownie uruchomić agenta:

    export MDSD_OPTIONS="-A -c /etc/opt/microsoft/azuremonitoragent/mdsd.xml -d -r $MDSD_ROLE_PREFIX -S $MDSD_SPOOL_DIRECTORY/eh -L $MDSD_SPOOL_DIRECTORY/events -e $MDSD_LOG_DIR/mdsd.err -w $MDSD_LOG_DIR/mdsd.warn -o $MDSD_LOG_DIR/mdsd.info -T 0x2002"
    
  5. Po odtworzeniu problemu za pomocą flagi śledzenia znajdziesz więcej informacji o debugowaniu w pliku /var/opt/microsoft/azuremonitoragent/log/mdsd.info. Sprawdź plik pod kątem możliwej przyczyny problemu z zbieraniem dzienników syslog, takich jak analizowanie/ przetwarzanie / konfiguracja / błędy przekazywania.

    Ostrzeżenie

    Upewnij się, że po sesji debugowania usunięto ustawienie flagi śledzenia —T 0x2002 , ponieważ generuje wiele instrukcji śledzenia, które mogą szybciej wypełnić dysk lub utrudnić wizualne analizowanie pliku dziennika.

Rozwiązywanie problemów z serwerem z obsługą usługi Arc

Jeśli po sprawdzeniu podstawowych kroków rozwiązywania problemów nie widzisz agenta usługi Azure Monitor emitujących dzienniki lub znajdź błędy "Nie można pobrać tokenu MSI z punktu końcowego USŁUGI IMDS" w /var/opt/microsoft/azuremonitoragent/log/mdsd.err pliku dziennika, prawdopodobnie syslog użytkownik nie jest członkiem grupy himds. Dodaj syslog użytkownika do himds grupy użytkowników, jeśli użytkownik nie jest członkiem tej grupy. Utwórz użytkownika syslog i grupę syslog, w razie potrzeby i upewnij się, że użytkownik znajduje się w tej grupie. Aby uzyskać więcej informacji, zapoznaj się z wymaganiami dotyczącymi uwierzytelniania serwera z obsługą usługi Azure Arc tutaj.