Foreman doesn't receive puppet reports with puppet version 4.x

puppet

#1

Hi all,

I install foreman using foreman installer Foreman :: Manual

After installation I execute puppet agent --test in same server to send a first report.

with Ubuntu 16.04 + Foreman 1.16 + Puppet 5 reporting works fine, after install finish you can see the first report from the same machine agent.

with Ubuntu 16.04 + Foreman 1.16 + Puppet 4 reporting does NOT works at all, after install finish, same machine agent is in Host with no reports.

with Ubuntu 16.04 + Foreman 1.15 + Puppet 4 reporting does NOT works at all, after install finish, same machine agent is in Host with no reports.

with Ubuntu 14.04 + Foreman 1.15 + Puppet 3 reporting works fine, after install finish you can see the first report from the same machine agent.

I need to use Puppet 4.x due a serious bug in puppetserver 5.1 which prevent to use filenames with spaces https://tickets.puppetlabs.com/browse/SERVER-1954

I also check manual configuration of reports and seems to be all fine.
https://theforeman.org/manuals/1.16/index.html#3.5.4PuppetReports

Any idea why reports doesn’t work with puppet 4 + Foreman?

Regards
Christian


#2

I was using Foreman 1.16 + puppet 5 for some time with about 100 nodes. Everything works fine util I detect that bug in puppet 5 so I need to downgrade to puppet 4.


#3

https://tickets.puppetlabs.com/browse/SERVER-17 - Long story short: there’s nothing we can do about it (except you applying workarounds stated in that ticket).


#4

ok, that is a good solution, it works for me, I don’t understand why don’t you include it in installation manual.

I’ll copy the solution here for other people with same problem.

Tested in Ubuntu 16.04 LTS

install package
sudo apt-get install libbcprov-java

edit (/etc directory may change depending on the jdk version installed)
sudo nano /etc/java-8-openjdk/security/java.security

insert said provider at the second position - starting around line 69:

security.provider.1=sun.security.provider.Sun
security.provider.2=org.bouncycastle.jce.provider.BouncyCastleProvider
security.provider.3=sun.security.rsa.SunRsaSign
security.provider.4=sun.security.ec.SunEC
security.provider.5=com.sun.net.ssl.internal.ssl.Provider
security.provider.6=com.sun.crypto.provider.SunJCE
security.provider.7=sun.security.jgss.SunProvider
security.provider.8=com.sun.security.sasl.Provider
security.provider.9=org.jcp.xml.dsig.internal.dom.XMLDSigRI
security.provider.10=sun.security.smartcardio.SunPCSC

restart server and it will work


#5

Please add this at least in Troubleshooting area.


#6

Please open a pull request to https://github.com/theforeman/theforeman.org - I had hoped back then, PL would resolve this otherwise (i.e. like they did with Puppetserver 5.x).


#7

Yes of course.
I don’t understand the structure of https://github.com/theforeman/theforeman.org/tree/gh-pages/manuals
Which file should I modify?


#8

Add a file (e.g. 7.4_puppetserver_reports.md) in _includes/manuals/1.16 and add it in manuals/1.16/index.md


#9

PR done