Melhor maneira de excluir nó do manifesto de fantoche

3

Eu gostaria de excluir alguns nós de um manifesto.

Li " Como excluir módulos do Puppet para alguns nós? ", mas eu gostaria de alcançar algo semelhante ao link :

case $hostname {
        yourspecialhost: { $doit = false }
        default: { $doit = true }
}

if $doit {
        dowhatshouldbedoneinhere
}

Como este post é um pouco antigo (2008), eu queria saber se há uma maneira mais curta ou mais limpa de atingir o mesmo objetivo hoje em dia?

Editar : já tentamos ser detalhados, pois temos módulos específicos para servidor da web ou banco de dados. Em nosso caso particular, nós construímos um módulo anos atrás sobre o sshd.

Hoje, eu tenho que construir um servidor com recurso sshd muito incomum (e binário diferente). Portanto, gostaria de excluir este servidor (e somente este) do módulo sshd.

É factível sem o Hiera? Existe uma sintaxe mais limpa do que a citada?

    
por Community 16.12.2013 / 16:37

2 respostas

3

Você provavelmente deseja ser mais detalhado com suas classificações. Por exemplo, seus módulos "catch all" são incluídos no nó padrão definido em sites.pp, módulos que se encaixam em determinadas funções como webserver ou banco de dados podem ser incluídos com uma instrução case e classificadores externos, e módulos específicos para um único servidor podem ser feito com hiera ou mesmo com o nome do host.

link .

    
por 16.12.2013 / 22:11
1

Não encontrei nenhuma sintaxe mais limpa do que a citada (pelo menos não usando Hiera).

Por isso, decidi fazer como citado na pergunta.

Posso confirmar que funciona, mas preferia algo mais limpo.

Moralidade: Quando você escreve um módulo de marionetes, nunca faça a suposição de que ele se aplicará para sempre a todos os servidores da sua produção.

Se eu gravar corretamente, o bcfg2 lidará com essa situação muito melhor.

    
por 19.12.2013 / 14:22

Tags