SUSE Manager for Retail is made up of various components. For more on how these components work together, see Network Architecture.

1. The SUSE Manager Server

The SUSE Manager server contains information about infrastructure, network topology, and everything required to automate image deployment and perform day-to-day operations on branches and terminals. This can include database entries of registered systems, Salt pillar data for images, image assignments, partitioning, network setup, network services, and more.

2. Build Hosts

Build hosts can be arbitrary servers or virtual machines. They are used to securely build operating system images.

For more information on build hosts, see 映像构建和管理.

3. Branch Servers

Branch servers should be physically located close to point-of-service terminals, such as in an individual store or branch office. Branch servers provide services for PXE boot, and act as an image cache, Salt broker, and proxy for software components (RPM packages). The branch server can also manage local networking, and provide DHCP and DNS services.

  • For monitoring, you can install Prometheus server on the Branch servers. For visualization and analysis, you can install Grafana with multiple data sources on a dedicated host. For more information about Prometheus and Grafana, see 使用 Prometheus 和 Grafana 进行监视.

4. Point-of-Service Terminals

Point-of-Service (POS) terminals can come in many different formats, such as point-of-sale terminals, kiosks, digital scales, self-service systems, and reverse-vending systems. Every terminal, however, is provided by a vendor, who set basic information about the device in the firmware. SUSE Manager for Retail accesses this vendor information to determine how best to work with the terminal in use.

In most cases, different terminals will require a different operating system (OS) image to ensure they work correctly. For example, an information kiosk has a high-resolution touchscreen, where a cashier terminal might only have a very basic display. While both of these terminals require similar processing and network functionality, they will require different OS images. The OS images ensure that the different display mechanisms work correctly.

SUSE Manager for Retail supports POS terminals that boot using both BIOS and UEFI. For UEFI booting terminals, you will need to configure the EFI partition in the Saltboot formula. For more information on EFI in the Saltboot formula, see Saltboot Formula.

5. Fitting It All Together

SUSE Manager for Retail uses the same technology as SUSE Manager, but is customized to address the needs of retail organizations.

5.1. Hardware Types

Because every environment is different, and can contain many different configurations of many different terminals, SUSE Manager for Retail uses hardware types to simplify device management.

Hardware types allow you to group devices according to manufacturer and device name. Then all devices of a particular type can be managed as one.

5.2. Branch System Groups

SUSE Manager for Retail uses system groups to organize the various devices in your environment.

Each branch requires a system group, containing a single branch server, and the POS terminals associated with that server. Each system group is identified with a Branch ID. The Branch ID is used in formulas and scripts to automatically update the entire group.

5.3. Salt Formulas

SUSE Manager for Retail uses Salt formulas to help simplify configuration. Formulas are pre-written Salt states, that are used to configure your installation.

You can use formulas to apply configuration patterns to your hardware groups. SUSE Manager for Retail uses the Saltboot formula, which defines partitioning and OS images for terminals.

You can use default settings for formulas, or edit them to make them more specific to your environment.

For more information about formulas, see Introduction to Retail Formulas.

5.4. Saltboot

Saltboot is a collection of tools and processes that are used to bootstrap, deploy and validate SUSE Manager for Retail terminals.

Saltboot consists of:

  • Initialization:

    The Saltboot initrd is created during image building and is required for bootstrapping terminals.

  • Saltboot state:

    The Salt state that contains the logic for the entire Saltboot process.

  • Partitioning pillars:

    The Salt pillar structure that describes how terminals are partitioned and what image is deployed on each terminal.

  • Images and boot images pillars:

    When the image building feature in SUSE Manager successfully builds an image that contains the Saltboot initrd, the image and boot image Salt pillars are created.

The Saltboot process involves the SUSE Manager Server, a terminal running the saltboot initrd, and the branch server providing the Saltboot services to the terminal.

For a detailed diagram explaining how the Saltboot boot process works, see Terminal Boot Process (Saltboot Diagram).