Eu posso escrever
include '::ntp'
ou eu posso escrever
class { '::ntp':}
Qual é a diferença entre eles ou preciso dos dois?
Existem diferenças, aqui estão duas grandes:
Usar include
permite várias declarações de uma classe. A class
declaração pode ser usada apenas uma vez ou você verá um erro de declaração de recurso duplicado.
include
usará dados externos, por exemplo, hiera, para parâmetros. A declaração class
permite especificar os parâmetros.
Consulte https://puppet.com/docs/puppet/latest/lang_classes.html#the-include-function
Incluir é dizer ao fantoche para aplicar a classe "ntp" a um nó e classe é declarar a classe, o comportamento dessa classe (como garantir arquivo, pacote, usuário etc ...)