Ok, so my company was much more amenable to OpenVox than I anticipated, which is great. As a result, I'm delegating a parallel deployment of OpenVox (I already have the puppet deployment fully automated, and if OpenVox is a drop-in replacement, the effort is trivial).
I still need to complete the POC with OSS Puppet, but I wanted to get a bit more insight into the viability of replacing what I've built using OSS Puppet with OpenVox, from a design standpoint.
Here's the design:
• One HAProxy server to route traffic to the catalog compilation servers. (routing/access layer)
• Three catalog compilation servers (One Primary Puppet + CA Master, Two Compile Servers) (I refer to this as the processing layer)
• Two PuppetDBs for indexing and Bolt inventory purposes, as well as reducing DB load. (indexing layer)
• Two PostgreSQL DB Servers (a primary and a warm standby with archives backups going to cloud storage) (data layer)
From a purely Puppet perspective, I only need to account for the processing and indexing layers as far as replacing it with OpenVox, so my main questions would be:
• How does Bolt work in an OpenVox implementation? Would I still use the Puppet Bolt I already have or is there an OpenVox equivalent? (This is vital to the design).
• Same with PuppetDB, really. OpenVox equivalent or use current binary? (This is also vital... mostly because of Bolt)