Файл шаблона кластера CycleCloud

Кластеры CycleCloud определяются в декларативных и иерархических текстовых файлах, называемых шаблонами. Для скачивания доступен ряд примеров шаблонов кластера CycleCloud.

Примечание

Файл шаблона кластера CycleCloud не учитывает регистр на протяжении всего процесса.

Иерархия файлов шаблона кластера CycleCloud

Файл шаблона кластера организован в иерархическую структуру. Каждый раздел определяет первичный объект, а имя объекта отображается в заголовке раздела (например. [cluster my-cluster] Число квадратных скобок представляет ранг, при этом меньше квадратных скобок, указывающих на более высокий ранг. В верхней части иерархии и единственным обязательным объектом в файле шаблона кластера является [cluster] объект. Особый порядок разделов не важен.

[cluster]
  [[node, nodearray]]
    [[[volume]]]
    [[[network-interface]]]
    [[[cluster-init]]]
    [[[input-endpoint]]]
    [[[configuration]]]
[environment]
[noderef]
[parameters]
  [[parameters]]
    [[[parameter]]]

Может [cluster] содержать объект [[node]], который может содержать объект [[[volume]]].

Элемент a [[[volume]]] должен находиться в объекте[[node]], который должен находиться в пределах .[cluster]

Многие объекты соответствуют ресурсам Azure. Например, [[node]] соответствует виртуальной машине Azure, [[[volume]]] соответствует диску Azure и [[[network-interface]]] соответствует сетевому интерфейсу.

Атрибуты объектов

Каждый объект может обладать атрибутами, которые управляют поведением объекта:

[[node my-node]]
Attribute1 = Value1
Attribute2 = Value2

Параметры

Параметры кластера — это переменные, заданные во время создания кластера. Их можно использовать в определении любого атрибута.

[cluster MyCluster]
  Attribute0 = $MyParameter

  [[parameter MyParameter]]
  DefaultValue = 200

Это $ специальный символ, обозначающий значение параметра по имени.

Параметры имеют свойства для определения типа и управления тем, как они представлены в селекторах пользовательского интерфейса кластера. Параметры определяются во время создания кластера, чтобы их можно было задать с помощью флага -p parameter-file.jsonпараметра командной строки или с помощью пользовательского интерфейса кластера.

Специальный анализ

Средство синтаксического анализа шаблонов может обрабатывать определенную логику и специальные определения и обрабатывать функции значений параметров:

Attribute1 = ${ifThenElse(AccessSubnet !== undefined, AccessSubnet, ComputeSubnet)}

Специальный синтаксический анализатор активируется с помощью синтаксиса ${} .

Объекты-шаблоны

В настоящее время поддерживаются объекты шаблонов: