To challenge an assumption, what are you gaining from having more than one puppet infrastructure (puppetservers+puppetdb)?
Could you perhaps handle your dev stuff with another environment or set of puppetservers under the same CA with the same puppetdb?
Is there any reason for a separate puppet infrastructure to live longer than it takes to proof an upgrade for production?
Am Donnerstag, 19. April 2018 19:18:34 UTC+2 schrieb Christopher Wood:To challenge an assumption, what are you gaining from having more than one puppet infrastructure (puppetservers+puppetdb)?
Could you perhaps handle your dev stuff with another environment or set of puppetservers under the same CA with the same puppetdb?
Is there any reason for a separate puppet infrastructure to live longer than it takes to proof an upgrade for production?
I can't just throw away the dev infra after preparing changes for prod because of non-technical reasons. i'm limiting the usage of the dev system as much as I can, but there will be system connected to this dev infra. but I also want the data in the prod puppetdb to have a single point to make queries/reports (third party departments) or run octocatalog-diff to run against real facts from any system.
Another usecase could be to have a async puppetdb connection from the second datacenter. If the connection between the datacenters is not stable enough to use a single puppetdb I would need to add a puppetdb per DC.Then I also would want to sync data to the central puppetdb instance.
If I'm understanding you right, you could normally use the
import/export tools for this:
https://puppet.com/docs/puppetdb/5.0/anonymization.html#using-the-export-command
There's a corresponding "admin" API on PuppetDB you can search
for. The process would be to do an export, extract the resulting
tarball and remove everything but reports (if desired), then tar
it up again and run it through the import tool. Unfortunately
though, this is broken for me on current PDB due to PDB-3796. If
you're on an older version it may be worth a try -- it worked at
some point. If you've got the bug it'll cause your dev server to
OOM and restart.
Assuming that's broken for you too, I think the most tractable way to do what you're asking is basically what you're suggesting -- either parse the yaml reports into the report wire format (https://puppet.com/docs/puppetdb/5.1/api/wire_format/report_format_v8.html) and post to your prod PDB's commands endpoint (https://puppet.com/docs/puppetdb/5.1/api/command/v1/commands.html) or get the json reports out of your dev PuppetDB, in batches to work around the bug, and do the equivalent parsing/posting. The wire formats change from time to time so take care to use whatever version of the docs aligns with your PDB version.
Wyatt
--
- Thomas
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/d5a3b811-655f-4497-84de-a5693954d08e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Another usecase could be to have a async puppetdb connection from the second datacenter. If the connection between the datacenters is not stable enough to use a single puppetdb I would need to add a puppetdb per DC.Then I also would want to sync data to the central puppetdb instance.Is that an actual use case or a hypothetical one?