背景
資源編排服務(Resource Orchestration Service, 簡稱ROS)是阿里雲提供的一項簡化雲計算資源管理的服務。您可以遵循ROS定義的模板規範編寫資源棧模板,在模板中定義所需的雲計算資源(例如ECS實例、RDS數據庫實例)、資源間的依賴關係等。ROS的編排引擎將根據模板自動完成所有資源的創建和配置,實現自動化部署及運維。
模塊是一種以透明、易管理和可重複的方式打包資源配置,以便跨資源棧模板實現包含的方法。模塊可以將常見服務配置和最佳實踐封裝為模塊化、可自定義的構建基塊,供您包含在資源棧模板中。
例如:網絡領域專家可以創建一個包含遵守安全準則的內置安全組和入口、出口規則的模塊。然後您可以將該模塊納入到模板中,以便在資源棧中預配置安全的網絡基礎架構,而無需花費時間瞭解清楚VPC、子網、安全組和網關的工作方式。此外,由於模塊具有版本控制,如果安全指南隨時間而發生變化,模塊創建者可以創建包含這些更改的新版本模塊。
模塊簡介
模塊特點
- 可預測性:模塊必須在ROS中創建後才能使用,您將模塊納入到模板中時,可以瞭解該模塊能解析到哪些資源。
- 可重用性:您可以在多個模板和賬號中使用同一模塊。
- 可追溯性:ROS會跟蹤資源棧中的哪些資源是從模塊創建而成的。資源棧的資源、偏差、更改集中包含相關信息。
- 可管理性:創建模塊後,您可以通過ROS對其進行管理,例如版本控制。
模塊分類
- 公共模塊:公共模塊是資源編排為您提供的可直接使用的模塊。更多信息,請參見查看公共模塊。
-
自定義模塊:自定義模塊是通過控制枱手動創建的模塊。更多信息,請參見管理自定義模塊。
- 共享模塊是一種特殊的自定義模塊。其他用户可以查看和使用您的共享模塊,但無法修改和刪除它。
使用示例
下方示例會把安全組的定義封裝在一個模塊裏,然後在創建資源棧使用這個模塊。
創建模塊
登錄資源編排控制枱。在左側導航欄,選擇資源 > 我的模塊。在我的模塊頁面,單擊創建模塊。
在創建模塊頁面,輸入下方內容。
這個模塊包含一個安全組的定義。
模塊編寫方式與模板基本一致,更多信息可參見模塊開發。
ROSTemplateFormatVersion: '2015-09-01'
Description: 全網安全組配置
Parameters:
SecurityGroupName:
Type: String
VpcId:
Type: String
Resources:
SecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
SecurityGroupIngress:
- PortRange: 22/22
SourceCidrIp: 0.0.0.0/0
IpProtocol: tcp
- PortRange: 80/80
SourceCidrIp: 0.0.0.0/0
IpProtocol: tcp
- PortRange: 443/443
SourceCidrIp: 0.0.0.0/0
IpProtocol: tcp
- PortRange: 3389/3389
SourceCidrIp: 0.0.0.0/0
IpProtocol: tcp
- PortRange: '-1/-1'
SourceCidrIp: 0.0.0.0/0
IpProtocol: icmp
SecurityGroupName:
Ref: SecurityGroupName
SecurityGroupType: normal
VpcId:
Ref: VpcId
在創建模塊頁面右上角,選擇導入/保存模塊 > 保存為新模塊。在保存為新模塊對話框,輸入模塊名稱和模塊描述。單擊確定。
在我的模塊頁面查看模塊。
使用模塊
創建資源棧在左側導航欄,單擊資源棧。在資源棧列表頁面,單擊創建資源棧,然後在下拉列表中選擇使用ROS。
在創建資源棧頁面,輸入下方內容。
這個模板創建了一個VPC,並使用剛才創建的模塊在這個VPC下創建了一個安全組。
模塊使用方式與資源基本一致,更多信息可參見使用模塊。
ROSTemplateFormatVersion: "2015-09-01"
Resources:
Vpc:
Type: ALIYUN::ECS::VPC
Properties:
VpcName: "test-vpc"
CidrBlock: 192.168.0.0/24
Sg:
Type: MODULE::MyOrg::MyApp::SecurityGroup
Version: v1
Properties:
SecurityGroupName: "test-sg"
VpcId:
Ref: Vpc
Outputs:
VpcId:
Value:
Ref: Vpc
SecurityGroupId:
Value:
Ref: Sg.SecurityGroup
單擊下一步。單擊創建。查看資源棧。