I'm currently using kickstart for installing new servers and have run into the following scenario: all the machines will have the same basic setup of packages, however they will each be configured for a specific task. For example, some will be mail-serving machines and won't need things like a web or mySQL server installed. Others will be web servers and do need those packages. So my question is, is there some way do determine via kickstart, what to install on that machine based on some criteria, possibly the IP that's being assigned to it, or MAC address, or something ... Right now I have one single kickstart setup that all the machines are going to use, then I manually install the additional packages one by one, on each machine. It would be helpful if I can somehow tell kickstart to do that. Suggestions?
On 20/01/2015 16:29, Ashley M. Kirchner wrote:> So my question is, is there some way do determine via kickstart, what to > install on that machine based on some criteria, possibly the IP that's > being assigned to it, or MAC address, or something ...If you just want to use kickstart, it would be pretty simple to serve these via HTTP, and have a simple script in PHP or similar that takes the requesting IP and uses it to choose which version of the kickstart to serve. I would suggest that the "right way" would be to kickstart all your machines the same way, and then use a configuration management tool (like Puppet or Chef) to customize them. This approach is likely to be more work, but also more maintainable in the long run.
On Tue, Jan 20, 2015 at 10:41 AM, Tom Grace <lists-in at deathbycomputers.co.uk> wrote:> On 20/01/2015 16:29, Ashley M. Kirchner wrote: >> >> So my question is, is there some way do determine via kickstart, what to >> install on that machine based on some criteria, possibly the IP that's >> being assigned to it, or MAC address, or something ... > > If you just want to use kickstart, it would be pretty simple to serve these > via HTTP, and have a simple script in PHP or similar that takes the > requesting IP and uses it to choose which version of the kickstart to serve. > > I would suggest that the "right way" would be to kickstart all your machines > the same way, and then use a configuration management tool (like Puppet or > Chef) to customize them. This approach is likely to be more work, but also > more maintainable in the long run.Or, if you just want the packages that a custom kickstart would install, use a basic kickstart to bring it up, then run your own script (from an nfs mount, scp'd over, pasted into a command line or whatever you might find easier than learning puppet). The script just needs to determine the rest of the packages needed for this particular server and 'yum install ....' them. -- Les Mikesell lesmikesell at gmail.com
On 01/20/2015 08:41 AM, Tom Grace wrote:> I would suggest that the "right way" would be to kickstart all your > machines the same way, and then use a configuration management tool > (like Puppet or Chef) to customize themSeconded. Personally, I recommend either ansible or bcfg2 over other tools. Puppet has a larger user base, but when I talk to users at conferences (such as LISA), ansible and bcfg2 users tend to like their tools, while an awful lot of people dislike Puppet but use it anyway due to inertia.