在Puppet中,'include'和'class'有什么区别?

我可以写

include '::ntp' 

或者我可以写

 class { '::ntp':} 

他们之间有什么区别,还是我需要两个?

有差异,这里有两个大的:

使用include可以允许多个类的声明。 class声明只能使用一次,否则会看到重复的资源声明错误。

include将使用外部数据,例如hiera,参数。 声明class允许您指定参数。

请参阅https://docs.puppetlabs.com/puppet/latest/reference/lang_classes.html#using-include

包括告诉puppet将类“ntp”应用到节点, 是声明类,这个类的行为(如确保文件,包,用户等)