I’ve been trying to get a Puppet Agent installed on my OmniOS server for a couple weeks now. There is plenty of information online about how to install the agent on Solaris 11, but none seem to work.
I was eventually able to find information that allows installs on Solaris 10 and 11.
- There is no native Solaris Packages for Solaris so you will need to find a package that is prebuilt. We found one ar OpenCSW. We need to install OpenCSW repository first.
pkgadd -d http://get.opencsw.org/now
- Use the “pkgutil” utility to install Puppet and its dependencies. For me the location of the “pkgutil” was not in my path so I needed to use the full path to the binary. We can add /opt/csw/bin to the path later.
/opt/csw/bin pkgutil –install puppet3
- Once puppet is installed you can join the agent as you would normally. Again, the location of puppet is not in the path, so we need to use the full path to the binary.
/opt/csw/bin/puppet agent -td –server=<server>
- Once everything is setup and the certificates signed, you will see the agent appear in your Foreman Installation. Its interesting to see that the OS is defined correctly, as I expected it to show as Solaris or even OpenSolaris. I believe the model is defined as a Super Server as the Motherboard is a SuperMicro branded Xeon D Board.
In a past job, I worked with another Senior Engineer who was big on Puppet. Before I left to take another position, I was starting to learn Puppet. I continue to try to find time to improve my skills, and as I have a working test lab I started to dig into it again. This coworker was mainly a Linux guy, and I started to dig into Puppet on Windows, but I never go too far.
I’ve started to get my Lab for lack of a better term Puppetified. All nodes went pretty easily once I started to remember what I had done. I’ve been able to get most of my Windows and Linux Nodes online. I have yet to get my OmniOS host online.
To get an Agent Running
- Test -> puppet agent -t
- List and Sign the Cert on the Master – puppet cert list / puppet cert sign <hostname>
- Test Again -> puppet agent -t
- Verify on Foreman (Optional)
To Install on Windows
- Be sure the agent version you are using is not newer than your puppetmaster instance can handle. You will receive an error similar to “puppet the environment must be purely alphanumeric not ‘puppet-ca'”
- Find a working node (Linux in my case) and run ” puppet agent –version”
- Uninstall previous failed puppet installations
- Make sure you have a CNAME of puppet.domain to your puppetmaster server.
Puppet on Windows Server 2016
Windows Server 2016 is currently not supported, but the install can work. I have yet to test additional functionality but I will soon.
- Install the correct puppet agent. In my case this was 3.7.2
- After trying to click on the Puppet Folder in the start menu and finding I was unable, I decided to pull up the command prompt.
- CD to the bin folder for Puppet
- cd “C:\Program Files\Puppet Labs\Puppet\bin”
- Execute the puppet_shell bat file
- Run your typical agent install steps