puppet master slave setup
Solution 1:
It's harder to implement than it really ought to be, but it's definitely possible to centralize your manifests, modules, certificate authority, and dashboard functions without requiring the client nodes to ever communicate with the "central" puppet master.
- Centralize your manifests and modules using a version control system, keeping it synchronized on both puppet master servers.
- Certificate API requests from the clients in site B will need to be proxied by the site B puppet master over to the site A puppet master, as it will be the central certificate authority.
- Site B's puppet master should be configured to send run reports over to the Dashboard service on the Site A master (and optionally inventory data to a central inventory service to make it accessible in the dashboard).
Much of the same ground is covered in further detail by my answer here, as well.
It's a bit of a daunting task to configure all of this to work seamlessly, but you should be able to get there - let me know what questions you have about what's needed.