部署集是ECS執行個體在物理伺服器上的放置策略。針對追求高可用性的叢集業務,可利用高可用或部署集組高可用策略,將ECS執行個體分散部署在不同的物理伺服器上,以避免單點故障,提高業務的可用性;對於網路延遲高度敏感的應用(如高頻交易、即時資料分析等),可利用網路低時延策略,將ECS執行個體集中式部署到同一個網路拓撲範圍內,縮短ECS執行個體間的網路通訊延時。本文主要介紹部署集的部署策略、使用限制及如何使用部署集。
部署策略
部署策略用於確定ECS執行個體在物理伺服器上的部署方式,您可以根據業務對於高可用性、網路延遲和部署規模等要求來選擇。
策略 | 說明 |
高可用策略(Availability) | 確保部署集內的ECS執行個體分散部署在不同物理伺服器上,有效降低因單台伺服器故障導致的服務中斷風險。
|
部署集組高可用策略(AvailabilityGroup) | 在單一可用性區域內提供更精細的控制,單可用性區域內支援將執行個體分配到最多7個不同的分組中,實現更進階別的故障隔離。 不同分組的ECS執行個體會在指定地區內嚴格分散在不同的物理伺服器上,避免單點故障;同組內多台ECS執行個體不保證分散部署,可能部署在同一物理機,從而降低互訪延時。 說明 通過介面DescribeInstances可查詢執行個體在部署集中分組的位置(
|
網路低時延策略(LowLatency) | 所有ECS執行個體會集中式部署在同一可用性區域內的同一個網路拓撲範圍內,可降低網路互連的時延。 重要 可能導致多台執行個體集中在同一台物理伺服器上,無法保證高可用。
|
使用限制
遇到地區內供貨緊缺時,可能無法建立ECS執行個體,或者重啟隨用隨付ECS執行個體(節省停機模式)失敗。一般情況下,您可以等待一段時間後重試建立或重啟操作。更多資訊,請參見節省停機模式。
部署集不支援建立Dedicated Host。
部署集數量限制:單個阿里雲賬戶可擁有的部署集的數量有上限,具體可在配額中心查看。
地區與可用性區域限制:執行個體與部署集必須在同一地區;策略為網路低時延的部署集內的執行個體,必須都在同一可用性區域。
支援的執行個體規格類型系列限制:
不同部署策略僅支援建立特定的執行個體規格類型系列,具體資訊如下。
說明您也可以調DescribeDeploymentSetSupportedInstanceTypeFamily指定部署集策略來擷取各部署集策略支援的執行個體規格類型系列。
部署策略
支援的執行個體規格類型系列
高可用策略和部署集組高可用策略
g8a、g8i、g8y、g7se、g7a、g7、g7h、g7t、g7ne、g7nex、g6、g6e、g6a、g5、g5ne、sn2ne、sn2、sn1
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
d3c、d2s、d2c、d1、d1ne、d1-c14d3、d1-c8d3
i3g、i3、i2、i2g、i2ne、i2gne、i1
ebmg5、ebmc7、ebmg7、ebmr7、sccgn6、scch5、scch5s、sccg5、sccg5s
e、t6、xn4、mn4、n4、e4、n2、n1、
gn6i
網路低時延策略
g8a、g8i、g8ae、g8y
c8a、c8i、c8ae、c8y
ebmc8i、ebmg8i、ebmr8i
r8a、r8i、r8ae、r8y
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,證明移除成功。
修改或刪除部署集
在部署集列表,找到目標部署集,單擊操作列的修改資訊或刪除,按照介面提示完成操作。
修改部署集:修改部署集的名稱和描述。
刪除部署集:當您不再需要使用部署集時,您可以刪除部署集,以免造成不必要的資源佔用。
重要刪除部署集時,請確保部署集內沒有執行個體。如果存在執行個體,必須移出執行個體後才能刪除部署集。具體操作,請參見調整執行個體所屬部署集或將執行個體移出部署集。