6. What size organizations should use Puppet?
There is no minimum or maximum organization size that can benefit from Puppet, but there are sizes that are more likely to benefit. Organizations with only a handful of servers are unlikely to consider maintaining those servers to be a real problem, Organizations with many servers are more likely to find, difficult to manage those servers manually so using Puppet is more beneficial for those organizations.
7.How should I upgrade Puppet and Facter?
The best way to install and upgrade Puppet and Facter is via your operating system’s package management system, using either your vendor’s repository or one of Puppet Labs’ public repositories.
If you have installed Puppet from source, make sure you remove old versions entirely (including all application and library files) before upgrading. Configuration data (usually located in/etc/puppet or /var/lib/puppet, although the location can vary) can be left in place between installs.
8.What is the Command to check requests of Certificates from Puppet Agent (Slave) to Puppet Master?
According to me you should mention the command first.
To check the list of Certificate signing requests from Puppet Agent to Puppet Master execute puppet cert list command in Puppet Master.
I will advise you to also add:
If you want to sign a particular Certificate execute: puppet cert sign <Hostname of agent>. You can also sign all the Certificates at once by executing: puppet cert sign all.
9. What is the use of etckeeper-commit-post and etckeeper-commit-pre on Puppet Agent?
Answer to this question is pretty direct just tell the uses of the above commands:
- etckeeper-commit-post: In this configuration file you can define command and scripts which executes after pushing configuration on Agent.
- etckeeper-commit-pre: In this configuration file you can define command and scripts which executes before pushing configuration on Agent.
10. What characters are permitted in a class name? In a module name? In other identifiers?
I will advise you to answer this by mentioning the characters:
Class names can contain lowercase letters, numbers, and underscores, and should begin with a lowercase letter. “::” (Scope Resolution Operator) can be used as a namespace separator.
The same rules should be used when naming defined resource types, modules, and parameters, although modules and parameters cannot use the namespace separator.
Variable names can include alphanumeric characters and underscores, and are case-sensitive.
11.Does Puppet runs on windows?
Yes. As of Puppet 2.7.6 basic types and providers do run on Windows, and the test suite is being run on Windows to ensure future compatibility.
12. Which version of Ruby does Puppet support?
I will suggest you to mention the below points in your answer:
- Certain versions of Ruby are tested more thoroughly with Puppet than others, and some versions are not tested at all. Run ruby –version to check the version of Ruby on your system.
- Starting with Puppet 4, Puppet Agent packages do not rely on the OS’s Ruby version, as it bundles its own Ruby environment. You can install puppet-agent alongside any version of Ruby or on systems without Ruby installed.
- Puppet Enterprise (PE) also does not rely on the OS’s Ruby version, as it bundles its own Ruby environment. You can install PE alongside any version of Ruby or on systems without Ruby installed.
- The Windows installers provided by Puppet Labs don’t rely on the OS’s Ruby version, and can be installed alongside any version of Ruby or on systems without Ruby installed.
13.Which open source or community tools do you use to make Puppet more powerful?
Explain about some tools that you have used along with Puppet to do a specific task. You can refer the below example:
Changes and requests are ticketed through Jira and we manage requests through an internal process. Then, we use Git and Puppet’s Code Manager app to manage Puppet code in accordance with best practices. Additionally, we run all of our Puppet changes through our continuous integration pipeline in Jenkins using the beaker testing framework.
14. Tell me about a time when you used collaboration and Puppet to help resolve a conflict within a team?
Explain them about your past experience of Puppet and how it was useful to resolve conflicts, you can refer the below mention example:
The development team wanted root access on test machines managed by Puppet in order to make specific configuration changes. We responded by meeting with them weekly to agree on a process for developers to communicate configuration changes and to empower them to make many of the changes they needed. Through our joint efforts, we came up with a way for the developers to change specific configuration values themselves via data abstracted through Hiera. In fact, we even taught one of the developers how to write Puppet code in collaboration with us.
15.Can I access environment variables with Facter in Puppet?
I will suggest you to start this answer by saying:
Not directly. However, Facter reads in custom facts from a special subset of environment variables. Any environment variable with a prefix of FACTER_ will be converted into a fact when Facter runs.
Now explain the interviewer with an example:
$ export FACTER_FOO</span>
$ facter | grep ‘foo’</span>
foo => bar
The value of the FACTER_FOO environment variable would now be available in your Puppet manifests as $foo, and would have a value of ‘bar’. Using shell scripting to export an arbitrary subset of environment variables as facts is left as an exercise for the reader.