建立新的託管叢集
POST /accounts/{account_id}/topology/v1/managedClusters
指示要建立的 Managed Cluster API 資源的期望值。
參數
| Name | 類型 | 在 | 必要 | 說明 |
|---|---|---|---|---|
account_id |
字串 |
路徑 |
True |
包含帳戶資源的 ID
|
請求本文
指示要建立的 Managed Cluster API 資源的期望值。
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
類型 |
字串 |
True |
資源的媒體類型。定義的值為:
|
版本 |
字串 |
True |
資源版本。定義的值為:
|
ID |
字串 |
True |
資源的全域唯一識別碼。定義的值為:
|
tridentManagedStateDesired |
字串 |
錯誤 |
JSON 字串包含一個值,指示 Trident 所需的管理狀態。定義的值為:
|
defaultStorageClass |
字串 |
錯誤 |
包含儲存類別 ID 的 JSON 字串,該 ID 對應於 Kubernetes 中設定的預設儲存類別。定義的值為:
|
中繼資料 |
錯誤 |
與資源相關聯的用戶端和服務指定中繼資料。定義的值為:
|
範例請求
{
"type": "application/astra-managedCluster",
"version": "1.2",
"id": "6f2fa469-cdae-54be-a451-d0e94a47fa62",
"defaultStorageClass": "e280ff62-be35-4f31-a31b-a210a1ad1b33",
"tridentManagedStateDesired": "managed"
}
回應
Status: 201, Returns the newly created managedCluster resource in the JSON response body.
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
類型 |
字串 |
True |
資源的媒體類型。定義的值為:
|
版本 |
字串 |
True |
資源版本。定義的值為:
|
ID |
字串 |
True |
資源的全域唯一識別碼。定義的值為:
|
姓名 |
字串 |
True |
包含叢集名稱的 JSON 字串。定義的值為:
|
狀態 |
字串 |
True |
包含指示叢集運作狀態值的 JSON 字串。定義的值為:
|
restoreTargetSupported |
字串 |
錯誤 |
包含一個值的 JSON 字串,該值指示受管叢集是否能夠作為應用程式資料管理作業的_目標_。定義的值為:
|
snapshotSupported |
字串 |
錯誤 |
包含一個值的 JSON 字串,該值指示受管叢集執行類似應用程式資料管理備份作業的能力。定義的值為:
|
stateUnready |
陣列[string] |
True |
JSON 字串的 JSON 陣列,每個字串分別指示叢集無法轉換到「執行中」狀態的原因、叢集在「執行中」狀態下出現問題的原因,以及叢集轉換到「失敗」或「已移除」狀態的原因。定義的值為:
|
managedState |
字串 |
True |
包含指示叢集管理狀態值的 JSON 字串。定義的值為:
|
protectionState |
字串 |
True |
包含指示叢集保護狀態值的 JSON 字串。定義的值為:
|
protectionStateDetails |
True |
JSON 物件的 JSON 陣列,列出有關目前保護狀態的其他詳細資料,包括達到目前狀態的原因。如果沒有可用的詳細資料,此陣列將為空白。定義的值為:
|
|
managedStateUnready |
陣列[string] |
True |
JSON 字串的 JSON 陣列,每個字串表示叢集不符合管理條件的原因。定義的值為:
|
managedTimestamp |
字串 |
True |
包含叢集接管管理時間戳記的 JSON 字串。定義的值為:
|
tridentVersion |
字串 |
錯誤 |
包含叢集上已安裝 Trident 版本的 JSON 字串。定義的值為:
|
tridentManagedState |
字串 |
錯誤 |
包含一組列舉值之一的 JSON 字串,指示此叢集上 Trident 的管理狀態。定義的值為:
|
tridentManagedStateDesired |
字串 |
錯誤 |
JSON 字串包含一個值,指示 Trident 所需的管理狀態。定義的值為:
|
tridentManagedStateDetails |
錯誤 |
JSON 物件的 JSON 陣列,其中列出了有關「state」為何轉換為「managed」或「unmanaged」的其他詳細資料。+ 如果沒有可用的詳細資料,此陣列將為空白。
|
|
tridentManagedStateAllowed |
陣列[string] |
錯誤 |
可在指定的 tridentManagedState 中請求的狀態。在每個已定義的狀態下,可以請求以下狀態:
|
inUse |
字串 |
True |
JSON 字串包含一個值,指示叢集是否有任何託管應用程式,因此無法刪除。定義的值為:
|
accHost |
字串 |
錯誤 |
JSON 字串,指示此叢集託管目前正在存取的 Astra Control Center 執行個體。定義的值為:
|
clusterType |
字串 |
True |
包含指示叢集類型值的 JSON 字串。定義的值為:
|
clusterVersion |
字串 |
True |
包含叢集環境語義版本控制表示的 JSON 字串。對於 Kubernetes 叢集,此字串表示 Kubernetes 版本。定義的值為:
|
clusterVersionString |
字串 |
True |
JSON 字串,包含指示叢集環境擴充版本資訊的值。對於 Kubernetes 叢集,這是完整的 Kubernetes 版本。定義的值為:
|
clusterCreationTimestamp |
字串 |
錯誤 |
包含叢集初始建立時間戳記的 JSON 字串。定義的值為:
|
命名空間 |
陣列[string] |
錯誤 |
JSON 字串的 JSON 陣列,每個字串代表叢集中的一個命名空間。定義的值為:
|
defaultStorageClass |
字串 |
錯誤 |
包含儲存類別 ID 的 JSON 字串,該 ID 對應於 Kubernetes 中設定的預設儲存類別。定義的值為:
|
cloudID |
字串 |
True |
包含叢集運行所在雲端平台 ID 的 JSON 字串。定義的值為:
|
credentialID |
字串 |
錯誤 |
包含一個值的 JSON 字串,該值指示包含叢集 kubeconfig 檔案的憑證的 ID。定義的值為:
|
位置 |
字串 |
錯誤 |
包含叢集運作所在雲端平台提供的值的 JSON 字串,指示叢集在雲端平台上的具體位置。定義的值為:
|
isMultizonal |
字串 |
True |
包含叢集運作所在雲端平台提供的值的 JSON 字串,指示叢集是否跨越兩個或多個可用區。定義的值為:
|
privateRouteID |
字串 |
錯誤 |
包含私有叢集 locationID 的 JSON 字串。
|
apiServiceID |
字串 |
錯誤 |
包含 Kubernetes (k8s) API 服務物件 UUID 的 JSON 字串。用於唯一識別叢集。 |
中繼資料 |
True |
與資源相關聯的用戶端和服務指定中繼資料。定義的值為:
|
範例回應
{
"type": "application/astra-managedCluster",
"version": "1.2",
"id": "6f2fa469-cdae-54be-a451-d0e94a47fa62",
"name": "GKE-22",
"state": "running",
"stateUnready": [],
"managedState": "managed",
"managedStateUnready": [],
"managedTimestamp": "2020-08-06T12:24:52.256624Z",
"protectionState": "full",
"protectionStateDetails": [],
"tridentVersion": "21.07.2",
"tridentManagedState": "managed",
"tridentManagedStateDesired": "managed",
"tridentManagedStateDetails": [],
"inUse": "false",
"clusterType": "kubernetes",
"clusterVersion": "1.91.1",
"clusterVersionString": "1.19.1",
"clusterCreationTimestamp": "2020-08-06T12:24:52.256624Z",
"namespaces": [
"kube-system",
"kube-public",
"my-app-1"
],
"defaultStorageClass": "e280ff62-be35-4f31-a31b-a210a1ad1b33",
"cloudID": "548bdc1f-f00e-4a23-a062-83265d224d46",
"credentialID": "055e365a-2215-40de-aecb-a4070a7e6f1e",
"location": "europe-west4",
"isMultizonal": "false",
"apiServiceID": "6bf33af2-872a-4553-a891-26b510c3edbe",
"metadata": {
"labels": [],
"creationTimestamp": "2022-10-06T20:58:16.305662Z",
"modificationTimestamp": "2022-10-06T20:58:16.305662Z",
"createdBy": "8f84cf09-8036-51e4-b579-bd30cb07b269"
}
}
回應
Status: 401, Unauthorized
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
類型 |
字串 |
True |
|
標題 |
字串 |
True |
|
詳細資料 |
字串 |
True |
|
狀態 |
字串 |
True |
|
correlationID |
字串 |
錯誤 |
範例回應
{
"type": "https://astra.netapp.io/problems/3",
"title": "Missing bearer token",
"detail": "The request is missing the required bearer token.",
"status": "401"
}
回應
Status: 400, Bad request
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
類型 |
字串 |
True |
|
標題 |
字串 |
True |
|
詳細資料 |
字串 |
True |
|
狀態 |
字串 |
True |
|
correlationID |
字串 |
錯誤 |
|
invalidFields |
陣列["invalidFields"] |
錯誤 |
無效請求本文欄位清單 |
範例回應
{
"type": "https://astra.netapp.io/problems/5",
"title": "Invalid query parameters",
"detail": "The supplied query parameters are invalid.",
"status": "400"
}
回應
Status: 409, Conflict
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
類型 |
字串 |
True |
|
標題 |
字串 |
True |
|
詳細資料 |
字串 |
True |
|
狀態 |
字串 |
True |
|
correlationID |
字串 |
錯誤 |
|
invalidFields |
陣列["invalidFields"] |
錯誤 |
無效請求本文欄位清單 |
範例回應
{
"type": "https://astra.netapp.io/problems/10",
"title": "JSON resource conflict",
"detail": "The request body JSON contains a field that conflicts with an idempotent value.",
"status": "409"
}
回應
Status: 403, Forbidden
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
類型 |
字串 |
True |
|
標題 |
字串 |
True |
|
詳細資料 |
字串 |
True |
|
狀態 |
字串 |
True |
|
correlationID |
字串 |
錯誤 |
範例回應
{
"type": "https://astra.netapp.io/problems/11",
"title": "Operation not permitted",
"detail": "The requested operation isn't permitted.",
"status": "403"
}
錯誤
Status: 404, Not found
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
類型 |
字串 |
True |
|
標題 |
字串 |
True |
|
詳細資料 |
字串 |
True |
|
狀態 |
字串 |
True |
|
correlationID |
字串 |
錯誤 |
範例錯誤回應
{
"type": "https://astra.netapp.io/problems/2",
"title": "Collection not found",
"detail": "The collection specified in the request URI wasn't found.",
"status": "404"
}
定義
請參閱定義
type_astra_label
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
姓名 |
字串 |
True |
|
值 |
字串 |
True |
type_astra_metadata_update
與資源相關聯的用戶端和服務指定中繼資料。定義的值為:
-
符合 Astra Metadata Schema。如果在建立時未指定、則會建立沒有標籤的中繼資料物件。如果在更新時未指定,元資料物件的標籤、creationTimestamp 和 createdBy 將保持不變。
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
標籤 |
錯誤 |
||
建立時間戳記 |
字串 |
錯誤 |
|
修改時間戳記 |
字串 |
錯誤 |
|
建立者 |
字串 |
錯誤 |
|
modifiedBy |
字串 |
錯誤 |
type_astra_stateDetail
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
類型 |
字串 |
True |
|
標題 |
字串 |
True |
|
詳細資料 |
字串 |
True |
invalidParams
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
姓名 |
字串 |
True |
無效查詢參數的名稱 |
原因 |
字串 |
True |
查詢參數無效的原因 |
invalidFields
| Name | 類型 | 必要 | 說明 |
|---|---|---|---|
姓名 |
字串 |
True |
無效請求內文欄位的名稱 |
原因 |
字串 |
True |
請求本文欄位無效的原因 |