PowerStore:PowerStore Rest APIの使用方法

Résumé: この記事では、実用的な使用例や一般的なエラーなど、PowerStore REST APIの概要について説明します。

Cet article concerne Cet article ne concerne pas Cet article n’est associé à aucun produit spécifique. Toutes les versions du produit ne sont pas identifiées dans cet article.

Instructions

REST APIのテストには、Postman、HTTPie、cURLなど、いくつかのツールを使用できます。この記事では、cURL が既定でほとんどのオペレーティング システムですぐに使用できるため、すべての例で cURL を使用します。
 
Rest APIの一般的な使用方法:

 

ノードの正常性:
curl -H "Accept: application/json" -u "admin:********" -X GET -k https://xx.xx.xx.xx/api/rest/hardware?select=id,name,type,lifecycle_state?type=eq.Node

出力例:

{"id":"00b941ceea9243f0a36e85abe9504214","name":"BaseEnclosure-NodeB","type":"ノード","lifecycle_state":"正常"},
{"id":"2877d096fd2a4cc4b3b8af97f21c1c24","name":"BaseEnclosure-NodeA","type":"ノード","lifecycle_state":"正常"}

 

レプリケーション状態:
curl -H "Accept: application/json" -u "admin:********" -X GET -k https://xx.xx.xx.xx/api/rest/replication_session?select=id,role,state,last_sync_timestamp,local_resource_id

出力例:

{"id": "047e38ee-9aeb-4761-8ca5-393204fe6584",", "role":"Metro_Preferred","state":"OK","last_sync_timestamp":"2026-07-16T15:48:05.628263 + 00:00","local_resource_id":"d34bd80e-1d43-4692-ab37-e307bc92eb73"},
{"id":"26dd4105-a24f-4d82-b40b-20dcefbfe5df","role":"ソース","state":"OK","last_sync_timestamp":"2026-07-16T15:31:54.64127 + 00:00","local_resource_id":"82c40277-dee4-46de-8559-920fe5f942cc"},
{"id": "414dba20-08b1-4d5e-a521-517a3b37473a","role":"Metro_Preferred","state":"OK","last_sync_timestamp":"2026-07-16T15:51:05.525764+00:00","local_resource_id":"eb970724-cc3e-4661-8d71-bec7f44baf10"}

 

システム アラート:
curl -H "Accept: application/json" -u "admin:********" -X GET -k https://xx.xx.xx.xx/api/rest/alert?select=id,event_code,severity,resource_type,generated_timestamp,state,description_l10n

出力例:

{"id": "008abb47-e72d-4608-b915-b8c01328b64e",","008abb47-e72d-4608-b915-b8c01328b64e","event_code":"0x01700304","severity":"Major","resource_type":"remote_system","generated_timestamp":"2026-05-11T01:51:01.280627+00:00","state":"ACTIVE","description_l10n":"リモート システムのゴーストからのすべてのデータ接続が切断されています。"},
{"id":"01114811-82a9-484e-8cf9-3da50c0e3d7b","event_code":"0x01701801","severity":"情報","resource_type":"volume","generated_timestamp":"2026-07-14T02:15:34.764524+00:00","state":"クリア","description_l10n":"リソースHyperV-Node1用に構成されたMetro Witnessが作動しています。"}

 

監査イベント:
curl -H "Accept: application/json" -u "admin:********" -X GET -k https://xx.xx.xx.xx/api/rest/audit_event?select=id,type,timestamp,username,resource_type,resource_action,message_l10n,client_address

出力は膨大になる可能性があり、フィルターが必要です。たとえば、ユーザー管理者に関連するイベントを表示します。try:
curl -H "Accept: application/json" -u "admin:********" -X GET -k https://xx.xx.xx.xx/api/rest/audit_event?select=id,type,timestamp,username,resource_type,resource_action,message_l10n,client_address?username=eq.admin

出力例:

{"id":"111540","type":"構成","timestamp":"2026-03-11T20:25:57.267124+00:00","username":"admin","resource_type":"host","resource_action":"delete","message_l10n":"名前:Thors 183.24 (iSCSI)およびID: c698f28b-49ac-4268-a9c7-c6da66bdfbc8のホストが正常に削除されました。","client_address":"10.158.49.47"},
{"id":"111541","type":"Config","timestamp":"2026-03-11T20:25:57.337655+00:00","username":"admin","resource_type":"host","resource_action":"delete","message_l10n":"タイプがホストで、IDがc698f28b-49ac-4268-a9c7-c6da66bdfbc8のリソースに関連付けられているキー[]のメタデータが正常に削除されました。","client_address":"10.158.49.47"}

 

スナップショット リスト:
curl -H "Accept: application/json" -u "admin:********" -X GET -k https://xx.xx.xx.xx/api/rest/volume_snap_list_cma_view?select=id,name,source_timestamp,description,creation_timestamp

出力例:
{"id":"24d7856d-d389-4f05-9752-ebb1de61a6d6","name":"Walid Snaps.PowerTriage-RHEL (Walid DO NOT DELETE).2026-07-15T00:00:00Z 189403910","source_timestamp":"2026-07-15T00:03:16.096762+00:00","description":"","creation_timestamp":"2026-07-15T00:03:16.096762+00:00"},
{"id":"2cfd727f-b09c-4895-8fd5-93850fd63698","name":"Daily-File.7DSL0M2-1-001.2026-07-14T00:08:08Z 281536767","source_timestamp":"2026-07-14T00:08:08.618343+00:00","説明":null,"creation_timestamp":"2026-07-14T00:08:08.618343 + 00:00"}

 

パフォーマンス メトリック:
curl -H "Accept: application/json" -H "Content-Type: application/json" -u "admin:********" -X POST -k https://xx.xx.xx.xx/api/rest/metrics/generate -d '{ "entity": "performance_metrics_by_appliance", "entity_id": "A1","interval": "One_Day" }'|jq '.'

出力例:

{
"appliance_id": "A1"、
"timestamp": "2026-07-15T00: 00:00Z"、
"avg_read_latency": 172.76094、
"avg_write_latency": 404.14536、
"avg_mirror_write_latency": 924.59375、
"avg_mirror_overhead_latency": 364.82297、
"avg_latency": 273.2135、
"avg_read_size": 91601.2、
"avg_write_size": 6204.5635、
"avg_io_size": 54527.355、
"avg_read_iops": 9.996701、
"avg_write_iops": 7.669595、
"avg_mirror_write_iops": 0.024386574、
"avg_total_iops": 17.666296、
"avg_read_bandwidth": 915709.9、
"avg_write_bandwidth": 47586.49、
"avg_mirror_write_bandwidth": 190.67259、
"avg_total_bandwidth": 963296.4、
"avg_io_workload_cpu_utilization": 0.00399437453597784、
"max_avg_read_latency": 401.14688、
"max_avg_write_latency": 1679.9584、
"max_avg_latency": 652.1067、
"max_avg_mirror_write_latency": 3842,
"max_avg_mirror_overhead_latency": 3319,
"max_avg_read_size": 99656.45、
"max_avg_write_size": 30189.037、
"max_avg_io_size": 85726.97、
"max_read_iops": 161.2,
"max_write_iops": 680.6、
"max_mirror_write_iops": 3.8
"max_total_iops": 834,
"max_read_bandwidth": 8509440,
"max_write_bandwidth": 8792986,
"max_mirror_write_bandwidth": 22732.8、
"max_total_bandwidth": 17252044、
"max_io_workload_cpu_utilization": 0.2170485556125641、
"repeat_count": 1,

  ...

  "response_definition": "performance_metrics_by_appliance_rollup",
"entity": "performance_metrics_by_appliance"
}

 

Rest APIの一般的なエラー:

curlコマンドに「-v」を追加してエラーを表示します。 

例1:認証情報が間違っている。

curl -H "Accept: application/json" -u "admin:wrong_password" -k https://10.241.219.160/api/rest/hardware?select=id,name,type,lifecycle_state?type=eq.Node

*リクエストが完全に送信されました
* TLSv1.3(IN)、TLSハンドシェイク、Newsessionチケット(4):
< HTTP/1.1 401 Unauthorized
< WWW-Authenticate: SSOCustom realm="Cyclone Realm"
< content-type: application/json
< content-length: 0

例 2: httpd が実行されていない。

curl -v -H "Accept: application/json" -u "admin:********" -k https://xx.xx.xx.xx/api/rest/hardware?select=id,name,type,lifecycle_state?type=eq.Node
* xx.xx.xx.xx:443 を試しています...
* xx.xx.xx.xx ポート 59124 から xx.xx.xx.xx ポート 443 への接続に失敗しました: 接続がタイムアウトしました
* 31939 ms後に xx.xx.xx.xx ポート 443 への接続に失敗しました: サーバー
* に接続できませんでした 接続を閉じています #0
curl: (28) 31939 ミリ秒後に xx.xx.xx.xx ポート 443 に接続できませんでした: サーバーに接続できませんでした

例 3: コンテンツ タイプのない間違った構文。

curl -v -H "Accept: application/json" -u "admin:********" -X POST -k https://xx.xx.xx.xx/api/rest/metrics/generate -d '{ "entity": "performance_metrics_by_appliance", "entity_id": "A1","interval": "One_Day" }'
{"messages":[{"severity":"Error","code":"0xE04040030001","message_l10n":"Validation failed: Request Content-Type header '[application/x-www-form-urlencoded]' does not match any allowed types.次のいずれかである必要があります: [application/json]., 要求本文は必須ですが、見つかりません..","arguments":[{"delimiter":", ","messages":[{"severity":"Error","code":"validation.request.contentType.notAllowed","message_l10n":"Request Content-Type header '[application/x-www-form-urlencoded]' does not match any allowed types.[application/json].","arguments":["[application/x-www-form-urlencoded]","[application/json]"]},{"severity":"Error","code":"validation.request.body.missing","message_l10n":"A request body is required but none found."}]}]}

 

便利なリンク:

https://dl.dell.com/content/manual55475248-dell-powerstore-rest-api-developers-guide.pdf?language=en-us

https://<PWST_CLUSTER_IP>/swaggerui/

 

Produits concernés

PowerStore, PowerStoreOS
Propriétés de l’article
Numéro d’article: 000490125
Type d’article: How To
Dernière modification: 31 juil. 2026
Version:  2
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.