共用方式為


環境

環境排名第一。 環境會對應至 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]

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

此範例會啟動位於 az://mystorageaccount/mycontainer/${ProjectVersion}/vnet.json 的現有 ARM 範本,並提供 資源輸出 作為變數中的巢狀數據以進行 ARM 部署。

屬性參考

屬性 類型 定義
憑據 繩子 雲端提供者帳戶的名稱
區域 繩子 Azure 資料中心位置,例如 westus2
範本網址 繩子 網路上ARM範本位置的有效URL。 只使用一個 Template* 屬性。
範本內容 繩子 以帶有 @parametername 參照的字串格式讀入模板 JSON。 只使用一個 Template* 屬性。
模板路徑 繩子 與保險箱搭配使用。 將路徑附加至 ARM 範本位置的保險箱。 只使用一個 Template* 屬性。
櫃子 繩子 與 TemplatePath 搭配使用。 支援從保險箱提取ARM範本。
ParameterValues。 ARM 參數 ParameterValues.my-parameter,其中 my-parameter 是參數。 ARM 樣本中的參數支援字串、清單、整數、布爾值。
VariableOverrides。 ARM 變數 VariableOverrides.my-variable,其中 my-variable 是 ARM 範本中的變數名稱。 ARM 樣本中的變數支援字串、清單、整數、布爾值。
ParameterizeVariables 布林值 VariableValues 搭配使用。 在叢集UI功能表和叢集範本中公開ARM範本變數。
VariableValues ARM 變數 請使用 VariableValues.my-variable。 替代 VariableOverrides。 與 ParameterizeVariables 搭配使用。
Azure.ResourceGroup 繩子 用於部署的 Azure 資源群組名稱。
ManagedLifecycle 布林值 與現有部署一起使用。 預設值是「true」。
Name 繩子 結束前資源群組的名稱。
Tags 繩子 除了 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 模板中的輸出名稱。
資源。 在範本中使用 ,${environment-name.Resources.my-resource-name.key1.key2}其中 my-resource-name 是 ARM 範本中的資源名稱,而 key1key2 是資源物件中的相關索引鍵。

參考巢狀資源

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.idenv.resources['my-resource-name'].idenv.resources[MyResourceParam]