PowerScale. Как использовать команду curl для проверки правильности работы API OneFS
Summary: Эта статья базы знаний полезна для поиска и устранения неисправностей интерфейса прикладного программирования (API) непосредственно в кластере с помощью команд curl. Используйте его, чтобы исключить проблемы с пользовательскими сценариями или кодом приложения. ...
Instructions
Введение
При возникновении проблемы с OneFS API убедитесь, что основные операции выполняются правильно, выполнив команду curl , прежде чем выполнять другие действия по устранению неполадок. В этой статье приведены инструкции по использованию команды curl для тестирования операций API. Это помогает убедиться в том, что выполняемая команда имеет правильный формат.
API OneFS состоит из двух функциональных областей:
- API конфигурации системы (в OneFS 7.1.0 и более ранних версиях называется Platform API)
- API доступа к файловой системе (в OneFS 7.1.0 и более ранних версиях он назывался RESTful Access to the namespace API или RAN API)
Последовательность действий
Используйте команду curl с учетными данными «root» при тестировании API конфигурации системы или API доступа к файловой системе.
- Установитесоединение SSH на любом узле в кластере и войдите в систему с помощью учетной записи root.
- Используйте команду curl , как описано в разделах API конфигурации системы или API доступа к файловой системе ниже.
- Если проблемы сохраняются, обратитесь в службу технической поддержки Isilon.
Дополнительную информацию о командах curl и синтаксисе см. на странице справочника по curl .
Дополнительные сведения о запросах API конфигурации системы OneFS и ожидаемом отклике см. в справочном руководстве API для соответствующей версии OneFS. Ссылки на самые распространенные версии OneFS: API конфигурации системы OneFS 8.2.2.0 , OneFS 9.1.0, OneFS 9.5.0.0 и OneFS 9.7.0.0
Общие параметры curl с API конфигурации системы
| Параметр | Описание |
|---|---|
| -d | Отправляет указанные данные в POST-запросе |
| -H | Указывает дополнительный заголовок для использования |
| -к | Разрешает подключение к недоверенным сайтам SSL (для самозаверяющих сертификатов SSL Isilon по умолчанию) |
| -u | Имя пользователя для аутентификации При выполнении команды вам будет предложено ввести пароль для этого пользователя |
| -v | Указывает подробный вывод |
| -Х | Указывает метод запроса (GET,PUT,POST и т. д.) |
Общее использование curl с API конфигурации системы
Ниже приведены примеры распространенных команд curl . Следуйте аналогичному синтаксису для действия, которое необходимо выполнить.
- Получение информации (команды GET):
Общий синтаксис: Используйте следующие значения, где <username> — это имя пользователя, а <URL> — это URL-адрес узла, к которому вы подключаетесь.# curl -vk -u "<username>" -H 'Content-type:application/json' -X GET '<URL>'
Например, чтобы получить список общих ресурсов SMB (Server Message Block), команда выглядит следующим образом:# curl -vk -u "root" -H 'Content-type:application/json' -X GET 'https://10.11.1.1:8080/platform/1/protocols/smb/shares'
- Отправка информации (команды POST или PUT):
Общий синтаксис: Используйте следующее, где <username> — это имя пользователя, <json-data> — строка в формате JSON, а <URL> — это URL-адрес узла, к которому вы подключаетесь.# curl -vk -u <username> -H 'Content-type:application/json' -X POST -d '<json-data>' <URL>
Например, для создания нового общего ресурса SMB с именем papi-example и путем /ifs/papi-example команда выглядит следующим образом:# curl -vk -u root -H "Content-type: application/json" -X POST -d '{ "name" : "papi-example", "path" : "/ifs/papi-example" }' 'https://10.11.1.1:8080/platform/1/protocols/smb/shares'
API-интерфейс доступа к файловой системе
Общие параметры curl с API доступа к файловой системе
| Параметр | Описание |
|---|---|
| -d | Отправляет указанные данные в POST-запросе |
| --двоичный-файл данных | Указывает местоположение двоичного файла |
| -H | Указывает дополнительный заголовок для использования |
| -к | Разрешает подключение к ненадежным сайтам SSL (самозаверяющие сертификаты SSL Isilon по умолчанию). |
| -u | Имя пользователя для аутентификации, вам будет предложено ввести пароль для этого пользователя. |
| -v | Указывает подробный вывод |
| -Х | Указывает метод запроса (GET,PUT,POST и т. д.) |
Обычное использование curl с API доступа к файловой системе
Ниже приведены примеры распространенных команд curl . Следуйте аналогичному синтаксису для выполнения действия.
ЗАМЕТКА
Собственные пространства имен можно создавать с помощью API доступа к файловой системе, но для проверки следует использовать пространство имен по умолчанию. Пространство имен по умолчанию — /namespace/ifs.
- Получение информации (команды GET):
Общий синтаксис:# curl -vk -u "<username>" -X GET 'https://<node_IP>:8080/namespace/<access_point>'
Например, чтобы получить список содержимого /ifs:# curl -vk -u "root" -X GET 'https://10.11.1.1:8080/namespace/ifs'
- Отправка информации (команды POST или PUT):
Общий синтаксис: Используйте следующие данные, используя правильный заголовок> содержимого переменной<. Дополнительные сведения о заголовке<> содержимого см. в справочном руководстве по API OneFS# curl -vk -u "<username>" -H "<content header>" --data-binary @<source file path> -X PUT 'https://<node_IP>:8080/namespace/<access_point>/<destination file path>'
Например, чтобы скопировать файл данных из /tmp/testfile.jpg в /ifs/papi-example, команда выглядит следующим образом:
# curl -vk -u "root" -H "x-isi-ifs-target-type:object" --data-binary @/tmp/testfile.jpg -X PUT 'https://<node_IP>:8080/namespace/ifs/papi-example/testfile.jpg'
Все вышеуказанные команды используют базовую аутентификацию HTTP для выполнения запросов API.