Udostępnij przez


Środowisko

Środowisko ma rangę 1. Środowisko odpowiada wdrożeniu usługi Resource Manager.

Usługa CycleCloud może teraz zarządzać wdrożeniami usługi Azure Resource Manager przy użyciu szablonów usługi ARM. Możesz odwołać się do tych środowisk z poziomu obiektów szablonu CycleCloud.

Podczas gdy środowisko ma rangę 1, obiekt klastra jest wymagany w pliku szablonu klastra.

Przykład

[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]

$ to odwołanie do nazwy parametru. Element ${} to alternatywny sposób odwoływania się do nazwy parametru i umożliwia odwołanie do środowiska.

W tym przykładzie zostanie uruchomiony szablon ARM istniejący w az://mystorageaccount/mycontainer/${ProjectVersion}/vnet.json jako wdrożenie ARM i udostępnia zasoby oraz dane wyjściowe jako zagnieżdżone dane wewnątrz zmiennej vnet.

Odwołanie do atrybutów

[No changes needed]) Typ Definicja
Dane uwierzytelniające Sznurek Nazwa konta dostawcy usług w chmurze
Rejon Sznurek Lokalizacja platformy Azure, taka jak westus2
TemplateURL Sznurek Prawidłowy adres URL lokalizacji szablonu ARM w sieci. Użyj tylko jednego atrybutu Template*.
Zawartość Szablonu Sznurek JSON szablonu odczytano w formie ciągu z referencją @parametername. Użyj tylko jednego atrybutu Template*.
TemplatePath Sznurek Do użycia z funkcją Locker. Dołącza ścieżkę do funkcji locker dla lokalizacji szablonu usługi ARM. Użyj tylko jednego atrybutu Template*.
Szafka Sznurek Do użycia z TemplatePath. Obsługuje ściąganie szablonu ARM z repozytorium locker.
ParameterValues. Parametr ARM ParameterValues.my-parametr, gdzie my-parametr jest parametrem. Parametry w szablonach ARM obsługują łańcuch znaków, listę, liczby całkowite i typ logiczny.
NadpisaniaZmienne Zmienna ARM VariableOverrides.my-variable, gdzie zmienna my-variable jest nazwą zmiennej w szablonie ARM. Zmienne w szablonach usługi ARM obsługują ciąg, listę, liczby całkowite, wartość logiczną.
ParameterizeVariables logiczny Użyj z VariableValues. Wyświetlaj zmienne szablonu ARM w menu UI klastra i w szablonie klastra.
VariableValues Zmienna ARM Użyj VariableValues.my-variable. Alternatywa dla VariableOverrides. Użyj z ParameterizeVariables.
Azure.ResourceGroup Sznurek Nazwa grupy zasobów platformy Azure do wdrożenia.
ManagedLifecycle logiczny Użyj z istniejącym wdrożeniem. Wartość domyślna to true.
Name Sznurek Nazwa grupy zasobów przed wyjściem.
Tags Sznurek Służy tags.my-tag = my-tag-value do dodawania tagów do grupy zasobów, która zawiera wdrożenie, oprócz tagów przypisanych domyślnie przez CycleCloud.

W przypadku wstępnie istniejących wdrożeń nazwa obiektu środowiska odwołuje się do nazwy wdrożenia usługi ARM.

Korzystanie z zasobów i danych wyjściowych środowiska

[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}

Zgodnie z modelem wdrażania usługi ARM środowiska tworzą zasoby i udostępniają te zasoby innym obiektom szablonu klastra do użycia.

Korzystając z symboliki ${}, możesz odwołać się do utworzonych zasobów ARM w ich ojczystym schemacie.

[No changes needed]) Definicja
Wyjścia. Użyj jako ${environment-name.Outputs.my-output} w szablonie, gdzie my-output jest nazwą danych wyjściowych w szablonie ARM.
Zasoby. Użyj jako ${environment-name.Resources.my-resource-name.key1.key2} w szablonie, gdzie my-resource-name jest nazwą zasobu w szablonie ARM, a key1, key2 są powiązanymi kluczami w obiekcie zasobu.

Odwoływania się do zagnieżdżonych zasobów

CycleCloud reprezentuje środowiska z zagnieżdżoną strukturą danych. Często trzeba odwoływać się do danych w tej strukturze.

[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}

Indeks zagnieżdżonych zmiennych może zależeć od tworzonego typu zasobu ARM. Wszystkie następujące formaty są prawidłowe w przypadku odwołań do zagnieżdżonych zmiennych: env.resources.my-resource-name.id, env.resources['my-resource-name'].idi env.resources[MyResourceParam].