Muito do que você está perguntando se resume à convenção mais do que a requisitos de idioma rigorosos ... A linguagem é flexível o suficiente para fazer as coisas de várias maneiras diferentes.
Se todos os servidores estão sendo configurados da mesma forma, deve funcionar bem para ter uma única classe "gigaspace" com as variáveis definidas no topo.
Se suas necessidades são mais complicadas do que uma única classe de servidor, o que eu faria é criar um módulo "gigaspace" com uma classe comum contendo variáveis herdadas por classes que precisam das variáveis. No gigaspace / manifests, haveria um "init.pp" contendo " class gigaspace {...}
" e, em seguida, um "common.pp" contendo " class gigaspace::common {...}
". Então, em qualquer classe que eu precisasse de acesso a essas variáveis, eu herdaria da classe comum, como " class gigaspace::master inherits gigaspace::common { ... }
".
Se você não herdar da outra turma, é difícil encontrar variáveis em outra turma, especialmente a partir de um modelo. Com uma sequência direta, você pode obter acesso somente leitura especificando o nome inteiro, no entanto.