全部產品
Search
文件中心

Resource Orchestration Service:模板結構說明

更新時間:Sep 05, 2024

模板是一個JSON或YAML格式的文字檔,使用UTF-8編碼。模板用於建立資源棧,是描述基礎設施和架構的藍圖。模板編輯者在模板中定義阿里雲資源和配置細節,並說明資源間的依賴關係。

ROS模板結構

ROSTemplateFormatVersion: '2015-09-01'
Description: 模板描述資訊,可用於說明模板的適用情境、架構說明等。
# 關於模板的中繼資料資訊,例如存放用於可視化的布局資訊。
Metadata: 
# 定義建立資源棧時,使用者可以定製化的參數。  
Parameters: 
# 定義映射資訊表,映射資訊是一種多層的Map結構。
Mappings: 
# 使用內部條件函數定義條件。這些條件確定何時建立關聯的資源。
Conditions: 
# 所需資源的詳細定義,包括資源間的依賴關係、配置細節等。
Resources: 
# 用於輸出一些資源屬性等有用資訊。可以通過API或控制台擷取輸出的內容。
Outputs: 
# 用於檢驗在建立或更新資源棧時傳遞給模板的參數值是否符合預期。
Rules: 

ROSTemplateFormatVersion(必選)

ROS支援的模板版本號碼,目前的版本號:2015-09-01。

Description(可選)

模板的描述資訊。可用於說明模板的適用情境、架構說明等。通常情況下,對模板進行詳細描述,有利於使用者理解模板的內容。

Metadata(可選)

模板編寫者可以使用Metadata來存放與模板相關的中繼資料資訊,內容可以為JSON格式。

Parameters(可選)

定義建立資源棧時,模板使用者可以定製化的參數。通常,模板的編輯者會把ECS的規格設計成一個參數。參數支援預設值。使用參數可以增強模板的靈活性,提高複用性。使用模板建立資源棧時,可以根據實際的評估結果來選擇合適的規格。

更多詳細資料,請參見參數(Parameters)

Mappings(可選)

Mappings定義了一個多層的映射表,可以通過Fn::FindInMap函數來選擇Key對應的值,或根據不同的輸入參數值作為Key來尋找映射表。例如,您可以根據Region不同,自動尋找Region-鏡像映射表,從而找到適用的鏡像。

更多詳細資料,請參見映射(Mappings)

Conditions(可選)

Conditions使用Fn::And、Fn::Or、Fn::Not、Fn::Equals定義條件。多個條件之間使用半形逗號(,)隔開。在建立或更新資源棧時,系統先計算模板中的所有條件,然後再建立資源。建立與true條件關聯的所有資源,忽略與false條件關聯的所有資源。

更多詳細資料,請參見條件(Conditions)

Resources(可選)

用於詳細定義使用該模板建立的資源棧所包含的資源,包括資源間的依賴關係、配置細節等。

更多詳細資料,請參見資源(Resources)

Outputs(可選)

用於輸出一些資源屬性等有用資訊。可以通過API或控制台擷取輸出的內容。

更多詳細資料,請參見輸出(Outputs)

Rules(可選)

用於檢驗在建立或更新資源棧時傳遞給模板的參數值是否符合預期。

更多詳細資料,請參見規則(Rules)

相關操作

關於如何快速的編寫模板,請參見手把手編寫模板