I’ve been mucking around with Chef for a week or so. It’s pretty
impressive what I’m seeing so far. Coming from LAMP + Perl land (think
traditional sysadmin stuff) , the learning curve for Chef is a bit
steep, but I’m learning.
I’m interested in using Chef with about 100-200 Linux nodes, and we have
about 10-ish types of hosts (web servers, API, backend, etc). We’ve been
setting up our CentOS servers with Kickstart, then apply shell scripts
to automate deployment.
We want to be able to do something similar with Chef - the goal being,
kickstart a host, then install Chef RPMs, then the host should just
automagically get configured according to its IP, hostname, or some kind
of identifying criteria. Any ideas on how to do this?
So far, the workflow that Chef expects is:
- install chef-client on node.
- chef-client auto-registers itself with either validation cert or
- Use knife to apply role(s) to the newly created node
It’s the manual application of role(s) to the newly created node that I
would like to see automated. I don’t think there’s a way in Chef to set
a rule saying, “if a host is in 10.1.12.* subnet, apply role[a],
role[b], role[z], etc”. If I can figure out this last step, life would
be just awesome.
Thanks in advance for your help.