資源編排InstanceClone實現詳解
對於一臺阿里雲的ECS例項來說,主要由下面的幾組屬性組成:
-
例項規格
- 例項規格為對應著CPU和記憶體,是否為IO優化的例項,如果為IO優化例項則磁碟型別需要為
cloud_efficiency
高效雲盤,cloud_ssd
ssd雲盤。
- 例項規格為對應著CPU和記憶體,是否為IO優化的例項,如果為IO優化例項則磁碟型別需要為
-
網路配置
- 經典網路,同時包含出網頻寬的設定。
- 專有網路,需要包括vpc配置和vswitch的配置資訊,
-
磁碟配置,分為系統盤和資料盤。每個磁碟對應下面的屬性
- 映象資訊,僅僅對系統盤有效,將需要從某個映象建立,可以是系統映象也可以是自定義映象。目前阿里雲的系統盤大小為40GB到500GB。可以按需指定。
- 快照資訊,僅僅對資料盤有效,如果一塊盤從一個快照建立,則指定的磁碟size必須大於等於snapshot的size。
- 磁碟種類,常見的包括
cloud
雲盤,cloud_efficiency
高效雲盤,cloud_ssd
ssd雲盤 - 磁碟描述資訊
- 磁碟名稱
- 掛載點
- 對於資料盤,是否隨例項刪除
- 磁碟大小
- 安全組設定,一臺虛擬機器建立的時候必須至少屬於一個安全組。在建立之後可以最多屬於5個安全組。
- 例項的基本資訊包括名稱、描述、Tag標籤設定
-
UserData屬性
- 支援UserData的例項才有這個屬性。
資源編排在克隆資源的時候,預設情況下會克隆上面的所有屬性。有以下說明:
- 資源編排預設使用的映象是建立源映象的映象ID,不是給源資源建立了新的映象並且使用映象。
- 資源編排預設建立的資料盤也是源例項生成的時候使用的資料盤(空白或者某個快照,例如快照是2016-06-06建立的,在2016-07-07Clone的時候,仍然是當時的快照)。
- 在執行克隆的過程中,會先一個源Instance的第一個安全組來建立ECS例項,當機器建立出來並設定為Running狀態的時候,如果源例項中含有多個安全組,將會把新生成的Instance加入到其它的安全中。
之所以不是全部的克隆主要的原因是建立快照的時間可能會非常長,導致整個堆疊建立失敗。
為了方便擴充套件擴充套件在Clone的時候您也可以自己指定如下屬性做定製。
- SecurityGroupId 安全組,如果指定則僅僅使用者一個安全組。不會在clone源例項上已有的安全組。
- ImageId 映象Id,您可以通過在控制檯建立自定義映象來完成。這樣Clone的時候可以使用心得Image
- 例項的基本資訊包括名稱、描述、Tag標籤設定。包括InstanceName、Description。
- 例項所在的可用區 ZoneId
- 使用自定義的資料盤資訊類似建立Ecs例項。DiskMappings如下,建立一塊100GB的型別為
cloud
的資料盤,使用快照s-1234567890
"DiskMappings": [
{"Size": 100, "Category": "cloud", "SnapshotId": "s-1234567890"}
]
下面是一套使用克隆的模板, clone的時候自定義了映象id和使用了額外的兩塊資料盤,一塊從快照建立,一塊空白盤:
{
"ROSTemplateFormatVersion" : "2015-09-01",
"Resources" : {
"WebServer": {
"Type": "ALIYUN::ECS::InstanceGroupClone",
"Properties": {
"SourceInstanceId": "i-your_instance",
"Password": "YourPassword1234",
"MinAmount": 1,
"MaxAmount": 1,
"ImageId": "centos7u2_64_40G_cloudinit_20160520.raw",
"DiskMappings": [
{"Size": 100, "Category": "cloud", "SnapshotId": "s-123456789"},
{"Size": 100, "Category": "cloud", "Description": "Another 100 GB Disk"}
]
}
}
},
"Outputs": {
"InstanceId": {
"Value" : {"Fn::GetAtt": ["WebServer","InstanceIds"]}
},
"PublicIp": {
"Value" : {"Fn::GetAtt": ["WebServer","PublicIps"]}
}
}
}
相關文章
- 資源編排模板詳解
- 使用資源編排實現混合雲容災,保障業務可用性
- 伺服器太多了不好管?UCloud基於的資源編排工具詳解伺服器Cloud
- 詳解Go語言排程迴圈原始碼實現Go原始碼
- 減少運維工作量,如何透過 ROS 輕鬆實現資源編排新方式運維ROS
- Docker Compose 1.18.0 之服務編排詳解Docker
- 容器編排系統之K8s資源標籤、標籤選擇器、資源註解K8S
- Docker批次容器編排的實現介紹Docker
- services資源+pod詳解
- puppet package資源詳解Package
- puppet file資源詳解
- Quartz.net開源作業排程框架使用詳解quartz框架
- 容器編排系統k8s之Service資源K8S
- 容器編排系統K8s之crd資源K8S
- 容器編排系統K8s之APIService資源K8SAPI
- 容器編排系統K8s之HPA資源K8S
- 阿里雲資源編排服務JavaSDK使用入門阿里Java
- CompleteFuture實現簡單的任務編排實踐
- 使用 Amazon Step Functions 和 Amazon Athena 實現簡易大資料編排Function大資料
- 開源了!RadonDB分散式資料庫核心技術與實現詳解分散式資料庫
- 資源編排支援雲助手,增強例項運維能力運維
- 容器編排系統之Pod資源配置清單基礎
- 容器編排系統K8s之NetworkPolicy資源K8S
- 通過資源編排快速的構建負載均衡(SLB)負載
- 使用Zeebe實現微服務工作流編排 - Berndruecker微服務
- 業務流程的新實現:微服務和事件編排微服務事件
- 從0到1實現專案Docker編排部署Docker
- 什麼是容器編排,Kubernetes如何實現
- 詳解 CORS 跨域資源共享CORS跨域
- 跨域資源共享CORS詳解跨域CORS
- 跨域資源共享 CORS 詳解跨域CORS
- 多雲編排推動開源身份管理
- 容器編排系統K8s之PV、PVC、SC資源K8S
- xxl-job之實現流程任務編排思路
- 詳解:RHEL5下實現本地YUM源的過程(zt)
- Spark - [03] 資源排程模式Spark模式
- 容器編排系統K8s之ConfigMap、Secret資源K8S
- 詳解XMLHttpRequest的跨域資源共享XMLHTTP跨域