Exported resource concepts
Now that we have PuppetDB configured, we can begin exporting resources into PuppetDB. In Chapter 5, Custom Facts and Modules, we introduced virtual resources. Virtual resources are resources that are defined but not instantiated. The concept with virtual resources is that a node has several resources defined, but only one or a few resources are instantiated. Instantiated resources are not used in catalog compilation. This is one method of overcoming some "duplicate definition" type problems. The concept with exported resources is quite similar; the difference is that exported resources are published to PuppetDB and made available to any node in the enterprise. In this way, resources defined on one node can be instantiated (realized) on another node.
What actually happens is quite simple. Exported resources are put into the catalog_resources
table in the PostgreSQL backend of PuppetDB. The table contains a column named exported
. This column is set to true
for exported...