Cool Solution - Default pxe-rollout for unknown clients

From Univention Wiki

Revision as of 17:45, 30 December 2013 by Orrego (talk | contribs) (→‎Introduction)
Jump to: navigation, search
Produktlogo UCC Version 1.0

Note: Cool Solutions are articles documenting additional functionality based on Univention products. Not all of the shown steps in the article are covered by Univention Support. For questions about your support coverage contact your contact person at Univention before you want to implement one of the shown steps.

Also regard the legal notes at Terms of Service.


Introduction

This Article show how to perform an UCC roll out from a PXE server (that is not necessarily UCS).

The default way to roll out new clients in UCC is to register them in an UCS DHCP with an static IP address. The PXE configuration for the UCC is afterwards connected to this IP for individual option. The clients are usually joined to the UCS domain at the end of the roll out. All unknown clients (which means: clients which UCS doesn't know the IP or their IP is not related to an UCC object) will fall back to the default PXE configuration. In UCS, the default is to boot from a local device.

In some scenarios one might want to boot unknown clients also by PXE:

  • The DHCP services is no connected to UCS
  • DHCP is configured to give IP addresses from a given range

A typical goal is a "mass rollout" of clients in a defined "deploy subnet".

Recommended procedure

The default configuration for clients is stored in the file /var/lib/univention-client-boot/pxelinux.cfg/default. It's recommended to make a backup of this file, the default configuration is documented in #Examples.

To generate a new configuration the recommended way is to configure an example UCC object in UCC and copy the configuration file. The individual configuration files are generated also under "/var/lib/univention-client-boot/pxelinux.cfg/", using the "Hex" representation of their IP addresses. For example, the file for a client with IP "10.202.35.22" will be named with its equivalent Hexadecimal value: "0ACA2316".

Within the PXE configuration file, UCC retrieves many initial settings which will be used during the rollout, like:

  • IP Address of the needed Servers (all per default set to the local UCS system)
    • Image-Server (NFS)
    • DNS Server
    • syslog Server
  • Name of the Image
  • Further parameters given in UDM (like "force partitioning")

Finally, if we want new UCC clients unknown to the UCS system, to be rolled out at boot, we could simply create the 'default' configuration as a copy from a configured client, for example:

cp /var/lib/univention-client-boot/pxelinux.cfg/0ACA2316 \
   /var/lib/univention-client-boot/pxelinux.cfg/default

Examples

default: boot from local harddisk

DEFAULT local
LABEL local
LOCALBOOT 0

Rollout default UCC Thin Client image

The given Rollout Server in this example is "10.202.35.1".

PROMPT 0
DEFAULT UCC
IPAPPEND 3 

#Make sure this is all the same line:
APPEND root=/dev/nfs nfsroot=10.202.35.1:/var/lib/univention-client-boot DNSSERVER=10.202.35.1 vga=788 initrd=ucc-1.0-rev2-thinclient-image.img.initrd keyboard=us locale=de_DE.UTF-8:UTF-8 timezone=Europe/Berlin syslog=y syslogserver=10.202.35.1 loglevel=0 splash boot=ucc ucc=rollout image=ucc-1.0-rev2-thinclient-image.img repartition=y force_partition_timeout=2 

LABEL UCC
     KERNEL ucc-1.0-rev2-thinclient-image.img.kernel
Personal tools