O Hiera é uma ferramenta para pesquisar dados . Você atribui a ela um nome de chave e percorre seus arquivos de dados e retorna a primeira correspondência (que deve ser a mais específica) que aparece, percorrendo sua hierarquia para baixo.
Usando-o dentro do fantoche , você tem mais opções sobre o que fazer se há mais de um valor para uma chave:
hiera Standard priority lookup. Gets the most specific value for a given key. This can retrieve values of any data type (strings, arrays, hashes) from Hiera. hiera_array Uses an array merge lookup. Gets all of the string or array values in the hierarchy for a given key, then flattens them into a single array of unique values. hiera_hash Uses a hash merge lookup. Expects every value in the hierarchy for a given key to be a hash, and merges the top-level keys in each hash into a single hash. Note that this does not do a deep-merge in the case of nested structures.
Usar hiera
como um ENC para carregar módulos funciona como this (ênfase adicionada):
Note that the hiera_include function uses an array merge lookup to retrieve the classes array; this means every node will get every class from its hierarchy.
Portanto, se você seguiu os documentos e usou hiera_include
, todas as classes especificadas em toda a hierarquia de um nó serão carregadas.
No seu exemplo, assumindo role=dataorigin
e common.yaml
é assim:
---
classes:
- a
Seu site.pp fará com que os módulos workspace
, stdlib
e a
sejam atribuídos ao nó de consulta.