Arquivo de modelo de cluster de ciclocloud

Os clusters CycleCloud são definidos em ficheiros de texto declarativos e hierárquicos chamados modelos. Vários modelos de cluster CycleCloud estão disponíveis para download

Nota

O ficheiro de modelo de cluster CycleCloud é um caso insensível em toda a parte.

Hierarquia do arquivo do modelo de cluster de ciclocloud

O ficheiro de modelo de cluster é organizado numa estrutura hierárquica. Cada secção define um objeto primário e o nome do objeto aparece no cabeçalho da secção (por exemplo). [cluster my-cluster] O número de parênteses quadrados representa a classificação, com menos parênteses indicando uma posição mais elevada. O topo da hierarquia, e o único objeto necessário no ficheiro de modelo de cluster é o [cluster] objeto. A ordem específica das secções não é importante.

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

A [cluster] pode conter um [[node]], que pode conter um [[[volume]]].

A [[[volume]]] deve estar dentro de um [[node]], que deve estar dentro de um [cluster].

Muitos objetos correspondem aos recursos de Azure. Por exemplo, [[node]] corresponde ao Azure VM, [[[volume]]] corresponde ao Disco Azure e [[[network-interface]]] corresponde à Interface de Rede.

Atributos de objeto

Cada objeto pode possuir atributos que regem o comportamento do objeto:

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

Parâmetros

Os parâmetros de cluster são variáveis definidas no tempo de criação do cluster. Podem ser usados na definição de qualquer atributo.

[cluster MyCluster]
  Attribute0 = $MyParameter

  [[parameter MyParameter]]
  DefaultValue = 200

É $ um personagem especial para denotar um valor de parâmetro pelo nome.

Os parâmetros têm propriedades tanto para definir o tipo como para controlar a forma como são representados nos seletores de UI do cluster. Os parâmetros são definidos no momento da criação do cluster para que possam ser definidos através da bandeira -p parameter-file.jsondo parâmetro da linha de comando, ou usando o uI do cluster.

Análise Especial

O analisador de modelos é capaz de lidar com determinadas definições lógicas e especiais e funções de processo dos valores dos parâmetros:

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

O analisador especial é ativado com a ${} sintaxe.

Objetos de modelo

Estes são os objetos de modelo atualmente suportados: