部署集是ECS實例在物理服務器上的放置策略。針對追求高可用性的集群業務,可利用高可用或部署集組高可用策略,將ECS實例分散部署在不同的物理服務器上,以避免單點故障,提高業務的可用性;對于網絡延遲高度敏感的應用(如高頻交易、實時數據分析等),可利用網絡低時延策略,將ECS實例集中部署到同一個網絡拓撲范圍內,縮短ECS實例間的網絡通信延時。本文主要介紹部署集的部署策略、使用限制及如何使用部署集。
部署策略
部署策略用于確定ECS實例在物理服務器上的部署方式,您可以根據業務對于高可用性、網絡延遲和部署規模等要求來選擇。
策略 | 說明 |
高可用策略(Availability) | 確保部署集內的ECS實例分散部署在不同物理服務器上,有效降低因單臺服務器故障導致的服務中斷風險。
|
部署集組高可用策略(AvailabilityGroup) | 在單一可用區內提供更精細的控制,單可用區內支持將實例分配到最多7個不同的分組中,實現更高級別的故障隔離。 不同分組的ECS實例會在指定地域內嚴格分散在不同的物理服務器上,避免單點故障;同組內多臺ECS實例不保證分散部署,可能部署在同一物理機,從而降低互訪延時。 說明 通過接口DescribeInstances可查詢實例在部署集中分組的位置(
|
網絡低時延策略(LowLatency) | 所有ECS實例會集中部署在同一可用區內的同一個網絡拓撲范圍內,可降低網絡互通的時延。 重要 可能導致多臺實例集中在同一臺物理服務器上,無法保證高可用。
|
使用限制
遇到地域內供貨緊缺時,可能無法創建ECS實例,或者重啟按量付費ECS實例(節省停機模式)失敗。一般情況下,您可以等待一段時間后重試創建或重啟操作。更多信息,請參見節省停機模式。
部署集不支持創建專有宿主機。
部署集數量限制:單個阿里云賬戶可擁有的部署集的數量有上限,具體可在配額中心查看。
地域與可用區限制:實例與部署集必須在同一地域;策略為網絡低時延的部署集內的實例,必須都在同一可用區。
支持的實例規格族限制:
不同部署策略僅支持創建特定的實例規格族,具體信息如下。
說明您也可以調DescribeDeploymentSetSupportedInstanceTypeFamily指定部署集策略來獲取各部署集策略支持的實例規格族。
部署策略
支持的實例規格族
高可用策略和部署集組高可用策略
g8a、g8i、g8y、g7se、g7a、g7、g7h、g7t、g7ne、g7nex、g6、g6e、g6a、g6h、g5、g5ne、sn2ne
c8a、c8i、c8y、c7se、c7、c7t、c7nex、c7a、c6、c6a、c6e、c5、ic5、sn1ne
r8a、r8i、r8y、r7、r7se、r7t、r7a、r6、r6e、r6a、re6、re6p、r5、re4、se1ne、se1
hfc8i、hfg8i、hfr8i、hfc7、hfg7、hfr7、hfc6、hfg6、hfr6、hfc5、hfg5
d3s、d3c、d2s、d2c、d1、d1ne、d1-c14d3、d1-c8d3
i4、i4g、i4r、i3g、i3、i2、i2g、i2ne、i2gne、i1
ebmg5、ebmc7、ebmg7、ebmr7、sccgn6、scch5、scch5s、sccg5、sccg5s
e、s6、t6、xn4、mn4、n4、e4
gn6i
u1
網絡低時延策略
g8a、g8i、g8ae、g8y
c8a、c8i、c8ae、c8y
ebmc8i、ebmg8i、ebmr8i
r8a、r8i、r8ae、r8y
i4
hfc8i、hfg8i、hfr8i
ebmgn7ex、ebmc7、ebmg7、ebmr7
部署集之間不支持相互合并。
費用說明
使用部署集不會收取服務費用,但您創建和使用的ECS實例、磁盤、快照、鏡像和公網帶寬等服務將收取費用。更多信息,請參見計費概述。
快速使用
步驟一:創建部署集
通過控制臺
通過API
調用CreateDeploymentSet在指定的地域內創建一個部署集,并設置部署集策略。
如果部署策略為部署集組高可用策略,可指定參數GroupCount
設置分組數量。
步驟二:在部署集內創建或添加ECS實例
通過控制臺
ECS實例的規格、地域、數量需符合使用限制要求。具體,請參見使用限制。
在部署集內創建新實例:
在部署集列表頁面,找到目標部署集創建實例,在部署集的操作列中,單擊創建實例,跳轉到自定義購買頁面完成實例配置選項。
將已創建實例加入部署集:具體操作,可參見調整實例所屬部署集。
通過API
在部署集內創建新實例:調用RunInstances接口,并指定
DeploymentSetId
(部署集ID)。為部署集組高可用策略設置分組數量。
將已創建實例加入至部署集:調用ModifyInstanceDeployment接口,并指定參數
InstanceId
(實例ID)和DeploymentSetId
(部署集ID)。說明如果指定的部署集對應策略為
AvailabilityGroup
(部署集組高可用策略),可以通過參數DeploymentSetGroupNo
指定實例在部署集中的分組號。
更多操作
調整實例所屬部署集
您可以根據業務需求,更改ECS實例所屬的部署集,將其從一個部署集轉移到另一個部署集,或將未加入部署集的實例添加到符合業務需求的目標部署集中。
操作步驟
通過控制臺
進入實例列表頁面。
在頁面左側頂部,選擇目標資源所在的資源組和地域。
找到目標實例,在操作列中,選擇
。在調整實例所屬部署集對話框中,選擇目標部署集,并設置是否強制調整。
是:允許更換實例物理服務器。該操作可能會導致實例重啟,影響服務的連續性,請謹慎操作。
否:不會更換實例的物理服務器,而是嘗試將實例加入到指定的部署集。這種方式避免了實例重啟的風險,但如果當前實例不滿足新部署集的要求,會導致調整失敗。
通過API
調用接口ModifyInstanceDeployment,并指定以下參數,調整實例所屬部署集:
RegionId:選擇實例所屬地域。例如,
cn-hangzhou
,即華東1(杭州)。InstanceId:實例ID。例如,
i-bp67acfmxazb4ph***
。DeploymentSetId:目標部署集ID。例如,
ds-bp67acfmxazb4ph****
。Force:實例在調整部署集時,是否強制更換物理服務器。取值:
true:允許更換實例物理服務器。該操作可能會導致實例重啟,影響服務的連續性,請謹慎操作。
false(默認):不會更換實例的物理服務器,而是嘗試將實例加入到指定的部署集。這種方式避免了實例重啟的風險,但如果當前實例不滿足新部署集的要求,會導致調整失敗。
將實例移出部署集
如果您在刪除部署集時,需要保留當前部署集內的實例,可以從部署集中移除實例后再進行刪除,移除后實例保持原有狀態。
具體操作如下:
調用ModifyInstanceDeployment,并指定以下參數,將實例移出部署集:
RegionId:選擇實例所屬地域。例如,
cn-hangzhou
,即華東1(杭州)。InstanceId:實例ID。例如,
i-bp67acfmxazb4ph***
。DeploymentSetId:部署集ID。例如,
ds-bp67acfmxazb4ph****
。RemoveFromDeploymentSet:是否將所選實例移出所選部署集。選擇:
true
。
驗證實例是否移除成功:接口調用成功,且返回狀態碼:200,證明移除成功。
修改或刪除部署集
在部署集列表,找到目標部署集,單擊操作列的修改信息或刪除,按照界面提示完成操作。
修改部署集:修改部署集的名稱和描述。
刪除部署集:當您不再需要使用部署集時,您可以刪除部署集,以免造成不必要的資源占用。