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 사용자에게 질문에 대한 답변 찾기
지원 서비스
디바이스에 지원 서비스가 적용되는지 확인하십시오.