NetWorker: Запросы API REST завершаются сбоем с сообщением об ошибке: Состояние HTTP 404 — не найдено «Запрашиваемый ресурс недоступен»
Сводка: Запросы к интерфейсу прикладного программирования (API) NetWorker REST завершаются сбоем с сообщением об ошибке: Состояние HTTP 404 — не найдено «Запрошенный ресурс недоступен. Сервер-источник не нашел текущего представления целевого ресурса или не желает раскрывать его существование». ...
Симптомы
Сбой запросов NetWorker REST API с сообщением об ошибке: Состояние HTTP 404 — не найдено «Запрашиваемый ресурс недоступен»
[root@NETWORKER_SERVER]:~# curl -ik GET -u **userid**:'***Password***' -H "Content-Type: application/json" 'https://NETWORKER_SERVER:9090/nwrestapi/v3/global/clients'
curl: (6) Could not resolve host: GET; Name or service not known
HTTP/1.1 404
Content-Type: text/html;charset=utf-8
Content-Language: en
Content-Length: 790
Date: Tue, 04 Jul 2023 12:11:41 GMT
Server: NSR SERVICES for Authentication
<!doctype html><html lang="en"><head><title>HTTP Status 404 – Not Found</title><style type="text/css">body {font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b {color:white;background-color:#525D76;} h1 {font-size:22px;} h2 {font-size:16px;} h3 {font-size:14px;} p {font-size:12px;} a {color:black;} .line {height:1px;background-color:#525D76;border:none;}</style></head><body><h1>HTTP Status 404 – Not Found</h1><hr class="line" /><p><b>Type</b> Status Report</p><p><b>Message</b> The requested resource [/nwrestapi/v3/global/clients] is not available</p><p><b>Description</b> The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.</p><hr class="line" /><h3>Apache Tomcat/9.0.52</h
В установке сервера NetWorker отсутствует nwrestapi каталог.
/nsr/authc/webapps/nwrestapi/
Windows.
C:\Program Files\EMC NetWorker\nsr\authc-server\tomcat\webapps\nwrestapi
Teh restapi.log Не существует или не обновляется:
/nsr/logs/restapi/restapi.log
Windows.
C:\Program Files\EMC NetWorker\nsr\logs\restapi\restapi.log
Причина
В строке nwrestapi Путь не существует. Запросы REST API не могут найти конечные точки или сопоставить способ представления данных из других баз данных NetWorker.
Разрешение
nwrestapi настраивается вместе с authc сервис, использующий Java Runtime Environment (JRE). Рекомендуется использовать NetWorker Runtime Environment (NRE), чтобы избежать потенциальных проблем, связанных с Java, при настройке authc. Последние версии пакетов NRE доступны для скачивания со страницы Драйверы и загружаемые материалы службы поддержки Dell NetWorker .
Linux.
- Войдите на сервер NetWorker и переключитесь на пользователя root.
sudo su -
- Проверьте, установлен ли NRE и какой экземпляр Java настроен для использования NetWorker:
rpm -qa | grep nre cat /nsr/authc/conf/installrc [root@networker-mc]:~# rpm -qa | grep nre nre-8.0.15-1.x86_64 [root@networker-mc]:~# [root@networker-mc]:~# cat /nsr/authc/conf/installrc JAVA_HOME=/opt/nre/java/latest
- Выполните следующий сценарий, чтобы перенастроить NetWorker
authcСервера.
/opt/nsr/authc-server/scripts/authc_configure.sh [root@networker-mc]:~# /opt/nsr/authc-server/scripts/authc_configure.sh Specify the directory where the Java Standard Edition Runtime Environment (JRE) software is installed [/opt/nre/java/latest]: The installation process will install an Apache Tomcat instance. For optimum security, EMC NetWorker Authentication Service will use a non-root user (nsrtomcat) to start the Apache Tomcat instance. If your system has special user security requirements, ensure that proper operational permissions are granted to this non-root user (nsrtomcat). Please refer to NetWorker Installation Guide. WARNING: Port 9090 is already in use. Do you wish to specify a different port number [y]? n The Apache Tomcat will use "networker-mc.emclab.local" as the host name. The Apache Tomcat will use "9090" as the port number. The NetWorker Authentication Service requires a keystore file to configure encryption and to provide SSL support. EMC recommends that you specify a keystore password that has a minimum of six characters. Do you want to use the existing keystore /nsr/authc/conf/authc.keystore [y]? Specify password for the existing keystore: The install will use the existing certificate "emcauthctomcat" for Apache Tomcat. The install will use the existing certificate "emcauthcsaml" for Authentication Service. Creating the installation log in /opt/nsr/authc-server/logs/install.log. Performing initialization. Please wait... The installation completed successfully.
authc. Это можно сделать с помощью следующих действий: systemctl Команды:
systemctl stop networker and systemctl start networker
- Убедитесь, что создана следующая папка:
/nsr/authc/webapps/nwrestapi [root@networker-mc]:~# ls -l /nsr/authc/webapps/nwrestapi/ total 0 drwx------. 2 nsrtomcat nsrtomcat 44 Jul 6 12:22 META-INF drwx------. 3 nsrtomcat nsrtomcat 21 Jul 6 12:22 v1 drwx------. 3 nsrtomcat nsrtomcat 21 Jul 6 12:22 v2 drwx------. 3 nsrtomcat nsrtomcat 21 Jul 6 12:22 v3 drwx------. 6 nsrtomcat nsrtomcat 107 Jul 6 12:22 WEB-INF
- Если
nwrestapiбыл создан, выполните запросы REST API.
Windows.
- Проверьте, установлен ли NRE и какой экземпляр Java настроен для использования NetWorker:
Рисунок 1: Проверьте, какой экземпляр Java использует NetWorker. Переменная может выглядеть следующим образом: JAVA_HOME или NSR_JAVA_HOME.
- Удалите пакет NetWorker. При этом не удаляются базы данных NetWorker или ресурсы конфигурации.
- Переустановите NetWorker по существующему пути установки. Переустановка NetWorker перенастраивает службу проверки подлинности NetWorker.
- Убедитесь, что следующий путь существует:
C:\Program Files\EMC NetWorker\nsr\authc-server\tomcat\webapps\nwrestapi
Рис. 2. Убедитесь, что nwrestapi Путь существует.
- Если
nwrestapiбыл создан, выполните запросы REST API.