次の方法で共有


環境

環境はランク 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]

これは $ パラメーター名への参照です。 これは ${} 、パラメーター名を参照するもう 1 つの方法であり、環境への参照を許可します。

この例では、arm デプロイとして az://mystorageaccount/mycontainer/${ProjectVersion}/vnet.json に存在する ARM テンプレートを起動し、 リソース出力 を変数内 vnet の入れ子になったデータとして指定します。

属性リファレンス

属性 Type 定義
資格情報 String クラウド プロバイダー アカウントの名前
リージョン String たとえば、Azure の場所。westus2
TemplateURL String WEB 上の ARM テンプレートの場所の有効な URL。 Template* 属性は 1 つだけ使用します。
TemplateContents String テンプレート json を参照する @parametername 文字列として読み取ります。 Template* 属性は 1 つだけ使用します。
TemplatePath String ロッカーと一緒に使用する場合。 arm テンプレートの場所のロッカーにパスを追加します。 Template* 属性は 1 つだけ使用します。
ロッカー String TemplatePath で使用する場合。 ロッカーからアームテンプレートを引っ張るサポート。
ParameterValues。 ARM パラメーター my-parameter がパラメーターである ParameterValues.my パラメーター。 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 リソースを参照できます。

属性 定義
出力。 my-output が ARM テンプレート内の出力の名前であるテンプレートと同様 ${environment-name.Outputs.my-output} に使用します。
リソース my-resource-name が ARM テンプレート内のリソースの名前であるテンプレートと同様 ${environment-name.Resources.my-resource-name.key1.key2} に使用します。key1、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.idenv.resources['my-resource-name'].idenv.resources[MyResourceParam] 入れ子になった変数への参照のすべての有効な形式です。