共用方式為


環境

環境是排名 1。 環境會對應至Resource Manager部署

CycleCloud 現在可以使用 ARM 範本來管理 Azure Resource Manager部署。 您可以從 CycleCloud 範本物件中參考這些環境。

雖然環境是排名 1,但叢集範本檔案中需要叢集物件。

範例

[environment vnet]
  ManagedLifecycle=true
  TemplateURL = az://mystorageaccount/mycontainer/${ProjectVersion}/vnet.json
  ParameterValues.backendIpAddress1 = 10.0.1.4
  VariableOverrides.virtualNetworkName = azure-vnet

[environment appgateway]
  TemplateURL = https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-application-gateway-waf/azuredeploy.json
  ParameterValues.virtualNetworkName = ${vnet.Parameters.virtualNetworkName}

[environment existing]
  Azure.ResourceGroup = existingrg
  ManagedLifecycle = false

[cluster my-cluster]

$是參數名稱的參考。 ${}是參考參數名稱的另一種方式,並允許參考環境。

此範例會以 ARM 部署的形式在 az://mystorageaccount/mycontainer/${ProjectVersion}/vnet.json 上啟動現有的 ARM 範本,並提供 資源輸出 作為變數內的 vnet 巢狀資料。

屬性參考

屬性 類型 定義
認證 String 雲端提供者帳戶的名稱
區域 String Azure 位置,例如westus2
TemplateURL String Web 上 ARM 範本位置的有效 URL。 只使用一個 Template* 屬性。
TemplateContents String 以具有參考的字串 @parametername 形式讀取範本 json。 只使用一個 Template* 屬性。
TemplatePath String 與保險箱搭配使用。 將路徑附加至 arm 範本位置的保險箱。 只使用一個 Template* 屬性。
櫃子 String 用於 TemplatePath。 支援從保險箱提取 arm 範本。
ParameterValues。 ARM 參數 ParameterValues.my 參數,其中 my-parameter 是參數。 ARM 範本中的參數支援字串、清單、整數、布林值。
VariableOverrides。 ARM 變數 VariableOverrides.my 變數,其中 my-variable 是 ARM 範本中的變數名稱。 ARM 範本中的變數支援字串、清單、整數、布林值。
ParameterizeVariables Boolean 搭配 VariableValues 使用。 在叢集 UI 功能表和叢集範本中公開 ARM 範本變數。
VariableValues。 ARM 變數 VariableValues.my 變數。 VariableOverrides 的替代專案。 搭配 ParameterizeVariables 使用。
Azure.ResourceGroup String 用於部署的 Azure 資源群組名稱。
ManagedLifecycle Boolean 用於現有部署。 預設值為 true。
名稱 String 結束前的資源群組名稱。
標籤。 String 除了 CycleCloud 預設指派的標籤之外,使用 tags.my-tag = my-tag-value 將標籤新增至擁有部署的資源群組。

針對預先存在的部署,環境物件名稱是指 ARM 部署名稱。

使用環境資源和輸出

[environment vnet]
  ManagedLifecycle=true
  TemplateURL = az://mystorageaccount/mycontainer/${ProjectVersion}/vnet.json

[cluster my-cluster]
    [[node proxy]]
        IsReturnProxy = True
        SubnetId = ${vnet.resources.'azure-vnet/ProxySubnet'.id}

在 ARM 部署模型之後,環境會建立資源,並將這些資源公開給其他叢集範本物件以供使用。

${}接著,您可以使用標記法來參考其原生架構中建立的 ARM 資源。

屬性 定義
输出。 如在範本中使用 , ${environment-name.Outputs.my-output} 其中 my-output 是 ARM 範本中的輸出名稱。
資源。 在 my-resource-name 是 ARM 範本和 key1 中資源的名稱時,使用 as ${environment-name.Resources.my-resource-name.key1.key2} ,key2 是資源物件中的相關索引鍵。

參考巢狀資源

CycleCloud 管理的環境是以巢狀資料結構表示。 參考此結構中的資料通常很有用。

[environment db]
TemplateContents = @raw-db-json
ParameterValues.DBName = @DBNameParameter

[cluster my-cluster]
  [[node my-node]]

     SubnetId = ${network.resources.'vnet/ComputeSubnet'.id}

     [[[configuration database]]]
        connection_string = ${db.Outputs.JDBCConnectionString}
        database_id = ${db.resources[ClusterName].id}

巢狀變數的索引可以取決於所建立的 ARM 資源類型。 env.resources.my-resource-name.id env.resources[MyResourceParam]env.resources['my-resource-name'].id 是巢狀變數參考的所有有效格式。