[chef] RE: Re: Baremetal Provisioning


Chronological Thread 
  • From: Phillip Roberts < >
  • To: " " < >
  • Subject: [chef] RE: Re: Baremetal Provisioning
  • Date: Wed, 4 Sep 2013 16:49:24 +0000
  • Accept-language: en-US

Thank you Mr. Knowles and Mr. Pipes. 

Seems like I had the right idea. Just wanted to make sure there wasn't some 
crazy knife plugin out there that does magic that I don't know about or 
something. 

Appreciate your responses!! 

O-H!! Go Bucks!!

Thanks Again,

Phillip Roberts | Sr. Linux Administrator
San Mateo | Ann Arbor | New York | London
O 734.922.7014 | C 614.423.9871 | www.MyBuys.com


-----Original Message-----
From: Jay Pipes 
[mailto:
 
Sent: Wednesday, September 04, 2013 12:19
To: 

Subject: [chef] Re: Baremetal Provisioning

On 09/04/2013 11:54 AM, Phillip Roberts wrote:
> Does anyone have any good links or pointers to bare metal provisioning?
> I have done plenty of cloud based chef stuff, however, we want to now 
> start managing all of our physical servers with chef as well. I am 
> trying to replace as much of our build system as possible (ad hoc bash 
> / perl scripts) for this provisioning. So I am looking for a good way 
> to do this, I understand chef is not a PXE server, but just how far 
> back in the tool chain can I go?
>
> My thoughts are serving up a kickstart file (since we are a RHEL / 
> Cent based shop) that builds just enough of the OS in order to hand off to 
> chef.
>
> Anyway, any pointers, or past presentations / links would be much 
> appreciated.
>
> Thanks,

Hey there Phillip :)

We use Chef, Cobbler, and a small amount of Python glue code to provision our 
bare metal nodes and network devices (the ones that support modern OSs at 
least ;) -- nodes that run infrastructure services, nodes that run OpenStack 
API and support services, and OpenStack Compute worker nodes (boxen that 
provide tenant-facing compute capacity). Works very well.

We use Ubuntu 12.04 as our base netboot OS, with a simple preseed setup that 
implants our Chef validation keys on a vanilla barebones server OS install, 
and our Python glue code simply calls out to Cobbler and Chef to populate 
node attributes (from a set of YAML files we keep about the nodes in our 
deployment zones), power cycle or netboot nodes, and stuff like that.

All in all, I would say the most pain we've experienced in Chef land has 
probably been around configuring raw network interfaces for bonded NIC setups 
(we've found it virtually impossible to configure networking properly without 
having Chef reboot the server once -- restarting networking just doesn't work 
reliably) and around out-of-order Chef node attribute get/set issues... 
something that isn't helped by the myriad different precedence levels 
associated with attributes for nodes, roles, environments, etc. My advice: 
stick to the "application cookbook" 
strategy (sometimes called "wrapper cookbook" strategy) versus putting any 
logic or much of anything in role definition files.

Best of luck, and Go Bucks! :)
-jay



Archive powered by MHonArc 2.6.16.

§