So today, I am talking about server-side facts.
These are facts a client can not and does not gather by itself. They are defined on the puppet server , which is usually the Satellite server running Foreman as well.
Unfortunately, Puppet within satellite does not allow the creation of server-side facts easily. You can set global & smart variables, which can become static and thus provide semi-facts, but nothing really sticks out as being convenient to use.
So far, I haven’t had the need to create server-side facts because my classes would reconfigure themselves easily through smart variables that can be overridden for specific servers, host groups or even globally.
Facts can be declared in a puppet class , but this would be a client-side fact.
Facts can also be declared as a global variable, this is a good example of a server-side fact
Server side facts can include for example: The hostname of your mail-relay, the hostnames of your IDM servers, the NTP/DNS servers, or any other fact really. Some facts are already pushed through by satellite itself: The life cycle environment of a host, the puppet environment, the organization, the host group of the host and a few others. These can be viewed by selecting a host and pushing the “Yaml” button. All custom facts you include yourself by means of global variables are also present in this Yaml display.
Lastly, facts can be declared from the puppet-master configuration directory. Since I never used them, I don’t know if Foreman displays them inside the web-interface or the hammer-interface of the host.
= Mark =