Compartilhar via


Configuração do Cluster

Os objetos de configuração são classificados 3 e subordinados a node e nodearray. O objeto de configuração define as propriedades configuráveis para o código de configuração que é executado nos nós e nas configurações do Projeto CycleCloud .

Atributos de objeto

Os atributos de objeto de configuração se comportam como outros objetos, mas são estendidos para fornecer definições aninhadas. Internamente, as seções de configuração são mescladas, portanto, pode haver um número arbitrário de seções.

Nenhuma aspa é necessária para cadeias de caracteres ou para expressões boolianas, verdadeiras ou falsas.

[[[configuraton my-project]]]
Attribute1 = Value1
Attribute2 = Value2
KeyAttribute3.Attribute3 = true

[[[configuraton cyclecloud.mounts.mount1]]]
Attribute1 = Value1

Configurações com suporte

O CycleCloud dá suporte a vários objetos de configuração padrão. Esses objetos com suporte estão contidos no nome cyclecloud.

[[[configuration cyclecloud]]]

O CycleCloud dá suporte à configuração parametrizada de muitos serviços do sistema.

Atributo Type Descrição
maintenance_converge.enabled Boolean Os nós do CycleCloud são reconfigurados a cada 20 minutos para garantir que estejam no estado correto. Há momentos em que talvez você não queira que esse seja o comportamento padrão, como quando você está testando e atualizando manualmente a configuração em um nó. Definir esse valor como false fará com que o nó se configure apenas uma vez. Padrão: true
node.prevent_metadata_access Boolean Impede que usuários, além do usuário raiz ou usuário do cyclecloud, acessem os metadados da VM do nó. Essas regras de acesso são aplicadas em iptables. Padrão: true
timezone String O fuso horário de um nó pode ser alterado definindo esse atributo como qualquer cadeia de caracteres de fuso horário válida, por exemplo PST, EST. Padrão: UTC
ntp.disabled Boolean Opt-out do serviço de tempo ntp definindo true. Padrão: false
ntp.servers Lista (cadeia de caracteres) Uma lista de servidores NTP a serem usados. Padrão: pool.ntp.org
keepalive.timeout Integer A quantidade de tempo em segundos para manter um nó "vivo" se ele não tiver terminado de instalar/configurar software. Padrão: 14400 (4 horas)
Detectável Boolean Se esse nó pode ou não ser "descoberto" (pesquisado) por outros nós iniciados pelo CycleCloud. Padrão: false
autoscale.forced_shutdown_timeout Integer A quantidade de tempo (em minutos) antes de um desligamento forçado ocorrer se o dimensionamento automático não puder reduzir o nó com êxito. Padrão: 15
security.limits Integer Somente Linux. Os limites a serem aplicados ao nó. Domínio, tipo e item podem ser especificados para qualquer valor válido definido. Padrões: security.limits.\*.hard.nofile = 524288 e security.limits.\*.soft.nofile = 1048576
Montagens Aninhado Para exportação e montagem de NFS e montagem de volume.
selinux.policy String Somente Linux. Ignorar uma política imposta selinux para imagens personalizadas. Já desabilitado em imagens principais do CycleCloud.
install_epel Boolean Adicione o repositório de pacotes estendidos para yum na imagem variante do RedHat. Padrão: true
disable_rhui Boolean Opt-out das configurações do repositório Red Hat. Padrão: false
ganglia.install Boolean Recusar a instalação de ganglias definindo false. Padrão: true
fail2ban.enabled Boolean Opt-out da instalação fail2ban definindo false. Padrão: true
dns.domain String Use nsupdate para forçar uma atualização dinâmica de registro DNS. Somente útil quando permitido pela política DNS, e o cluster está usando um servidor DNS que permite atualizações dinâmicas. Padrão: nil
dns.alias String Use nsupdate para forçar uma atualização dinâmica de registro DNS. Somente útil quando permitido pela política DNS, e o cluster está usando um servidor DNS que permite atualizações dinâmicas. Padrão: nil
replace_sudoers Boolean Permitir que o Cyclecloud gerencie a configuração sudoers. Desabilitar pode interferir nos serviços de usuário ou agendador. Padrão: true
Atributo Type Descrição
keepalive.timeout Integer A quantidade de tempo em segundos para manter um nó "vivo" se ele não tiver terminado de instalar/configurar software. Padrão: 14400 (4 horas)
Detectável Boolean Se esse nó pode ou não ser "descoberto" (pesquisado) por outros nós iniciados pelo CycleCloud. Padrão: false
security.limits Integer Somente Linux. Os limites a serem aplicados ao nó. Domínio, tipo e item podem ser especificados para qualquer valor válido definido. Padrões: security.limits.\*.hard.nofile = 524288 e security.limits.\*.soft.nofile = 1048576
Montagens Aninhado Para exportação e montagem de NFS e montagem de volume.
selinux.policy String Somente Linux. Ignorar uma política imposta selinux em instâncias de cluster. Padrão: nil
dns.domain String Use nsupdate para forçar uma atualização dinâmica de registro DNS. Somente útil quando permitido pela política DNS, e o cluster está usando um servidor DNS que permite atualizações dinâmicas. Padrão: nil
dns.alias String Use nsupdate para forçar uma atualização dinâmica de registro DNS. Somente útil quando permitido pela política DNS, e o cluster está usando um servidor DNS que permite atualizações dinâmicas. Padrão: nil
samba.enabled Boolean Somente Linux. Instala o Samba em um arquivador para uso com nós de execução do Windows. Padrão: false

[[[configuration cyclecloud.cluster]]]

O namespace CycleCloud cluster contém configurações para serviços distribuídos e aplicativos clusterizados.

Atributo Type Descrição
autoscale.idle_time_after_jobs Integer Os nós serão encerrados se estiverem ociosos pelo tempo especificado (em segundos) após executarem trabalhos. Padrão: 1800
autoscale.idle_time_before_jobs Integer Os nós serão encerrados se estiverem ociosos pelo tempo especificado (em segundos) antes de executarem trabalhos. Padrão: 1800
autoscale.stop_interval Integer Atraso de tempo entre execuções de verificações de parada automática (em segundos). Padrão: 60.
autoscale.use_node_groups Boolean Habilitar nós agrupados – equivalente a grupos de posicionamento. Afeta apenas clusters PBSPro e Grid Engine . Padrão: true

[[[configuration cyclecloud.hosts.standalone_dns]]]

O CycleCloud configurará o arquivo /etc/hosts para conter um grande conjunto de hosts para que a resolução de nome reverso e encaminhado seja funcional. Essas configurações atuam para operar como substituição de DNS configurada nos nós individuais, não gerenciados centralmente, portanto chamado de DNS autônomo.

Atributo Type Descrição
Habilitado Boolean Habilitar o gerenciamento do arquivo etc hosts. Padrão: true.
alt_suffix String Substitua o nome de domínio padrão da VNET. Exemplo: contoso.com
sub-redes Lista (cadeia de caracteres) Lista de blocos CIDR para resolução de nomes autônomos estendidos.

Por padrão, o CycleCloud inspecionará a interface de rede e redigirá o arquivo /etc/hosts para incluir hosts na máscara de sub-rede. Intervalos adicionais podem ser adicionados usando o subnets atributo.

[[[configuration cyclecloud.hosts.standalone_dns]]]
alt_suffix = my-domain.local
subnets = 10.0.1.0/24, 10.0.5.0/24

Para substituir e desabilitar o serviço autônomo:

[[[configuration ]]]
cyclecloud.hosts.standalone_dns.enabled = false

[[[configuration cyclecloud.mounts]]]

Um subdomínio significativo da configuração de cyclecloud são montagens. Cada seção de montagem nomeada corresponde a uma entrada em /etc/fstab.

Um exemplo de uma seção de montagem chamada primary.

  [[[configuration cyclecloud.mounts.primary]]]
    type = nfs
    mountpoint = /usr/share/lsf
    export_path = /mnt/raid/lsf
    options = hard,proto=tcp,mountproto=tcp,retry=30,actimeo=3600,nolock
    address = 10.0.0.14

Importante

O nome da seção de montagem correlaciona-se ao mount atributo de um [[[volume]]] objeto.

Atributo Type Descrição
type String O atributo de tipo deve ser definido para nfs todas as exportações de NFS para diferenciar de montagens de volume e outros tipos de sistema de arquivos compartilhados.
export_path String O local da exportação no arquivador NFS. Se um export_path não for especificado, a mountpoint montagem será usada como .export_path
fs_type String Tipo de sistema de arquivos a ser usado. Por exemplo ext4, xfs.
Mountpoint String O local em que o sistema de arquivos será montado depois que qualquer configuração adicional for aplicada. Se o diretório ainda não existir, ele será criado.
cluster_name String O nome do cluster CycleCloud que exporta o sistema de arquivos. Se não estiver definido, o cluster local do nó será assumido.
address String O nome de host explícito ou endereço IP do sistema de arquivos. Se não estiver definido, a pesquisa tentará localizar o sistema de arquivos em um cluster CycleCloud.
opções String Todas as opções não padrão a serem usadas ao montar o sistema de arquivos.
desabilitado Boolean Se definido como true, o nó não montará o sistema de arquivos.
raid_level Integer O tipo de configuração RAID a ser usado quando vários dispositivos/volumes estão sendo usados. O padrão é um valor de 0, ou seja, RAID0, mas outros níveis de raid podem ser usados como 1 ou 10.
raid_device_symlink String Quando um dispositivo raid é criado, especificar esse atributo criará um link simbólico para o dispositivo raid. Por padrão, esse atributo não é definido e, portanto, nenhum symlink é criado. Isso deve ser definido nos casos em que você precisa de acesso ao dispositivo de ataque subjacente.
dispositivos Lista (cadeia de caracteres) Esta é uma lista de dispositivos que devem compor o mountpoint. Em geral, esse parâmetro não deve ser especificado (como CycleCloud definirá isso para você com base nas seções [[[volume]]]), mas você pode especificar manualmente os dispositivos, se assim desejar.
vg_name String Os dispositivos são configurados no Linux usando o LVM (Logical Volume Manager). O nome do grupo de volumes será atribuído automaticamente, mas nos casos em que um nome específico é usado, esse atributo pode ser definido. O padrão é definido como cyclecloud-vgX, em que X é um número atribuído automaticamente.
lv_name String Os dispositivos são configurados no Linux usando o LVM (Logical Volume Manager). Esse valor é atribuído automaticamente e não precisa de especificação, mas se você quiser usar um nome de volume lógico personalizado, ele pode ser especificado usando esse atributo. Assume o padrão de lv0.
ordem Integer Ao especificar uma ordem, você pode controlar a ordem na qual os pontos de montagem são montados. O valor de pedido padrão para todos os pontos de montagem é 1000, exceto para 'efêmero', que é 0 (efêmero é sempre montado primeiro por padrão). Você pode substituir esse comportamento caso a caso, conforme necessário.
encryption.bits Integer O número de bits a serem usados ao criptografar o sistema de arquivos. Os valores padrão são 128 ou 256 bits de criptografia AES. Esse valor será necessário se a criptografia for desejada.
encryption.key String A chave de criptografia a ser usada ao criptografar o sistema de arquivos. Se omitida, uma chave aleatória de 2048 bits será gerada. A chave gerada automaticamente é útil para quando você está criptografando discos que não persistem entre reinicializações (por exemplo, criptografar dispositivos efêmeros).
encryption.name String O nome do sistema de arquivos criptografado, usado ao salvar chaves de criptografia. cyclecloud_cryptXO padrão é, em que X é um número gerado automaticamente.
encryption.key_path String O local do arquivo no qual a chave será gravada no disco. /root/cyclecloud_cryptX.keyO padrão é, em que X é um número gerado automaticamente.

[[[configuration cyclecloud.exports]]]

Semelhante às montagens, os nós do CycleCloud podem ser configurados como servidores NFS se a receita do servidor estiver habilitada. A seção Exportar corresponde à entrada /etc/exports .

Um exemplo de uso de exportações com um objeto de exportação chamado nfs_data:

[[[configuration cyclecloud.exports.nfs_data]]]
type = nfs
export_path = /mnt/exports/nfs_data
writable = false
Atributo Type Descrição
type String NECESSÁRIO O atributo de tipo deve ser definido para nfs todas as exportações de NFS para diferenciar de outros tipos de sistema de arquivos compartilhados.
export_path String O caminho local para exportar como um sistema de arquivos NFS. Se o diretório ainda não existir, ele será criado.
proprietário String A conta de usuário que deve ser dona do diretório exportado.
group String O grupo do usuário que deve possuir o diretório exportado.
mode String As permissões padrão do sistema de arquivos no diretório exportado.
network String A interface de rede na qual o diretório é exportado. Padrão para todos: *.
sync Boolean Opção de exportação síncrona/assíncrona. Assume o padrão de true.
gravável Boolean A opção de exportação ro/rw para o sistema de arquivos. Assume o padrão de true.
opções String Todas as opções não padrão a serem usadas ao exportar o sistema de arquivos.

[[[configuration]]]

Um número limitado de opções de configuração está disponível sem namespace, geralmente por motivos herdados.

Atributo Type Descrição
http_proxy String O nome do host ou endereço IP do servidor proxy a ser usado no nó (por exemplo, 10.10.10.10)
https_proxy String O nome do host ou endereço IP do servidor proxy HTTPS a ser usado no nó. (por exemplo, 10.10.0.1)
no_proxy String Uma lista separada por vírgulas de nomes de host ou endereços IP para os quais não usar um servidor proxy. Padrão: 169.254.169.254 para permitir o acesso aos metadados do Azure