As others already said, there exists exported resources. But IMHO is
puppet not very good for exchanging information between hosts und you
shouldn't use the exported resources much.
Instead you should model your hosts somewhere else, maybe in hiera or
in a complete other DB and transform this model in something puppet can
use.
Puppet is *not* a model of your environment, it's a config management
system, host by host.
Regards
Oli