Podręcznik weryfikacji interfejsu API REST NetWorker

Summary: Ten artykuł bazy wiedzy zawiera omówienie podstawowych sposobów rozwiązywania problemów związanych z RESTAPI.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

Podręcznik weryfikacji interfejsu API REST NetWorker

Obejrzyj w serwisie YouTube

Additional Information

Rozpoczęcie pracy


Interfejs programowania aplikacji (API) Representational State Transfer (REST) zapewnia programowy dostęp do usługi ochrony danych NetWorker. Korzystając z interfejsu API REST, użytkownicy NetWorker mogą tworzyć aplikacje klienckie w celu automatyzacji operacji NetWorker. Interfejs API REST NetWorker jest instalowany w ramach instalacji serwera NetWorker w tym samym kontenerze Apache Tomcat, co usługi uwierzytelniania NetWorker. Uwierzytelnianie odbywa się przy użyciu tych samych poświadczeń, które są używane w konsoli NetWorker Management Console.  

Interfejs API REST umożliwia interakcję z zasobami identyfikowanymi przez adresy Uniform Resource Identifier (URI). Używa czasowników HTTP (HEAD, GET, PUT, POST, DELETE) do interakcji z identyfikatorem Uniform Resource Identifier (URI) w sposób bezstanowy (serwer nie zawiera stanu klienta, każdy komunikat jest samoopisowy).

Ten dokument dotyczy interakcji z zasobami NetWorker przy użyciu wywołań interfejsu API REST napisanych przez użytkownika. Nie mylić z wywołaniami interfejsu API REST, które są używane przez operacje NetWorker zaplecza.
 

Nawiązywanie połączenia z NetWorker:

Istnieje kilka różnych technologii klienta interfejsu API REST, których można użyć do uruchamiania poleceń w celu nawiązania połączenia z NetWorker; w tym polecenia curl (Linux), rozszerzenia przeglądarki klienta PowerShell Invoke-WebRequest (Windows) i interfejsu API REST. 

Do nawiązania połączenia potrzebne są trzy nagłówki:   
  • Content-Type: application/json
  • Akceptuję: application/json
  • Authorization: Podstawowy z nazwą użytkownika i hasłem zakodowanym w formacie Base 64

W środowiskach, w których istnieje wiele stref danych NetWorker uwierzytelnianych za pośrednictwem jednego serwera NetWorker AUTHC, wymagany jest dodatkowy nagłówek:

  • X-NW-AUTHC-BASE-URL:AUTHC_HOSTNAME_OR_IP:AUTHC_PORT
Domyślnym portem AUTHC jest port 9090. Użycie tego nagłówka jest szczegółowo opisane w: RESTAPI: Jak korzystać ze zdalnego serwera AUTHC podczas przetwarzania żądań RESTAPI?

Interfejs API REST NetWorker jest uwidoczniony w następującym podstawowym identyfikatorze URI:

https://[nw-server-hostname]:9090/nwrestapi/
Istnieją różne wersje interfejsów API. Od czasu początkowego wdrożenia interfejsu API REST wprowadzono udoskonalenia. Oto przykład:
https://[nw-server-hostname]:9090/nwrestapi/v1
https://[nw-server-hostname]:9090/nwrestapi/v2
https://[nw-server-hostname]:9090/nwrestapi/v3
Zmiany tych punktów końcowych zostały opisane w: https://developer.dell.com/apis/2378/versions/v3/docs/GettingStarted.md

Pełny schemat JSON jest dostępny pod adresem

https://[nw-server-hostname]:9090/nwrestapi/v3/schemas/swagger.json

Kody odpowiedzi interfejsu API REST:
 
Kody odpowiedzi dotyczące powodzenia
Kod sukcesu Dotyczy metody HTTP Treść odpowiedzi Opis
200 POBIERZ Reprezentacja zasobów. OK. Operacje, które skutkują tym stanem HTTP, przenoszą reprezentację zasobów w ładunku.
201 POST Pusta odpowiedź. Utworzone. Ten stan wskazuje, że utworzono nowy zasób lub zamierzone zadanie, a skojarzony z nim adres URL jest dostępny z nagłówka lokalizacji w odpowiedzi.
202 POST Szczegóły w odpowiedzi. Akceptowane. Oznacza to, że żądanie API zostało zaakceptowane. Ładunek wskazuje, że adres URL wystąpienia zasobu śledzenia jest dostępny z nagłówka location w odpowiedzi.
204 UMIEŚĆ/USUŃ Pusta odpowiedź. Brak treści. Stan wskazuje, że wykonana operacja zakończyła się pomyślnie. Nie ma jednak żadnych dodatkowych szczegółów, które należy podać.
 
Kody odpowiedzi na błędy
Kod błędu Opis
400 Nieprawidłowe żądanie.
401 Nieprawidłowe poświadczenia.
403 Niewystarczające uprawnienia.
404 Nie znaleziono zasobu.
405 Metoda niedozwolona.
406 Podano nieprawidłowe ustawienia regionalne.
500 Internal Server Error.


Funkcje interfejsu API REST

Obsługiwane metody HTTP
Metoda HTTP Czynność Opis
POBIERZ Read Pobiera reprezentację zasobu.
POST Tworzenie Tworzy nowy zasób.
UMIEŚCIĆ Aktualizuj Aktualizuje istniejący zasób.
USUNĄĆ Remove Usuwa istniejący zasób.


Kilka przykładów:

GET

 

Wyświetl listę wszystkich klientów.                                            

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients

Tylko jeden klient, pokazujący tylko trzy pola (nazwa hosta, saveSets i protectionGroups)      

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?fl=hostname,saveSets,protectionGroups&q=hostname:nwserver121

Wyświetl listę grup ochrony, do których należy jeden klient.     

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?fl=protectionGroups&q=hostname:nwserver121

Pokaż bieżące alerty.                                     

https://[nw-server-hostname]:9090/nwrestapi/v3/global/alerts

Pokaż ostatnie zadania, które zakończyły się niepowodzeniem.                               

https://[nw-server-hostname]:9090/nwrestapi/v3/global/jobs?q=completionStatus:"Failed"&fl=clientHostname,startTime,name,message

Wyświetl listę przepływów pracy w jednej zasadzie (w tym przykładzie o nazwie WinFS ).                   

https://[nw-server-hostname]:9090/nwrestapi/v3/global/protectionpolicies/WinFS/workflows

Wyświetla listę właściwości tylko jednej instancji zestawu zapisu (zdefiniowanej przez nazwę hosta klienta i zestaw zapisu).      

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?q=hostname:vm-lego-231 and saveSets:"/etc"

POST:

Rozpocznij akcję przepływu pracy.                                 

https://[nw-server-hostname]:9090/nwrestapi/v3/global/protectionpolicies/Angela/workflows/WinFS/op/backup
                                                      JSON Body: 
                                                      {
                                                       }

Utwórz nową instancję klienta (z wartościami domyślnymi dla wszystkich właściwości z wyjątkiem czterech wymienionych).           

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients  
                                                     JSON Body 
                                                     {    
            "hostname": "vm-lego-231",
            "backupType": "Filesystem",
            "saveSets": [ "/etc" ],
            "protectionGroups" : [ "LinuxFS" ]
                                                          


Informacje wymagane do uzyskania pomocy technicznej


Środowisko:

  • Nazwa serwera NetWorker
  • Wersja i numer kompilacji NetWorker
  • Typ i wersja systemu operacyjnego hosta serwera NetWorker
Linux:
hostname
strings /usr/sbin/nsrd | grep -i "(#)"
cat /etc/*release
uname -a

Windows:

nsrwatch
Szczegóły problemu:
  • Wyjaśnij, która operacja interfejsu API REST jest wykonywana (GET, POST, PUT, DELETE), używany identyfikator URI, zawartość treści JSON (jeśli dotyczy). 
  • Kod odpowiedzi interfejsu API REST i wszelkie wyświetlone komunikaty o błędach.
  • Czy początkowe połączenie i autoryzacja między klientem interfejsu API REST a NetWorker zakończyły się pomyślnie?
Kolekcja dzienników:
  • Wyrenderowany plik dziennika daemon.raw z serwera NetWorker:
  • Dzienniki interfejsu API REST z serwera NetWorker:  /nsr/logs/restapi (Linux) lub EMC NetWorker\nsr\logs\restapi (Windows)
  • W przypadku problemów z uwierzytelnianiem zapoznaj się ze standardowym logowaniem uwierzytelniania NetWorker w /nsr/authc/logs (linux) lub .. \EMC NetWorker\nsr\authc-server\tomcat\logs (Windows)
Debugowania:
W przypadku bardziej złożonych problemów może być wymagane debugowanie interfejsu API REST. Debugowanie można włączyć w następujący sposób: NetWorker: Jak włączyć debugowanie interfejsu API REST

Wydajności
Jeśli problem jest związany z wydajnością RESTAPI, możesz użyć następujących opcji, aby śledzić zużycie zasobów przez proces nsrtomc+ używany przez wywołania interfejsu API.

Linux:  
top -b | awk '/nsrtomc+/ {print strftime("%Y-%m-%d-%H:%M:%S", systime()), $0}'

To wyjście pokazuje standardowe górne wyjście, ale ze znacznikami czasu czytelnymi dla człowieka. Może to służyć do przeglądania użycia procesora CPU i pamięci przez proces oraz tego, jak długo pozostawał w określonym stanie, gdy wykonano wywołanie REST. Można to porównać z dziennikami restapi.log i AUTHC, aby zobaczyć, które wywołania zostały wykonane i jak często.
 

Windows: W przypadku serwerów z systemem Windows należy zainstalować coś w rodzaju "Monitor wydajności:

1. Otwórz Monitor wydajności jako administrator.
2. W lewym okienku rozwiń Narzędzia monitorowania i wybierz Monitor wydajności.
3. Kliknij prawym przyciskiem myszy w prawym okienku i wybierz polecenie Usuń wszystkie liczniki.
4. Kliknij prawym przyciskiem myszy w prawym okienku i wybierz polecenie Dodaj liczniki.
5. W obszarze Dostępne liczniki rozwiń pozycję Pamięć, wybierz wartość % zatwierdzonych bajtów i kliknij przycisk Dodaj.
6. W obszarze Pamięć  wybierz opcję Dostępne bajty i kliknij przycisk Dodaj.
7. W obszarze Dostępne liczniki rozwiń pozycję Proces i wybierz opcję % czasu procesora, a następnie w obszarze Wystąpienia wybranego obiektu wybierz pierwszy wpis Java kliknij przycisk Dodaj.
8. W obszarze Dostępne liczniki rozwiń Informacje o procesorze i wybierz opcję % Narzędzie procesora, kliknij przycisk Dodaj.
9. Dodano liczniki w prawym okienku powinny zawierać:

image.png

10. Kliknij przycisk OK. Kliknij prawym przyciskiem myszy pozycję Monitor wydajności, a następnie kliknij opcję Nowy zestaw modułów> zbierających dane.
11. Podaj nazwę, np.: RESTAPI_MON.
12. Na ekranie lokalizacji kliknij przycisk Dalej,chyba  że zdecydujesz się określić alternatywną lokalizację wyjściową.
13. Wybierz opcję Zapisz i zamknij , a następnie kliknij przycisk Zakończ.
14. W lewym okienku w obszarze Zestawy modułów> zbierających dane — zdefiniowane przez użytkownika otwórz właściwości RESTAPI_MON i wybierz opcję Rozdzielane przecinkami jako format dziennika, kliknij przycisk OK.

image.png

15. W lewym okienku w obszarze Zestawy> modułów zbierających dane — zdefiniowane przez użytkownika wybierz zestaw RESTAPI_MON zbierania danych i kliknij przycisk Start (przycisk Odtwórz).
16. Jeśli użyto domyślnej lokalizacji wyjściowej, plik .csv jest wyświetlany w folderze C:\PerfLogs\Admin\RESTAPI_MON.
17. Po zaobserwowaniu problemu i zarejestrowaniu go w pliku wyjściowym można zatrzymać monitorowanie, klikając opcję Zatrzymaj w obszarze Zestawy modułów zbierających dane — zdefiniowane przez użytkownika.


Dalsze zasoby

Wszystkie obsługiwane punkty końcowe interfejsu API REST i przykłady użycia są dostępne w: Podręcznik referencyjny interfejsu NetWorker REST API

Affected Products

NetWorker Series

Products

NetWorker Series
Article Properties
Article Number: 000014298
Article Type: How To
Last Modified: 07 Feb 2024
Version:  6
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.