Mass Configuration

Mass configuration is possible with branch servers and terminals.

Branch Server Mass Configuration

Branch servers are configured individually using formulas. If you are working in an environment with many branch servers, you might find it easier to configure branch servers automatically with a pre-defined configuration file, rather than configuring each one individually.

Configure Multiple Branch Servers

Configuring multiple branch servers requires the python-susemanager-retail package, which is provided with SUSE Manager for Retail. Install the python-susemanager-retail package on the Uyuni server.

Procedure: Configuring Multiple Branch Servers
  1. Create a YAML file describing the infrastructure you intend to install. For an example YAML file, see retail-mass-config-yaml.adoc.

  2. On a clean SUSE Manager installation, import the YAML file you have created:

    retail_yaml --from-yaml filename.yaml

    See the retail_yaml --help output for additional options.

If you need to change your configuration, you can edit the YAML file at any time, and use the retail_yaml --from-yaml command to upload the new configuration.

Use empty profiles together with activation keys to onboard all the systems of your infrastructure. Use an activation key to assign the channels listed in retail:retail-install-setup.adoc.

Terminal Mass Configuration

If you are working in an environment with many terminals, you might find it easier to configure the terminals automatically with a pre-defined configuration file, rather than configuring each terminal individually.

You will need to have your infrastructure planned out ahead of time, including the IP addresses, hostnames, and domain names of branch servers and terminals. You will also require the hardware (MAC) addresses of each terminal.

The settings specified in the configuration file cannot always be successfully applied. In cases where there is a conflict, Uyuni will ignore the request in the file. This is especially important when designating hostnames. You should always check that the details have been applied as expected after using this configuration method.

Configure Multiple Terminals

Procedure: Configuring Multiple Terminals
  1. Create a YAML file describing the infrastructure you intend to install, specifying the hardware address for each terminal. For an example YAML file, retail-mass-config-yaml.adoc.

  2. On a clean Uyuni installation, import the YAML file you have created:

    retail_yaml --from-yaml filename.yaml

    See the retail_yaml --help output for additional options.

  3. In the SUSE Manager Web UI, check that your systems are listed and displaying correctly, and the formulas you require are available.

  4. Create activation keys for each of your branch servers, connect them using bootstrap, and configure them as proxy servers. For further information on these steps, see the SUSE Manager documentation.

  5. In the States tab, click Apply Highstate to deploy your configuration changes.

  6. Connect your terminals according to your infrastructure plan.

If you need to change your configuration, you can edit the YAML file at any time, and use the retail_yaml --from-yaml command to upload the new configuration.

If you already have a configuration that you would like to export to a YAML file, use:

retail_yaml --to-yaml filename.yaml

This can be a good way to create a basic mass configuration file. However, it is important to check the file before using it, because some mandatory configuration entries are probably missing.

When you are designing your configuration and creating the YAML file, ensure the branch server ID matches the fully qualified hostname, and the Salt ID. If these do not match, the bootstrap script could fail.