Share via


移動實例

移動無狀態服務的分割區實例。

此命令會移動無狀態服務的分割區實例,並遵守所有條件約束。 您必須指定分割區識別碼和服務名稱,才能移動實例。 當指定時,CurrentNodeName 會識別已移動的實例。 如果未指定,則會省略隨機實例新的節點名稱,在此情況下,會將該實例移至隨機節點。 如果指定 IgnoreConstraints 參數並設定為 true,則不論條件約束為何,都會移動 實例。

要求

方法 要求 URI
POST /Services/{serviceId}/$/GetPartitions/{partitionId}/$/MoveInstance?api-version=8.0&CurrentNodeName={CurrentNodeName}&NewNodeName={NewNodeName}&IgnoreConstraints={IgnoreConstraints}&timeout={timeout}

參數

名稱 類型 必要 Location
serviceId 字串 路徑
partitionId 字串 (uuid) 路徑
api-version 字串 查詢
CurrentNodeName 字串 No 查詢
NewNodeName 字串 No 查詢
IgnoreConstraints boolean No 查詢
timeout 整數 (int64) No 查詢

serviceId

類型:字串
必要:是

服務的身分識別。 此識別碼通常是不含 'fabric:' URI 配置的服務完整名稱。 從 6.0 版開始,階層的名稱會以 "~" 字元分隔。 例如,如果服務名稱是 "fabric:/myapp/app1/svc1",那麼在 6.0 以上的版本中,服務識別為 "myapp~app1~svc1",在舊版中則為 "myapp/app1/svc1"。


partitionId

類型:字串 (uuid)
必要:是

分割區的識別。


api-version

類型:字串
必要:是
預設8.0

API 的版本。 這是必要參數,其值必須是 '8.0'。

Service Fabric REST API 版本是以導入或變更 API 的執行時間版本為基礎。 Service Fabric 執行時間支援多個版本的 API。 此版本是 API 的最新支援版本。 如果傳遞較低的 API 版本,傳回的回應可能與此規格中所述的回應不同。

此外,執行時間會接受高於最新支援版本的任何版本,最高到目前版本的執行時間。 因此,如果最新的 API 版本為 6.0,且執行時間為 6.1,則執行時間將會接受該 API 的版本 6.1。 不過,API 的行為會根據記載的 6.0 版本。


CurrentNodeName

類型:字串
必要:否

實例移動的來源節點名稱。 如果未指定,實例會從隨機節點移動。


NewNodeName

類型:字串
必要:否

次要複本或實例移動的目標節點名稱。 如果未指定,則複本或實例會移至隨機節點。


IgnoreConstraints

類型:布林值
必要:否
預設false

移動複本或實例時忽略條件約束。 如果未指定此參數,則會接受所有條件約束。


timeout

類型:整數 (int64)
必要:否
預設60
InclusiveMaximum4294967295
InclusiveMinimum1

用來執行作業的伺服器逾時 (以秒為單位)。 此逾時指定了用戶端願意等候要求作業完成的持續時間。 這個參數的預設值是 60 秒。

回應

HTTP 狀態碼 描述 回應結構描述
200 (確定) 成功的作業要求會傳回 200 狀態碼。
所有其他狀態碼 詳細的錯誤回應。
FabricError