Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
Applies to SUSE Linux Enterprise Point of Service 11 SP3 and SUSE Linux Enterprise Point of Service 12 Image Server

3 Setting Up an Image Building Server

The Image Building Server is the machine used for building custom image files for Point of Service systems. It is possible to combine the functions of Administration Server and Image Building Server on a single machine. However, if you have a large system and want to offload the image building function from the Administration Server, you can set up a dedicated Image Building Server on a separate machine. It is also recommended to separate the Image Building Server for security reasons. Image building under root privileges can affect the Administration Server.

To install a dedicated Image Building Server, select the Image Server (IS) pattern during installation, but not the Admin Server (AS) pattern. For a SLE12-based installation, select the SLEPOS_Image_Server pattern. For more information about the installation process, see Chapter 2, SUSE Linux Enterprise Point of Service Installation.

Note
Note: /var/lib/SLEPOS/ on Btrfs Subvolume

The /var/lib/SLEPOS/ directory can be hundreds of megabytes in size. If the directory does not reside on a Btrfs subvolume, zypper will include it into snapshots. To prevent this from happening and save disk space, make sure that the directory is placed on a Btrfs subvolume.

3.1 Types of Images

To help get you started, SUSE Linux Enterprise Point of Service comes with a set of pre-built image files that you can customize to set up your own system. Every Point of Service terminal requires two images: a boot image and a system image. You can also create your own images using Image Creator or KIWI. For more information, refer to Section 8.1, “Building Images with the Image Creator Tool” and Section 9.2, “Building Images with KIWI”.

3.1.1 Boot Images

The boot images contain the kernel and a bootstrap image (initrd), providing the minimum your Point of Service terminals need to initially start up from a bootable CD or USB flash drive, or from the network (via remote boot technology). The following boot image templates are available:

netboot

The template creates all the files and directories (including partitioning and boot loader installation) required to boot diskful and diskless terminals from the network over PXE and DHCP. The kernel and the initrd are stored at Branch Servers and they are downloaded to terminals using TFTP.

This is the only type of image that supports all SUSE Linux Enterprise Point of Service features including the wireless support and encryption.

isoboot

The template creates all the files and directories required to boot diskless and preinstalled disk-equipped systems from CD or DVD. This boot image must be combined with a system image to create a CD or DVD that can be used to boot the Point of Service terminal.

This type of image should be only used for terminals never connected to network and Branch Server.

oemboot

The oemboot image has same functions as the isoboot image, but is used for booting terminals from USB flash drives and similar media. Should be only used for terminals never connected to network and Branch Server.

Additionally, oemboot image can be used for server installation (Branch Server, Administration Server or Combo Server images). It deploys the OEM preload image onto the selected storage device.

The oemboot image does not include features like wireless support or encryption.

3.1.2 System Images

The following system image templates are specially designed for the most common types of retail Point of Service terminals:

Minimal

The Minimal image contains only the runtime environment for native-code applications (C and C++) and the ncurses library for non-graphical user interface support. The Minimal image supports only console-based applications. It is stripped down to be as small as possible by using "delete packages" feature. Deleted packages provide other packages with some functionality, that is, as a consequence, not available in the Minimal image by default. If such functionality is needed, depending packages shall be installed. Support includes only building, deployment and booting of the Minimal image. This template will be available only in Image Creator and is considered experimental.

JeOS

The JeOS image is slightly larger than the Minimal image, however, it is fully supported.

Graphical

The Graphical image includes the features of the Minimal image and essential graphical interface capabilities (the X Window System and a lightweight Window Manager), and the ability to run Java programs. It supports console-based C/C++ applications, Java programs in a Java2 runtime environment, X11 applications, and basic browser-based applications.

The Java Web browser plugin must be explicitly enabled. To enable it, the following packages must be included: java-1_6_0-ibm-alsa, java-1_6_0-ibm-devel, java-1_6_0-ibm-fonts, java-1_6_0-ibm-jdbc, and java-1_6_0-ibm-plugin. They are commented out in the default config.xml.

Branchserver

The Branchserver image is a specialized image which can be used for deploying a Branch Server instead of using the standard method (installing SUSE Linux Enterprise Server with the SUSE Linux Enterprise Point of Service add-on and manual configuration of the Branch Server).

The provided image is suitable for online installation, where the terminal images and LDAP data are downloaded from the Administration Server. For offline installation the terminal images and OIF files must be added to the Branch Server image before building.

For more information, see Section 5.6, “Installing a Branch Server Using a Specialized Image”.

Administration Server and Combo Server

Image templates for fast installation of the Administration Server or the combination of Administration Server and Branch Server are also included.

All system images are based on SUSE Linux Enterprise Server. You can extend Point of Service system images to include add-on features such as:

  • Advanced Linux Sound Architecture (ALSA) library for audio support,

  • additional device drivers,

  • GNOME or KDE desktop environments,

  • IBM™ Java technology support,

  • Firefox and other Web browsers,

  • Samba 3 Client for SMB/CIFS connectivity to Microsoft™ Windows™ servers,

  • VNC 4 Remote Control Client for remotely controlling the terminal.

System images that you create are initially stored on the Administration Server (or on the Image Building Server if you have chosen to set up a dedicated Image Building Server). Before you deploy your Point of Service terminals, transmit the system images via rsync to specific directories on the Branch Server from where they can be downloaded to Point of Service terminals at boot time.

When a Point of Service terminal is started for the first time, it performs a PXE boot (or boots from CD or USB flash drive) and then registers with the Branch Server to obtain the information it needs to download its system image. The TFTP service on the Branch Server automatically delivers the matching system image to the Point of Service terminal.

To make this work as designed, you must create reference objects in the LDAP directory for the types of Point of Service terminals you intend to deploy in your system. For detailed information, refer to Section 4.6.2, “Creating Point of Service Terminal Objects in LDAP”. Correctly creating and configuring these objects during the installation of the Branch Servers saves you from separately managing the start-up of each Point of Service terminal.

3.2 Preparing Source Repositories

The default package repository for image building is provided by a SUSE SMT server. SUSE Linux Enterprise Point of Service is already preconfigured for an SMT server running on the same machine as the SUSE Linux Enterprise Point of Service Image Building Server. When the connection to the SUSE package and update server has been set up, image building will work out of the box.

The SMT server should be installed according to the SMT documentation (http://www.suse.com/documentation/smt11/). It can be installed either on the Image Building Server machine (then the image building works out of the box) or on a separate machine available in the network (using HTTP protocol).

The image configuration file config.xml contains repository aliases, for example {SLES 11 SP3 i386}. These aliases are mapped to repository urls via the /etc/kiwi/repoalias file. It is also possible to use the repository URLs directly without aliasing, as in the previous SUSE Linux Enterprise Point of Service releases. The repository URLs must point to a repository of rpm-md type. /etc/kiwi/repoalias has the following format for describing URL aliases:

#SLES SP3 repository 
{SLES 11 SP3 i386}  http://smt_host/repo/$RCE/SLES11-SP3-Pool/ 
# SLES SP3 update 
{SLES 11 SP3 i386 update}  http://smt_host/repo/$RCE/SLES11-SP3-Updates/ 
[...]

The following SMT channels should be configured: SLES, SLES-Updates, SLEPOS, SLEPOS-Updates.

3.2.1 Running SMT on the Image Building Server

SUSE Linux Enterprise Point of Service is already preconfigured for an SMT server running on the Image Building Server machine. When the connection to the SUSE package and update server has been set up, image building will work out of the box. No special configuration is necessary.

This is the full list of repositories (in rpm-md format) required for building an SP3 image (i586 repositories for terminals and x86_64 repositories for servers):

  • /srv/www/htdocs/repo/$RCE/SLES11-SP3-Pool/sle-11-arch,

  • /srv/www/htdocs/repo/$RCE/SLES11-SP3-Updates/sle-11-arch,

  • /srv/www/htdocs/repo/$RCE/SLE11-POS-SP3-Pool/sle-11-arch,

  • /srv/www/htdocs/repo/$RCE/SLE11-POS-SP3-Updates/sle-11-arch.

3.2.2 Running SMT on a Separate Machine

Besides the default of installing the SMT server on the same machine as the Image Building Server, the SMT server can on a separate machine. If a separate machine is used, the local paths to the image repositories must be changed to URLs pointing to the SMT machine, for example:

/srv/www/htdocs/repo/$RCE/SLE11-POS-SP3-Updates/sle-11-arch

must be changed to:

http://server.name/repo/$RCE/SLE11-POS-SP2-Updates/sle-11-arch

This is the full list of repositories (in rpm-md format) required for building an SP3 image (i586 repositories for terminals and x86_64 repositories for servers):

  • http://server.name/repo/$RCE/SLES11-SP3-Pool/sle-11-arch,

  • http://server.name/repo/$RCE/SLES11-SP3-Updates/sle-11-arch,

  • http://server.name/repo/$RCE/SLE11-POS-SP3-Pool/sle-11-arch,

  • http://server.name/repo/$RCE/SLE11-POS-SP3-Updates/sle-11-arch.

3.2.3 Using SUSE Linux Enterprise Server and SUSE Linux Enterprise Point of Service Media Directly to Create an SMT Repository

It is possible to use the SUSE Linux Enterprise Server and SUSE Linux Enterprise Point of Service media directly to create an SMT repository. The media can be mounted to a directory or copied. The following example of the image configuration should be changed to point to the used directories. The repository type should be set to yast2:

<!--   SLE REPOSITORY -->
<repository type="yast2">
 <source path="/var/lib/SLEPOS/dist/SLES-11-SP3-DVD-i586-DVD1"/>
</repository>
<!--   SLEPOS REPOSITORY -->
<repository type="yast2">
 <source path="/var/lib/SLEPOS/dist/SLE-11-SP3-POS-i586-x86_64-DVD1"/>
</repository>

It is however strongly recommended to also add the update repositories, using SMT as described above or by creating a plain directory repository manually (for details see KIWI documentation).

Note
Note: Configuring Repositories in YaST Image Creator

The repository configuration can also be changed in YaST Image Creator. In this case, the repository type is detected automatically.