Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

RSS

pxe_dust (20) Versions 1.0.1

Configures local bootstrapping and installing operating systems via PXE booting.

Berkshelf/Librarian
Policyfile
Knife
cookbook 'pxe_dust', '= 1.0.1'
cookbook 'pxe_dust', '= 1.0.1', :supermarket
knife cookbook site install pxe_dust
knife cookbook site download pxe_dust
README
Dependencies
Quality

Description

Installs and configures a tftpd server for serving Ubuntu installers over PXE and setting them to run a provided preseed.cfg.

Requirements

Written and tested with Chef 0.9.14 and Ubuntu 10.10.

Attributes

Attributes under the pxe_dust namespace.

  • ["pxe_dust"]["arch"] - Architecture of the netboot.tar.gz to use as the source of pxeboot images.
  • ["pxe_dust"]["tftpboot"] - Path of the tftpboot directory used for sharing images.
  • ["pxe_dust"]["version"] - Ubuntu version of the netboot.tar.gz to use as the source of pxeboot images.
  • ["pxe_dust"]["user"]["fullname"] - Full name of the default user, default "Ubuntu".
  • ["pxe_dust"]["user"]["username"] - Username of the default user, default "ubuntu".
  • ["pxe_dust"]["user"]["crypted_password"] - SHA512 password for the default user, default nil. This must be generated and added as an attribute or you won't be able to login.

Templates

syslinux.cfg.erb

Sets the boot prompt to automatically run the installer.

txt.cfg.erb

Sets the URL to the preseed file.

preseed.cfg.erb

The preseed file is full of opinions, you will want to update this. If there is a node providing an apt-cacher proxy via the [apt::cacher] recipe, it is provided in the preseed.cfg.

Recipes

Default

The default recipe passes through to pxe_dust::server.

Server

The server includes the apache2 recipe and installs the tftpd-hpa package.

The recipe does the following:

  1. Downloads the proper netboot.tar.gz to boot from.
  2. Untars it to the tftpboot directory.
  3. Instructs the installer prompt to automatically install.
  4. Passes the URL of the preseed.cfg to the installer.
  5. Uses the preseed.cfg template to pass in any apt-cacher proxies.

Usage

Create a role, pxe_server.

name "pxe_server"
description "PXE Dust Boot Server"
run_list("recipe[pxe_dust::server]")
default_attributes(
  "pxe_dust" => {
    "user" => {
      "username" => "ubuntu",
      "fullname" => "Ubuntu",
      "crypted_password" => "$6$Trby4Y5R$bi90k7uYY5ImXe5MWGFW9kel2BnMCcYO9EnwngTFIXKG2/nWcLKTJZ3verMFnpFbITI9.eHwZ.HR1UPeKbCAV1"
)

On an Ubuntu system, the password can be generated by installing the mkpasswd package and running:

mkpasswd -m sha-512

The example above is the hash of the password ubuntu, if you'd like to test. This attribute must be set to a valid sha-512 hash of the password or you will not be able to log in.

This cookbook does not provide DHCP or bootp to listen for PXE boot requests, this URL will have to be provided by another cookbook or manually. The author had to do this manually on a DD-WRT router.

Side note, for DD-WRT bootp support this forum post was followed. The key syntax was

dhcp-boot=pxelinux.0,,192.168.1.147

in the section Additional DNSMasq Options where the IP address is that of the tftpd server we're configuring here and pxelinux.0 is from the netboot tarball.

License and Author

Author:: Matt Ray matt@opscode.com Author:: Joshua Timberman joshua@opscode.com

Copyright:: 2011 Opscode, Inc

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Dependent cookbooks

apache2 >= 0.0.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

No quality metric results found