PowerFlex:无法针对 PowerFlex IM 网关运行 REST API 调用
Summary: 当您尝试从 IM 测试 REST API 或尝试针对其 IP 地址使用 REST API 工具(例如“curl”)时,IM 网关返回 HTTP 错误 428。
Symptoms
尝试从网关使用“Test REST configuration”时出错:
尝试连接到 API 服务器(网关)时出错:
尝试使用“curl”时出现的错误消息:
* About to connect() to 10.200.x.x port 443 (#0)
* Trying 10.200.x.x...
* Connected to 10.200.x.x (10.200.x.x) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* skipping SSL peer certificate verification
* SSL connection using TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
* Server certificate:
* subject: CN=ScaleIO-10-200-x-x-GW.sioesxinode06,OU=ASD,O=EMC,L=Hopkinton,ST=Massachusetts,C=US
* start date: Dec 02 07:30:05 2019 GMT
* expire date: Nov 05 07:30:05 2024 GMT
* common name: ScaleIO-10-200-x-x-GW.sioesxinode06
* issuer: CN=ScaleIO-10-200-x-x-GW.sioesxinode06,OU=ASD,O=EMC,L=Hopkinton,ST=Massachusetts,C=US
* Server auth using Basic with user 'admin'
> GET /api/login HTTP/1.1
> Authorization: Basic YWRtaW46U2NhbAFAta==
> User-Agent: curl/7.29.0
> Host: 10.200.x.x
> Accept: */*
>
< HTTP/1.1 428
< Cache-Control: no-cache
< Expires: Thu, 01 Jan 1970 00:00:00 GMT
< Pragma: no-cache
< Cache-Control: no-store
< Content-Type: application/json;charset=UTF-8
< Transfer-Encoding: chunked
< Vary: Accept-Encoding
< Date: Fri, 25 Jun 2021 14:00:00 GMT
< Server: ScaleIO Gateway
<
* Connection #0 to host 10.200.x.x left intact
{"message":"Failed connecting to cluster: 10.200.x.x 10.200.x.x","httpStatusCode":428,"errorCode":0}
IM 网关“scaleio.log”:
2021-06-25 05:14:27,153 [https-jsse-nio-443-exec-7] INFO c.e.s.s.s.ConnectionServiceImpl - Got exception when trying to connect to cluster: tcp://10.200.x.x:6611 (with configured 10 concurrent requests)
com.emc.ecs.net.exceptions.SecureConnectionDisabledException: null
影响
无法将 REST API 与 PowerFlex 配合使用。
Cause
# scli --query_all | grep -i secure
Management Clients secure communication: Disabled
# grep -i secure /opt/emc/scaleio/gateway/webapps/ROOT/WEB-INF/classes/gatewayUser.properties
#######Secure connection with MDM properties#######
# Allow a non-secured REST connection to the MDM if a secured connection can't be established
gateway-security.allow_non_secure_communication=true
由于软件问题,网关和 MDM 之间的通信不成功。
Resolution
将 MDM 管理客户端通信设置为安全:
scli --set_management_client_communication --enable_client_secure_communication
Additional Information
受影响的版本:
PowerFlex 操作系统 3.0.x.x。
已解决问题的版本:
PowerFlex 操作系统 3.0.1.4 和更高版本。