Посібник із сортування NetWorker REST API
Summary: У цій базі даних наведено огляд основних засобів виправлення неполадок, пов'язаних із RESTAPI.
Instructions
Переглянути на YouTube
Additional Information
Знайомство
Інтерфейс прикладного програмування (API) Representational State Transfer (REST) забезпечує програмний доступ до сервісу захисту даних NetWorker. Використовуючи REST API, користувачі NetWorker можуть створювати клієнтські додатки для автоматизації операцій NetWorker. NetWorker REST API встановлюється в рамках установки сервера NetWorker в тому ж контейнері tomcat Apache, що і служби аутентифікації NetWorker. Аутентифікація виконується за допомогою тих же облікових даних, що і для консолі управління NetWorker.
REST API дозволяє взаємодіяти з ресурсами, визначеними адресами Uniform Resource Identifier (URI). Він використовує HTTP-дієслова (HEAD, GET, PUT, POST, DELETE) для взаємодії з уніфікованим ідентифікатором ресурсу (URI) без стану (сервер не містить стану клієнта, кожне повідомлення є самоописним).
У цьому документі розглядається взаємодія з ресурсами NetWorker за допомогою написаних користувачем викликів REST API. Не плутати з викликами REST API, які використовуються внутрішніми операціями NetWorker.
Підключення до NetWorker:
Існує кілька різних клієнтських технологій REST API, які можна використовувати для виконання команд для підключення до NetWorker; включаючи, curl команди (Linux), PowerShell Invoke-WebRequest (Windows) і клієнтські розширення браузера REST API.Для підключення потрібні три роз'єми:
- Тип вмісту: application/json
- Прийняти: application/json
- Авторизація: Базовий з ім'ям користувача та паролем у кодуванні Base 64
У середовищах, де є кілька зон даних NetWorker, що автентифікуються через один сервер AUTHC NetWorker, потрібен додатковий заголовок:
- X-NW-AUTHC-BASE-URL:AUTHC_HOSTNAME_OR_IP:AUTHC_PORT
NetWorker REST API доступний у наступному базовому URI:
https://[nw-server-hostname]:9090/nwrestapi/Існують різні версії API. Удосконалення були розгорнуті з моменту початкового впровадження REST API. Наприклад:
https://[nw-server-hostname]:9090/nwrestapi/v1 https://[nw-server-hostname]:9090/nwrestapi/v2 https://[nw-server-hostname]:9090/nwrestapi/v3
Повна схема json доступна за адресою
https://[nw-server-hostname]:9090/nwrestapi/v3/schemas/swagger.json
| Код успіху | Застосовується до методу HTTP | Відповідь Зміст тіла | Опис |
| 200 | ОТРИМАТИ | Представлення ресурсів. | ГАРАЗД. Операції, які призводять до цього стану HTTP, несуть представлення ресурсів у наборі корисних даних. |
| 201 | ПОСТ | Порожня відповідь. | Створений. Цей статус вказує на те, що створено новий ресурс або заплановане завдання, а пов'язана з ним URL-адреса доступна із заголовка адреси у відповіді. |
| 202 | ПОСТ | Подробиці у відповідь. | Прийнято. Це вказує на те, що запит API прийнято. Набір корисних даних вказує на те, що URL-адреса екземпляра ресурсу відстеження доступна із заголовка адреси у відповіді. |
| 204 | ПОСТАВИТИ/ВИДАЛИТИ | Порожня відповідь. | Немає вмісту. Стан свідчить про те, що проведена операція пройшла успішно. При цьому жодних додаткових подробиць не надано. |
| Код помилки | Опис |
| 400 | Поганий запит. |
| 401 | Недійсні облікові дані. |
| 403 | Недостатня кількість привілеїв. |
| 404 | Ресурс не знайдено. |
| 405 | Спосіб не допускається. |
| 406 | Вказано неприпустиму локаль. |
| 500 | Внутрішня помилка сервера. |
Функції REST API
| Метод HTTP | Дія | Опис |
| ОТРИМАТИ | Читати | Отримує представлення ресурсу. |
| ПОСТ | Творити | Створює новий ресурс. |
| КЛАСТИ | Оновлювати | Оновлює існуючий ресурс. |
| ВИДАЛИТИ | Видалити | Видаляє наявний ресурс. |
Деякі приклади:
GET
Перерахуйте всіх клієнтів.
https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients
Лише один клієнт, який показує лише три поля (ім'я хоста, saveSets і protectionGroups)
https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?fl=hostname,saveSets,protectionGroups&q=hostname:nwserver121
Перелічіть групи захисту, в яких знаходиться один клієнт.
https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?fl=protectionGroups&q=hostname:nwserver121
Показувати поточні оповіщення.
https://[nw-server-hostname]:9090/nwrestapi/v3/global/alerts
Покажіть нещодавні невдалі вакансії.
https://[nw-server-hostname]:9090/nwrestapi/v3/global/jobs?q=completionStatus:"Failed"&fl=clientHostname,startTime,name,message
Перелічіть робочі процеси в одній політиці (у цьому прикладі вона називається WinFS ).
https://[nw-server-hostname]:9090/nwrestapi/v3/global/protectionpolicies/WinFS/workflows
Вивести список властивостей лише одного екземпляра saveset (як визначено ім'ям хоста клієнта та набором збережень).
https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?q=hostname:vm-lego-231 and saveSets:"/etc"
ПОСТ:
Запустіть дію робочого процесу.
https://[nw-server-hostname]:9090/nwrestapi/v3/global/protectionpolicies/Angela/workflows/WinFS/op/backup
JSON Body:
{
}
Створіть новий екземпляр клієнта (зі значеннями за замовчуванням для всіх властивостей, крім чотирьох перелічених).
https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients
JSON Body
{
"hostname": "vm-lego-231",
"backupType": "Filesystem",
"saveSets": [ "/etc" ],
"protectionGroups" : [ "LinuxFS" ]
Необхідна інформація для підтримки
Середовище:
- Ім'я сервера NetWorker
- Версія та номер збірки NetWorker
- Тип і версія операційної системи серверного хоста NetWorker
hostname
strings /usr/sbin/nsrd | grep -i "(#)"
cat /etc/*release
uname -a
Вікна:
nsrwatch
- Поясніть, яка операція REST API виконується (GET, POST, PUT, DELETE), використаний URI, будь-який вміст тіла JSON (де застосовно).
- Код відповіді REST API та будь-яке надане повідомлення про помилку.
- Чи вдалося початкове з'єднання та авторизація між клієнтом REST API та NetWorker?
- Відрендерено daemon.raw файл журналу з сервера NetWorker:
- Linux: /nsr/logs/daemon.raw
- Вікна: C:\Program Files\EMC NetWorker\nsr\logs\daemon.raw
- NetWorker: Спосіб застосування nsr_render_log
- Логи REST API з сервера NetWorker: /nsr/logs/restapi (linux) або EMC NetWorker\nsr\logs\restapi (Windows)
- Для проблем з автентифікацією дивіться стандартне входження в систему автентифікації NetWorker в /nsr/authc/logs (linux) або .. \EMC NetWorker\nsr\authc-server\tomcat\logs (Windows)
Продуктивність
Якщо проблема пов'язана з продуктивністю RESTAPI, ви можете скористатися наведеними нижче параметрами, щоб відстежувати споживання ресурсів процесом nsrtomc+, який використовується для викликів API.
Linux:
top -b | awk '/nsrtomc+/ {print strftime("%Y-%m-%d-%H:%M:%S", systime()), $0}'
Цей вихід показує стандартний верхній результат, але з зручними для читання часовими позначками. Цим можна скористатися для перегляду споживання процесора та пам'яті процесом, а також того, як довго він залишався у певному стані на момент здійснення виклику REST. Це можна порівняти з журналами restapi.log та AUTHC, щоб побачити, які дзвінки здійснювалися та як часто.
Вікна: Для серверів Windows необхідно встановити щось на кшталт «Монітор продуктивності:
1. Відкрийте Монітор продуктивності від імені адміністратора.
2. На лівій панелі розгорніть «Інструменти моніторингу» та виберіть «Монітор продуктивності».
3. Клацніть правою кнопкою миші на правій панелі та виберіть Видалити всі лічильники.
4. Клацніть правою кнопкою миші на правій панелі та виберіть Додати лічильники.
5. У розділі Доступні лічильники розгорніть Пам'ять, виберіть % Фіксувати байти та натисніть Додати.6
. У розділі «Пам'ять» виберіть «Доступні байти» та натисніть «Додати».
7. У розділі «Доступні лічильники» розгорніть «Процес» і виберіть % процесорного часу, а в розділі «Екземпляри вибраного об'єкта» виберіть перший запис Java, натисніть кнопку «Додати».
8. У розділі Доступні лічильники розгорніть розділ Інформація про процесор і виберіть % Утиліта процесора, натисніть кнопку Додати.
9. У полі Додані лічильники на правій панелі має відображатися:

10. Натисніть кнопку «OK». Клацніть правою кнопкою миші Монітор продуктивності та виберіть пункт Набір збирачів нових> даних.
11. Укажіть назву, наприклад: RESTAPI_MON.
12. На екрані розташування натисніть кнопку Далі, якщо не вказано альтернативне розташування виведення.
13. Виберіть «Зберегти та закрити» та натисніть «Готово».
14. На панелі ліворуч у розділі Набори даних-Визначені> користувачем Набори даних відкрийте RESTAPI_MON властивостей і виберіть Розділені комами для формату журналу, натисніть кнопку Ok.

15. На панелі ліворуч у розділі Набори збирачів даних –> Визначено користувачем виберіть набір збирачів даних RESTAPI_MON і натисніть кнопку Пуск (кнопка Відтворити).
16. Якщо було використано вихідне розташування за замовчуванням, файл .csv з'явиться в розділі C:\PerfLogs\Admin\RESTAPI_MON.
17. Після того, як проблему буде помічено та записано у вихідному файлі, ви можете зупинити моніторинг, клацнувши «Зупинити» в розділі «Набори даних-визначені користувачем».
Додаткові ресурси
Усі підтримувані кінцеві точки REST API та приклади використання наведено в: Довідковий посібник NetWorker REST API