透過 Active IQ Unified Manager 中的 Proxy 存取來存取 ONTAP API
閘道 API 可讓您使用 Active IQ Unified Manager 憑證來執行 ONTAP REST API 並管理儲存設備物件。當從 Unified Manager Web UI 啟用 API 閘道功能時,這些 API 即可使用。
Unified Manager REST API 僅支援對 Unified Manager 資料來源(即 ONTAP 叢集)執行一組特定的行動。您可以透過 ONTAP API 使用其他功能。閘道 API 可讓 Unified Manager 作為直通介面,將所有要在其管理的 ONTAP 叢集上執行的 API 請求進行通道傳輸,而無需個別登入每個資料中心叢集。它可作為單點管理,用於在您的 Unified Manager 執行個體代管的 ONTAP 叢集上執行 API。API 閘道功能可讓 Unified Manager 成為單一控制平面,讓您從中管理多個 ONTAP 叢集,而無需個別登入。閘道 API 可讓您保持登入 Unified Manager 的狀態,並透過執行 ONTAP REST API 作業來管理 ONTAP 叢集。
|
|
所有使用者均可使用 GET 操作執行查詢。應用程式管理員可以執行所有 ONTAP REST 操作。 |
閘道充當 Proxy,透過保持標頭和主體要求格式與 ONTAP API 相同,來穿隧 API 要求。您可以使用 Unified Manager 憑證並執行特定作業來存取和管理 ONTAP 叢集,而無需傳遞個別的叢集憑證。它會繼續管理叢集驗證和叢集管理,但會將 API 要求重新導向,以直接在特定叢集上執行。API 傳回的回應與直接從 ONTAP 執行個別 ONTAP REST API 所傳回的回應相同。
| HTTP 動詞 | 路徑(URL) | 說明 | ||
|---|---|---|---|---|
|
|
此 GET 方法會擷取由 Unified Manager 代管且支援 ONTAP REST 呼叫的所有叢集清單。您可以驗證叢集詳細資料,並根據叢集 UUID 或通用唯一識別碼(UUID)選擇執行其他方法。
|
||
|
|
這是一個單點 Proxy API,支援所有 ONTAP REST API 的 POST、DELETE、PATCH 和 GET 操作。只要 ONTAP 支援,任何 API 都不受限制。隧道或 Proxy 功能無法停用。 此 此 |
了解 API 閘道穿隧
閘道 API 可讓您透過 Unified Manager 管理 ONTAP 物件。Unified Manager 管理叢集和驗證詳細資料,並將要求重新導向至 ONTAP REST 端點。閘道 API 會將標頭與回應主體中的 URL 和「超媒體作為應用程式狀態引擎」(HATEOAS)連結,轉換為 API 閘道基礎 URL。閘道 API 可作為 Proxy 基礎 URL,您可將 ONTAP REST URL 附加至此 URL,並執行所需的 ONTAP REST 端點。
|
|
若要讓 ONTAP API 能夠透過 API 閘道成功執行,該 API 必須受其執行所在 ONTAP 叢集版本的支援。執行 ONTAP 叢集不支援的 API 將不會傳回任何結果。 |
在本例中,閘道 API(Proxy 基本 URL)為: /gateways/{uuid}/
所使用的 ONTAP API 為: /storage/volumes。您需要將 ONTAP API REST URL 新增為路徑參數的值。
|
|
新增路徑時,請確保您已移除 “/” symbol at the beginning of the URL. For the API |
附加的 URL 為: /gateways/{uuid}/storage/volumes
執行 GET 操作時,產生的 URL 如下: GEThttps://<hostname\>/api/gateways/<cluster_UUID\>/storage/volumes
在附加的 URL 中,ONTAP REST URL 的 /api 標籤被移除,而閘道 API 的標籤則保留。
cURL 命令範例
curl -X GET "https://<hostname>/api/gateways/1cd8a442-86d1-11e0-ae1c-9876567890123/storage/volumes" -H "accept: application/hal+json" -H "Authorization: Basic <Base64EncodedCredentials>"
此 API 傳回該叢集中的儲存設備 Volume 清單。回應格式與從 ONTAP 執行相同 API 時收到的回應格式相同。傳回的狀態碼是 ONTAP REST 狀態碼。
設定 API 範圍
所有 API 的上下文都設定在叢集範圍內。基於儲存設備虛擬機器(VM)的 API 也以叢集為範圍,也就是說,API 作業是在代管叢集中的特定儲存設備 VM 上執行的。執行 /gateways/{uuid}/{path} API 時,請確保輸入執行作業的叢集的叢集 UUID(Unified Manager 資料來源 UUID)。若要將上下文設定為該叢集中的特定儲存設備 VM,請將儲存設備 VM 金鑰作為 X-Dot-SVM-UUID 參數輸入,或將儲存設備 VM 名稱輸入為 X-Dot-SVM-Name 參數。此參數將作為篩選條件新增至字串標頭中,作業將在該叢集中的該儲存設備 VM 範圍內執行。
cURL 命令範例
curl -X GET "https://<hostname>/api/gateways/e4f33f90-f75f-11e8-9ed9-00a098e3215f/storage/volume" -H "accept: application/hal+json" -H "X-Dot-SVM-UUID: d9c33ec0-5b61-11e9-8760-00a098e3215f" -H "Authorization: Basic <Base64EncodedCredentials>"
有關使用 ONTAP REST API 的更多資訊,請參閱 "ONTAP REST API 自動化"