自動調整
自動調整是設計用來回應 IBM Cloud® Databases for MongoDB 部署上資源使用的中短期趨勢。 啟用時,會以您指定的間隔檢查您的部署。 如果資源不足,則會將更多資源新增至部署。 若要注意資源,請使用 IBM Cloud® Monitoring 整合,它提供記憶體、磁碟空間及磁碟 I/O 使用率的度量值。
您可以將部署設為自動調整磁碟及/或 RAM。
一般自動縮放參數:
- 何時根據一段時間內的使用情形進行調整。
- 以每個成員的資源百分比表示要調整的規模。
- 調整頻率,以秒、分鐘或小時為單位。
- 調整大小的硬性限制,您的部署會停止在此限制下進行調整。
記憶體-記憶體自動調整是根據磁碟 I/O 使用率來提供更多記憶體,以在讀寫負載增加時進行磁碟快取。 好處是額外的記憶體可以支援更多快取,以減輕磁碟 I/O 的壓力。 目前無法使用基於記憶體用量的自動調整配置。
磁碟-當任一磁碟用量達到特定臨界值及/或磁碟 I/O 使用率達到特定臨界值時,可以調整磁碟自動調整大小。 (使用者介面中的 "or" 會以 inclusive or、|、v 的方式運作。) 部署可用的 IOPS 數量會增加,每 GB 的磁碟大小比例為 10 IOPS。
隔離計算不支援 CPU 和 RAM 自動縮放。 磁碟自動縮放可用。 如果您配置了獨立實例或從具有自動擴展功能的部署切換,請使用 IBM Cloud® Monitoring整合) 監控您的資源,該整合提供記憶體、磁碟空間和磁碟I/O 使用率的指標。 若要將資源新增至您的實例,請手動擴充您的部署。
資源號碼是指部署中的每一個資料庫節點。 例如,MongoDB 部署中有三個資料成員,如果使用 10 GB 磁碟和 1 GB RAM 來調整部署,則表示每一個成員都有 10 GB 磁碟和 1 GB RAM。 新增至部署的資源總計為 30 GB 磁碟和 3 GB RAM。
自動縮放注意事項
-
擴增部署可能會導致資料庫重新啟動。 如果需要將已調整的部署移至具有更多容量的主機,則會在移動過程中重新啟動資料庫。
-
磁碟無法縮小。
-
少數調整大小作業執行的時間可能比其他作業長。 大幅增加 RAM 或磁碟可能需要比較小的增加更長的時間,以考量佈建更多基礎硬體資源。
-
自動縮放操作記錄在 IBM Cloud® Activity Tracker Event Routing。
-
限制:
- 無法在小於 60 秒的間隔內設定任何縮放比例。
- 最大磁碟 = 每個成員 4 TB。
- 每個成員的最大 RAM = 112 GB。
-
自動擴充不會縮減磁碟或記憶體使用量已減少的部署。 配置給部署的 RAM 將保留以滿足您未來的需求,或直到您手動縮減部署。 供應給部署的磁碟仍會保留,因為無法縮減磁碟。
-
如果您只是偶爾或很少需要將資源新增至部署,則可以 手動調整 部署。
在使用者介面中設定自動調整
自動調整面板位於部署的 「管理」 頁面的「資源」索引標籤上。 若要啟用縮放功能,請輸入您的參數。 然後勾選方塊,啟用您要使用的參數。 請務必按一下「儲存變更」,以儲存您的組態並使變更生效。
若要停用自動調整,請清除您不想再使用的參數方塊。 如果清除所有方塊,就會停用自動調整。 按一下「儲存變更」儲存組態。
隔離計算不支援 CPU 和 RAM 自動縮放。 磁碟自動縮放可用。 如果您配置了獨立實例或從具有自動擴展功能的部署切換,請使用 IBM Cloud® Monitoring整合) 監控您的資源,該整合提供記憶體、磁碟空間和磁碟I/O 使用率的指標。 若要將資源新增至您的實例,請手動擴充您的部署。
在 CLI 中設定自動縮放
您可以使用 cdb deployment-autoscaling 指令,透過 CLI 取得部署的自動調整參數。
ibmcloud cdb deployment-autoscaling <INSTANCE_NAME_OR_CRN> member
若要透過 CLI 啟用及設定自動調整參數,請搭配使用 JSON 物件或檔案與 cdb deployment-autoscaling-set 指令。
ibmcloud cdb deployment-autoscaling-set <INSTANCE_NAME_OR_CRN> member '{"autoscaling": { "memory": {"scalers": {"io_utilization": {"enabled": true, "over_period": "5m","above_percent": 90}},"rate": {"increase_percent": 10.0, "period_seconds": 300,"limit_mb_per_member": 125952,"units": "mb"}}}}'
隔離計算不支援 CPU 和 RAM 自動縮放。 磁碟自動縮放可用。 如果您配置了獨立實例或從具有自動擴展功能的部署切換,請使用 IBM Cloud® Monitoring整合) 監控您的資源,該整合提供記憶體、磁碟空間和磁碟I/O 使用率的指標。 若要將資源新增至您的實例,請手動擴充您的部署。
在 API 中配置自動縮放
您可以將 GET 要求傳送至 /deployments/{id}/groups/{group_id}/autoscaling 端點,以透過 API 取得部署的自動調整參數。 將您想要的 scalers (io_utilization 或 capacity) 設為 true,即可啟用自動調整功能。
curl -X GET -H "Authorization: Bearer $APIKEY" 'https://api.{region}.databases.cloud.ibm.com/v4/ibm/deployments/{id}/groups/member/autoscaling'
若要透過 API 啟用並設定部署的自動調整參數,請將 POST 要求傳送至端點。 啟用自動調整可透過將 scalers (io_utilization 或 capacity) 設為 true 來運作。
curl -X PATCH https://api.{region}.databases.cloud.ibm.com/v4/ibm/deployments/{id}/groups/member/autoscaling \
-H 'Authorization: Bearer <>' \
-H 'Content-Type: application/json' \
-d '{
"autoscaling": {
"memory": {
"scalers": {
"io_utilization": {
"enabled": true,
"over_period": "5m",
"above_percent": 90
}
},
"limits": {
"scale_increase_percent": 10,
"scale_period_seconds": 30,
"scale_maximum_mb": 125952,
"units": "mb"
}
}
}
}'
若要停用自動調整,請傳送 PATCH 要求,並將目前已啟用的調整程式設為 false。 如果全部都設為 false,則會在部署上停用自動調整大小。
隔離計算不支援 CPU 和 RAM 自動縮放。 磁碟自動縮放可用。 如果您配置了獨立實例或從具有自動擴展功能的部署切換,請使用 IBM Cloud® Monitoring整合) 監控您的資源,該整合提供記憶體、磁碟空間和磁碟I/O 使用率的指標。 若要將資源新增至您的實例,請手動擴充您的部署。