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. |
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 to use bootstrapping, you will require an existing user with sudo
privileges for Python.
Prepare to Register
Some preparation is required before you can register Ubuntu clients to the SUSE Manager Server.
Before you begin, ensure you have the Ubuntu product enabled, and have synchronized the Ubuntu channels for SUSE Customer Center:
You can do this from Web UI or using command prompt, at your choice.
For Ubuntu 16.04:
-
From the Web UI, add
Ubuntu 16.04
andSUSE Linux Enterprise Client Tools Ubuntu 1604 amd64
. -
From the command prompt, add
ubuntu-16.04-pool-amd64
andubuntu-16.04-suse-manager-tools-amd64
.
For Ubuntu 18.04:
-
From the Web UI, add
Ubuntu 18.04
andSUSE Linux Enterprise Client Tools Ubuntu 1804 amd64
. -
From the command prompt, add
ubuntu-18.04-pool-amd64
andubuntu-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
. Verify that you have a base channel and a child channel for your architecture.For example, for Ubuntu 18.04:
-
Base channel:
ubuntu-18.04-pool for amd64
-
Child channel:
Ubuntu-18.04-SUSE-Manager-Tools for amd64
You need to manually create three repositories:
-
For main
-
For main updates
-
For main security
These examples are for Ubuntu 18.04 (bionic).
Make sure you change the values to match the Ubuntu version you want to use.
You will also need to replace
with a valid mirror.ubuntumirror.example.com
-
On the SUSE Manager Server Web UI, navigate to
. -
Click Create Repository and set these parameters for the
main
repository:-
In the
Repository Label
field, typeubuntu-bionic-main
. -
In the
Repository URL
field, typehttp://ubuntumirror.example.com/ubuntu/dists/bionic/main/binary-amd64/
. -
In the
Repository Type
field, selectdeb
. -
Leave all other fields as the default values.
-
-
Click Create Repository
-
Navigate to
. -
Click Create Repository and set these parameters for the
main-updates
repository:-
In the
Repository Label
field, typeubuntu-bionic-main-updates
. -
In the
Repository URL
field, typehttp://ubuntumirror.example.com/ubuntu/dists/bionic-updates/main/binary-amd64/
. -
In the
Repository Type
field, selectdeb
. -
Leave all other fields as the default values.
-
-
Click Create Repository.
-
Navigate to
. -
Click Create Repository and set these parameters for the
main-security
repository:-
In the
Repository Label
field, typeubuntu-bionic-main-security
. -
In the
Repository URL
field, typehttp://ubuntumirror.example.com/ubuntu/dists/bionic-security/main/binary-amd64/
. -
In the
Repository Type
field, selectdeb
. -
Leave all other fields as the default values.
-
-
Click Create Repository.
When you have created the repositories, you can create the custom channels, one for each repository:
-
On the SUSE Manager Server Web UI, navigate to
. -
Click Create Channel and set these parameters for the entitlement certificate.
-
In the
Channel Name
field, typeUbuntu 18.04 LTS AMD64 Main
. -
In the
Channel Label
field, typeubuntu-1804-amd64-main
. -
In the
Parent Channel
field, selectubuntu-18.04-pool for amd64
. -
In the
Architecture
field, selectAMD64 Debian
. -
In the
Repository Checksum Type
field, selectsha1
. -
In the
Channel Summary
field, typeUbuntu 18.04 LTS AMD64 Main
. -
In the
Organization Sharing
field, selectPublic
.
-
-
Click Create Channel.
-
Navigate to
. -
Click Create Channel and set these parameters for the entitlement certificate.
-
In the
Channel Name
field, typeUbuntu 18.04 LTS AMD64 Main Updates
. -
In the
Channel Label
field, typeubuntu-1804-amd64-main-updates
. -
In the
Parent Channel
field, selectubuntu-18.04-pool for amd64
. -
In the
Architecture
field, selectAMD64 Debian
. -
In the
Repository Checksum Type
field, selectsha1
. -
In the
Channel Summary
field, typeUbuntu 18.04 LTS AMD64 Main Updates
. -
In the
Organization Sharing
field, selectPublic
.
-
-
Click Create Channel.
-
Navigate to
. -
Click Create Channel and set these parameters for the entitlement certificate.
-
In the
Channel Name
field, typeUbuntu 18.04 LTS AMD64 Main Security
. -
In the
Channel Label
field, typeubuntu-1804-amd64-main-security
. -
In the
Parent Channel
field, selectubuntu-18.04-pool for amd64
. -
In the
Architecture
field, selectAMD64 Debian
. -
In the
Repository Checksum Type
field, selectsha1
. -
In the
Channel Summary
field, typeUbuntu 18.04 LTS AMD64 Main Security
. -
In the
Organization Sharing
field, selectPublic
.
-
-
Click Create Channel.
Your custom channels should use this structure, at
(example for Ubuntu 18.04:-
Base channel (vendor):
ubuntu-18.04-pool for amd64
-
Child custom channel:
Ubuntu 18.04 LTS AMD64 Main
-
Child custom channel:
Ubuntu 18.04 LTS AMD64 Main Updates
-
Child custom channel:
Ubuntu 18.04 LTS AMD64 Main Security
-
Child vendor channel:
Ubuntu-18.04-SUSE-Manager-Tools for amd64
When you have the channels set up, associate each channel with the appropriate repository, and synchronize then channels (optionally configure scheduled syncronization).
To do this, proceed to
, and for each channel you created, click on it and:-
Navigate to the
Repositories
-
Navigate to the
Sync
and click Sync Now to begin synchronization immediately. -
You can also setup a scheduled syncronization from this screen.
You need all the new channels fully synchronized before bootstrapping any Ubuntu client. |
.
The |
-
At the command prompt on the SUSE Manager Server, as root, install the
spacewalk-utils
package:zypper in spacewalk-utils
-
Add the Ubuntu channels.
For Ubuntu 16.04:
spacewalk-common-channels \ ubuntu-1604-amd64-main \ ubuntu-1604-amd64-main-updates \ ubuntu-1604-amd64-main-security
For Ubuntu 18.04:
spacewalk-common-channels \ ubuntu-1804-amd64-main \ ubuntu-1804-amd64-main-updates \ ubuntu-1804-amd64-main-security
When you have the channels set up, associate each channel with the appropriate repository, and synchronize them. You can also configure a synchronization schedule.
To manually synchronize the channels, navigate to
. Click each channel in the list, and:-
Navigate to the
Repositories
tab. -
Navigate to the
Sync
subtab. -
Click Sync Now to begin synchronization immediately.
-
You can also create a synchronization schedule from this screen.
Ubuntu channels can be very large. Synchronization can sometimes take several hours. |
When you have the channels set up, associate each channel with the appropriate repository, and synchronize then channels (optionally configure scheduled syncronization).
To do this, proceed to
, and for each channel you created, click on it and:-
Navigate to the
Repositories
-
Navigate to the
Sync
and click Sync Now to begin synchronization immediately. -
You can also setup a scheduled syncronization from this screen.
Monitor Synchronization Progress
There are two ways to check if a channel has finished synchronizing:
-
In the SUSE Manager Web UI, navigate to
and select theSUSE 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.
-
On the client, edit the
sudoers
file:sudo visudo
Grant
sudo
access to the user by adding this line to thesudoers
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
This procedure grants root access without requiring a password, which is required for registering the client.
When the client is successfully installed it will run with root privileges, so the access is no longer required.
We recommend that you remove the line from the |
Register Clients
-
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.