Guia de triagem da API REST do NetWorker

Summary: Este artigo da KB apresenta uma visão geral da solução de problemas básicos para problemas relacionados à API REST.

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

Guia de triagem da API REST do NetWorker

Assista no YouTube

Additional Information

Primeiros passos


A interface de programação de aplicativos (API) da transferência de estado representacional (REST) fornece acesso programático ao serviço de proteção de dados do NetWorker. Usando a API REST, os usuários do NetWorker podem criar aplicativos client para automatizar as operações do NetWorker. A API REST do NetWorker é instalada como parte da instalação do servidor NetWorker no mesmo contêiner Tomcat Apache que os NetWorker Authentication Services. A autenticação é feita usando as mesmas credenciais usadas para o NetWorker Management Console.  

A API REST permite a interação com recursos identificados por endereços URI (Uniform Resource Identifier). Ele usa verbos HTTP (HEAD, GET, PUT, POST, DELETE) para interagir com o URI (Uniform Resource Identifier) de forma sem monitoramento de estado (o servidor não contém nenhum estado de cliente, sendo cada mensagem autodescritiva).

Este documento trata da interação com recursos do NetWorker usando chamadas API REST gravadas pelo usuário. Não deve ser confundido com as chamadas API REST que são usadas pelas operações de back-end do NetWorker.
 

Conectando-se ao NetWorker:

Há várias tecnologias diferentes de client da API REST que podem ser usadas para executar os comandos para se conectar ao NetWorker; incluindo, comandos curl (Linux), PowerShell Invoke-WebRequest (Windows) e extensões de navegador do cliente API REST. 

Há três cabeçalhos necessários para a conexão:   
  • Content-Type: application/json
  • Aceitar: application/json
  • Autorização: Básico com nome de usuário e senha codificados em Base 64

Em ambientes em que há várias zonas de dados do NetWorker autenticadas por meio de um único servidor NetWorker AUTHC, um cabeçalho adicional é necessário:

  • X-NW-AUTHC-BASE-URL:AUTHC_HOSTNAME_OR_IP:AUTHC_PORT
A porta AUTHC padrão é a porta 9090. O uso desse cabeçalho é detalhado em: API REST: Como usar um servidor AUTHC remoto ao processar solicitações RESTAPI?

A API REST do NetWorker é exposta no seguinte URI de base:

https://[nw-server-hostname]:9090/nwrestapi/
Existem diferentes versões de APIs. Os aprimoramentos foram implementados desde que a API REST foi inicialmente implementada. Por exemplo:
https://[nw-server-hostname]:9090/nwrestapi/v1
https://[nw-server-hostname]:9090/nwrestapi/v2
https://[nw-server-hostname]:9090/nwrestapi/v3
As alterações nesses endpoints são detalhadas em: https://developer.dell.com/apis/2378/versions/v3/docs/GettingStarted.md

O esquema json completo está disponível em

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

Códigos de resposta da API REST:
 
Códigos de resposta de sucesso
Código de sucesso Aplica-se ao método HTTP Conteúdo do corpo da resposta Descrição
200 OBTER Representação de recursos. OK. As operações que resultam nesse estado HTTP carregam a representação de recursos no payload.
201 POSTAR Resposta vazia. Criado. Esse status indica que um novo recurso ou um trabalho pretendido foi criado e sua URL associada pode ser acessada a partir do cabeçalho do local na resposta.
202 POSTAR Detalhes em resposta. Aceito. Isso indica que a solicitação da API foi aceita. A carga indica que a URL para a instância do recurso de rastreamento pode ser acessada a partir do cabeçalho do local na resposta.
204 COLOCAR/EXCLUIR Resposta vazia. Sem conteúdo. O estado indica que a operação executada foi bem-sucedida. No entanto, não há detalhes adicionais a serem fornecidos.
 
Códigos de resposta de erro
Código de erro Descrição
400 Pedido inválido.
401 Credenciais inválidas.
403 Privilégios insuficientes.
404 Recurso não encontrado.
405 Método não permitido.
406 Localidade inválida especificada.
500 Erro interno do servidor.


Funções da API REST

Métodos HTTP compatíveis
Método HTTP Ação Descrição
OBTER Read Obtém a representação de recursos.
POSTAR Create Cria um novo recurso.
COLOCAR Atualização Atualiza um recurso existente.
EXCLUIR Remover Exclui um recurso existente.


Alguns exemplos:

GET

 

Listar todos os clients.                                            

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

Apenas um client, mostrando apenas três campos (nome do host, saveSets e protectionGroups)      

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

Liste os grupos de proteção nos quais um client está.     

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

Mostrar alertas atuais.                                     

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

Mostrar trabalhos com falha recentes.                               

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

Liste os fluxos de trabalho em uma política (chamada WinFS neste exemplo).                   

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

Liste as propriedades somente de uma instância de saveset (conforme definido pelo nome de host do client e pelo saveset).      

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

POSTAR:

Inicie uma ação de fluxo de trabalho.                                 

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

Crie uma nova instância de client (com valores padrão para todas as propriedades, exceto as quatro listadas).           

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


Informações necessárias para suporte


Ambiente:

  • Nome do servidor do NetWorker
  • Número da versão e do build do NetWorker
  • Tipo e versão do sistema operacional do host do servidor do NetWorker
Linux:
hostname
strings /usr/sbin/nsrd | grep -i "(#)"
cat /etc/*release
uname -a

Windows:

nsrwatch
Detalhes do problema:
  • Explique qual operação da API REST está sendo executada (GET, POST, PUT, DELETE), o URI usado, o conteúdo do corpo JSON (quando aplicável). 
  • Código de resposta da API REST e qualquer mensagem de erro fornecida.
  • A conexão e a autorização iniciais foram bem-sucedidas entre o client da API REST e o NetWorker?
Coleta de logs:
  • Processado daemon.raw arquivo de log do servidor do NetWorker:
  • Logs da API REST do servidor do NetWorker:  /nsr/logs/restapi (Linux) ou EMC NetWorker\nsr\logs\restapi (Windows)
  • Para problemas de autenticação, consulte a autenticação padrão do NetWorker fazendo log-in em /nsr/authc/logs (linux) ou .. \EMC NetWorker\nsr\authc-server\tomcat\logs (Windows)
Depurar:
Em problemas mais complexos, a depuração da API REST pode ser necessária. A depuração pode ser ativada da seguinte forma: NetWorker: Como habilitar a depuração da API REST

Desempenho
Se o problema estiver relacionado ao desempenho da API REST, você poderá usar as seguintes opções para controlar o consumo de recursos do processo nsrtomc+ usado pelas chamadas de API.

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

Esse resultado mostra a saída superior padrão, mas com registros de data e hora legíveis. Isso pode ser usado para analisar o consumo de CPU e memória pelo processo e por quanto tempo ele permaneceu em um determinado estado quando uma chamada REST foi feita. Isso pode ser comparado com os registros restapi.log e AUTHC para ver quais chamadas foram feitas e com que frequência.
 

Windows: Para servidores Windows, você deve instalar algo como "Monitor de desempenho:

1. Abra o Monitor de desempenho como administrador.
2. No painel esquerdo, expanda Ferramentas de Monitoramento e selecione Monitor de Desempenho.
3. Clique com o botão direito do mouse no painel direito e selecione Remover todos os contadores.
4. Clique com o botão direito do mouse no painel direito e selecione Add Counters.
5. Em Contadores disponíveis, expanda Memória, selecione % Confirmar bytes e clique em Adicionar.6
. Em Memory,  selecione Available Bytes e clique em Add.
7. Em Contadores disponíveis, expanda Processo e selecione % Tempo do processador e, em Instâncias do objeto selecionado, selecione a primeira entrada Java e clique em Adicionar.
8. Em Contadores disponíveis, expanda Informações do processador e selecione % Utilitário do processador, clique em Adicionar.
9. Os contadores adicionados no painel direito devem mostrar:

image.png

10. Clique em OK. Clique com o botão direito do mouse em Monitor de Desempenho e clique em Novo Conjunto de Coletores de> Dados.
11. Forneça um nome, por exemplo: RESTAPI_MON.
12. Na tela de localização, clique em Next,  a menos que você opte por especificar um local de saída alternativo.
13. Selecione Salvar e fechar e clique em Concluir.
14. No painel esquerdo, em Conjuntos de Coletores de Dados -> Definido pelo usuário, abra as propriedades RESTAPI_MON e selecione Separados por vírgula para o formato de registro, clique em OK.

image.png

15. No painel esquerdo, em Conjuntos de Coletores de Dados -> Definidos pelo Usuário, selecione o conjunto de coletores de dados RESTAPI_MON e clique em Iniciar (botão Reproduzir).
16. Se o local de saída padrão foi usado, o arquivo .csv aparecerá em C:\PerfLogs\Admin\RESTAPI_MON.
17. Depois que o problema for observado e registrado no arquivo de saída, você poderá interromper o monitoramento clicando em Stop em Data Collector Sets-User Defined.


Mais recursos

Todos os endpoints e exemplos de uso da API REST compatíveis são fornecidos em: Guia de referência da API REST do NetWorker

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.