PowerStore: PowerStore Rest API'sini kullanma

概要: Bu makalede, pratik kullanım örnekleri ve yaygın hatalar dahil olmak üzere PowerStore REST API'sine bir giriş sağlanmaktadır.

この記事は次に適用されます: この記事は次には適用されません: この記事は、特定の製品に関連付けられていません。 すべての製品パージョンがこの記事に記載されているわけではありません。

手順

REST API'lerini test etmek için Postman, HTTPie ve cURL gibi çeşitli araçlar kullanılabilir. Bu makalede, çoğu işletim sisteminde varsayılan olarak hazır olduğundan tüm örnekler için cURL kullanılır.
 
Yaygın Rest API kullanımı:

 

Düğümün Durumu:
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

Çıktı örnekleri:

{"id":"00b941ceea9243f0a36e85abe9504214","name":"BaseEnclosure-NodeB","type":"Node","lifecycle_state":"Healthy"},
{"id":"2877d096fd2a4cc4b3b8af97f21c1c24","name":"BaseEnclosure-NodeA","type":"Node","lifecycle_state":"Healthy"}

 

Replication State:
curl -H "Kabul et: 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

Çıktı örnekleri:

{"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":"Kaynak","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"}

 

Sistem Uyarısı:
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

Çıktı örnekleri:

{"id":"008abb47-e72d-4608-b915-b8c01328b64e","event_code":"0x01700304","severity":"Binbaşı","resource_type":"remote_system","generated_timestamp":"2026-05-11T01:51:01.280627+00:00","state":"ACTIVE","description_l10n":"Uzak sistem Ghost'tan gelen tüm veri bağlantıları kesildi."},
{"id":"01114811-82a9-484e-8cf9-3da50c0e3d7b","event_code":"0x01701801","severity":"Bilgi","resource_type":"volume","generated_timestamp":"2026-07-14T02:15:34.764524+00:00","state":"CLEARED","description_l10n":"HyperV-Node1 kaynağı için yapılandırılmış metro witness is engaged."}

 

Denetim Olayları:
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

Çıktı çok büyük olabilir ve filtreye ihtiyaç duyabilir. Örneğin, admin kullanıcı ile ilgili olayları görüntülemek için. 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

Çıktı örnekleri:

{"id":"111540","type":"Config","timestamp":"2026-03-11T20:25:57.267124+00:00","username":"admin","resource_type":"host","resource_action":"delete","message_l10n":"Thors 183.24 (iSCSI) adlı ve 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":"Anahtarlarla meta veriler başarıyla silindi: [] türü: host ve ID: c698f28b-49ac-4268-a9c7-c6da66bdfbc8.","client_address":"10.158.49.47"}

 

Anlık Görüntü Listesi:
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

Çıktı örnekleri:
{"id":"24d7856d-d389-4f05-9752-ebb1de61a6d6","name":"Walid Snaps.PowerTriage-RHEL (Walid SİLMEYİN).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"," description":null,"creation_timestamp":"2026-07-14T00:08:08.618343+00:00"}

 

Performans Ölçütleri:
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 '.'

Çıktı örnekleri:


{ "appliance_id": "A1", "zaman damgası":
"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",
"varlık": "performance_metrics_by_appliance"
}

 

Rest API ile ilgili sık karşılaşılan hatalar:

Hatayı göstermek için curl komutunuza "-v" ekleme. 

Örnek 1: yanlış kimlik bilgisi.

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

* İstek tamamen gönderildi
* TLSv1.3 (IN), TLS el sıkışma, Newsession Ticket (4):
< HTTP/1.1 401 Unauthorized
< WWW-Authenticate: SSOCustom realm="Cyclone Realm"
< content-type: application/json
< content-length: 0

Örnek 2: httpd çalışmıyor.

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
* Trying xx.xx.xx.xx:443...
* xx.xx.xx.xx bağlantı noktası 59124'ten xx.xx bağlantı noktası 443'e bağlanma başarısız: Bağlantı zaman aşımına uğradı
* 31939 ms'den sonra xx.xx.xx.xx bağlantı noktası 443'e bağlanılamadı: Sunucuya
bağlanılamadı* Closing connection #0
curl: (28) 31939 ms'den sonra xx.xx.xx.xx bağlantı noktası 443'e bağlanılamadı: Sunucuya bağlanılamadı

Örnek 3: içerik türü olmadan yanlış sözdizimi.

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]' izin verilen türlerle eşleşmiyor. Şunlardan biri olmalıdır: [application/json]., Bir istek gövdesi gerekli ancak hiçbiri bulunamadı..","arguments":[{"delimiter":", ","messages":[{"severity":"Error","code":"validation.request.contentType.notAllowed","message_l10n":"Request Content-Type header '[application/x-www-form-urlencoded]' izin verilen türlerle eşleşmiyor. Şunlardan biri olmalıdır: [application/json].","arguments":["[application/x-www-form-urlencoded]","[application/json]"]},{"severity":"Error","code":"validation.request.body.missing","message_l10n":"Bir istek gövdesi gerekli ancak hiçbiri bulunamadı."}]}}]]}

 

Faydalı Bağlantılar:

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

https://< PWST_CLUSTER_IP>/swaggerui/

 

対象製品

PowerStore, PowerStoreOS
文書のプロパティ
文書番号: 000490125
文書の種類: How To
最終更新: 31 7月 2026
バージョン:  2
質問に対する他のDellユーザーからの回答を見つける
サポート サービス
お使いのデバイスがサポート サービスの対象かどうかを確認してください。