PowerStore: PowerStore Rest API'sini kullanma

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

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'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/

 

Produits concernés

PowerStore, PowerStoreOS
Propriétés de l’article
Numéro d’article: 000490125
Type d’article: How To
Dernière modification: 16 juil. 2026
Version:  1
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.