Środowisko
Środowisko ma rangę 1. Środowisko odpowiada wdrożeniu 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. Te środowiska można odwoływać się z obiektów szablonów CycleCloud.
Chociaż ś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]
Element $
jest odwołaniem do nazwy parametru. Jest ${}
to inny sposób odwoływania się do nazwy parametru i umożliwia odwołanie do środowiska.
Te przykłady spowodują uruchomienie szablonu usługi ARM istniejącego w lokalizacji az://mystorageaccount/mycontainer/${ProjectVersion}/vnet.json jako wdrożenie usługi ARM i pod warunkiem, że zasoby i dane wyjściowe są zagnieżdżone w zmiennej vnet
.
Odwołanie do atrybutów
Atrybut | Typ | Definicja |
---|---|---|
Poświadczenia | Ciąg | Nazwa konta dostawcy usług w chmurze |
Region | Ciąg | Lokalizacja platformy Azure, np. westus2 |
TemplateURL | Ciąg | Prawidłowy adres URL lokalizacji szablonu usługi ARM w Internecie. Użyj tylko jednego atrybutu Template*. |
TemplateContents | Ciąg | Odczytaj kod json szablonu jako ciąg z @parametername odwołaniem. Użyj tylko jednego atrybutu Template*. |
TemplatePath | Ciąg | Do użytku z funkcją Locker. Dołącza ścieżkę do funkcji locker dla lokalizacji szablonu arm. Użyj tylko jednego atrybutu Template*. |
Locker | Ciąg | Do użycia z TemplatePath. Obsługuje ściąganie szablonu ramienia z funkcji locker. |
Parametervalues. | Parametr usługi ARM | ParameterValues.my-parametr, w którym parametr my-parameter jest parametrem. Parametry w szablonach usługi ARM obsługują ciąg, listę, liczby całkowite, wartość logiczną. |
Zmienne przesłonięcia. | Zmienna ARM | VariableOverrides.my zmienna, w której zmienna my-variable jest nazwą zmiennej w szablonie usługi ARM. Zmienne w szablonach usługi ARM obsługują ciąg, listę, liczby całkowite, wartość logiczną. |
ParameterizeVariables | Wartość logiczna | Użyj z wartościami VariableValues. Uwidaczniaj zmienne szablonu usługi ARM w menu interfejsu użytkownika klastra i szablonie klastra. |
VariableValues. | Zmienna ARM | VariableValues.my zmienna. Alternatywa dla zmiennychPrzesłonięcia. Użyj z parametramiVariables. |
Azure.ResourceGroup | Ciąg | Nazwa grupy zasobów platformy Azure do wdrożenia. |
ManagedLifecycle | Wartość logiczna | Do użycia z istniejącym wdrożeniem. Wartość domyślna to „true”. |
Nazwa | Ciąg | Nazwa grupy zasobów przed wyjściem. |
Tagi. | Ciąg | Służy tags.my-tag = my-tag-value do dodawania tagów do grupy zasobów zawierającej wdrożenie oprócz tagów przypisanych do usługi CycleCloud domyślnie. |
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}
Po modelu wdrażania usługi ARM środowiska będą tworzyć zasoby i uwidaczniać te zasoby innym obiektom szablonu klastra do użycia.
Korzystając z ${}
notacji, można następnie odwołać się do utworzonych zasobów usługi ARM w ich natywnym schemacie.
Atrybut | Definicja |
---|---|
Wyjść. | Użyj polecenia as ${environment-name.Outputs.my-output} w szablonie, w którym my-output jest nazwą danych wyjściowych w szablonie usługi ARM. |
Zasoby. | Użyj wartości w ${environment-name.Resources.my-resource-name.key1.key2} formacie w szablonie, w którym my-resource-name jest nazwą zasobu w szablonie usługi ARM i klucz1, klucz2 są powiązanymi kluczami w obiekcie zasobu. |
Odwoływania się do zasobów zagnieżdżonych
Środowiska zarządzane przez usługę CycleCloud są reprezentowane przez zagnieżdżonych struktur danych. Często warto 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}
Indeksy zagnieżdżonych zmiennych mogą zależeć od tworzonego typu zasobu usługi ARM. env.resources.my-resource-name.id
, env.resources['my-resource-name'].id
env.resources[MyResourceParam]
to wszystkie prawidłowe formaty odwołań do zagnieżdżonych zmiennych.