Registering Ubuntu Clients

This section contains information about registering Salt clients running Ubuntu operating systems.

SUSE Manager supports Ubuntu 16.04 LTS and 18.04 LTS Clients using Salt. Traditional clients are not supported.

Canonical does not endorse or support SUSE Manager.

Supported features:

  • Bootstrapping

  • Synchronizing .deb channels

  • Assigning .deb channels to clients

  • GPG signing .deb repositories

  • Information displayed in System details pages

  • Package install, update, and remove

  • Package install using Package States

  • Configuration and state channels

Bootstrapping is supported for starting Ubuntu clients and performing initial state runs such as setting repositories and performing profile updates.

However, the root user on Ubuntu is disabled by default, so in order to use bootstrapping, you will require an existing user with sudo privileges for Python.

Some actions are not yet supported:

  • Patch and errata support

  • Bare metal installations, PXE booting, and virtual host provisioning

  • Live patching

  • CVE Audit

  • If you use are using a repository from storage media (server.susemanager.fromdir = …​ option in rhn.conf), Ubuntu Client Tools will not work.

Prepare to Register

Some preparation is required before you can register Ubuntu clients to the SUSE Manager Server.

Procedure: Adding client tools channels

Before you begin, ensure you have the Ubuntu product enabled, and have synchronized the Ubuntu channels for SUSE Customer Center:

For Ubuntu 16.04:

  • From the Web UI, add Ubuntu 16.04 and SUSE Linux Enterprise Client Tools Ubuntu 1604 amd64.

  • From the command prompt, add ubuntu-16.04-pool-amd64 and ubuntu-16.04-suse-manager-tools-amd64.

For Ubuntu 18.04:

  • From the Web UI, add Ubuntu 18.04 and SUSE Linux Enterprise Client Tools Ubuntu 1804 amd64.

  • From the command prompt, add ubuntu-18.04-pool-amd64 and ubuntu-18.04-suse-manager-tools-amd64.

The mandatory channels do not contain Ubuntu upstream packages. The repositories and channels for synchronizing upstream content must be configured manually.

In the SUSE Manager Web UI, navigate to Software  Channel List  All. Verify that you have a base channel and a child channel for your architecture.

For example:

  • Base channel: ubuntu-18.04-pool for amd64

  • Child channel: Ubuntu-18.04-SUSE-Manager-Tools for amd64

Procedure: Creating Custom Repositories
  1. On the SUSE Manager Server Web UI, navigate to Software  Manage  Repositories.

  2. Click Create Repository and set these parameters for the main repository:

  3. Click Create Repository

  4. Click Create Repository and set these parameters for the main-updates repository:

  5. Click Create Repository.

When you have created the repositories, you can create the custom channels.

Ensure the custom channels you create have AMD64 Debian architecture.

Your custom channels should use this structure:

  • Parent channel: ubuntu-18.04-pool for amd64

  • Child vendor channel: Ubuntu-18.04-SUSE-Manager-Tools for amd64

  • Child custom channel: ubuntu-18.04-amd64-main

  • Child custom channel: ubuntu-18.04-amd64-main-updates

When you have the channels set up, associate each channel with the appropriate repository, and synchronize then channels.

You need all the new channels fully syncronized before bootstraping any Ubuntu client.

Ubuntu channels can be very large. Synchronization can sometimes take several hours.

There are two ways to check if a channel has finished synchronizing:

  • In the SUSE Manager Web UI, navigate to Admin  Setup Wizard and select the SUSE Products tab.

    This dialog displays a completion bar for each product when they are being synchronized.

  • Check the synchronization log file at the command prompt with tail -f /var/log/rhn/reposync/channel-label.log.

    Each child channel will generate its own log during the synchronization progress. You will need to check all the base and child channel log files to be sure that the synchronization is complete.

Root Access

The root user on Ubuntu is disabled by default. You can enable it by editing the sudoers file.

Procedure: Granting Root User Access
  1. On the client, edit the sudoers file:

    sudo visudo

    Grant sudo access to the user by adding this line to the sudoers file. Replace <user> with the name of the user that will be used to bootstrap the client in the Web UI:

    <user>  ALL=NOPASSWD: /usr/bin/python, /usr/bin/python2, /usr/bin/python3

Register Clients

  1. To register your Ubuntu clients, you will need a bootstrap repository. Create the bootstrap repository at the command prompt, with this command:

    mgr-create-bootstrap-repo --with-custom-channels

For more information on registering your clients, see client-configuration:registration-overview.adoc.