Liberate Formula
The liberate formula migrates systems from EL clients such as AlmaLinux, CentOS 7, Oracle Linux 9, Rocky Linux 9, or even Red Hat Enterprise Linux 9 to SUSE Liberty Linux. With this formula the conversion will take place during the client onboarding on SUSE Manager.
1. Install the formula
Install the formula with:
zypper in liberate-formula
2. Configure SUSE Manager
To provide all the software channels for SUSE Liberty Linux on the SUSE Manager Server, proceed as follows.
-
Sign in to SUSE Customer Center at https://scc.suse.com.
-
Navigate to
My Organization
, and select your organization. -
Navigate to
and take note of your organization username and password. -
In the SUSE Manager Web UI, navigate to
to add the credentials to your SUSE Manager Server. -
Click Add new credential, and enter the SUSE Customer Center username and password noted in a previous step.
-
In the SUSE Manager Web UI, navigate to
-
Select the SUSE Liberty Linux Channels that you will use:
-
EL7 LTSS:
SUSE Linux Enterprise Server with Expanded Support LTSS 7 x86_64
-
EL7:
SUSE Linux Enterprise Server with Expanded Support 7 x86_64
-
EL8:
RHEL or SLES ES or CentOS 8 Base
-
EL9:
RHEL and Liberty 9 Base
-
-
Click the top right button Add products.
Initial sychronization can take considerable time. You can check progress by accessing the server machine via SSH and monitoring the logs using:
tail -f /var/log/rhn/reposync/*
-
Note: Activation Keys are the way to register systems and automatically assign them to the required software and configuration channels corresponding to them.
-
In the SUSE Manager Web UI, navigate to
, and click the top right button Create key. -
In the
Activation Key
dialog, set the fields:- Description
-
Enter some text describing the activation key.
- Key
-
Enter the identifier of the key. For example [literal
sll9-default
for EL 9 systems. Note: Keys will have a numeric prefix depending on the organization, so that they are unique. - Usage
-
Leave blank.
- Base Channel
-
Select one base channel:
-
EL7 LTSS:
RES-7-LTSS-Updates for x86_64
-
EL7:
RHEL x86_64 Server 7
-
EL8:
RHEL8-Pool for x86_64
-
EL9:
EL9-Pool for x86_64
-
- Child Channel
-
Include all child channels.
- Add-On system type
-
Leave all blank.
- Contact Method
-
Default
- Universal Default
-
Leave unchecked.
-
Click Create Activation Key.
3. Add Liberate formula and assign it to activation keys
When installed, the formula can be assigned to an Activation Key by creating a System Group:
-
In the SUSE Manager Web UI, navigate to
, and click the Create Group button in top right corner. -
In the dialog, fill in the following data:
- Name
-
liberate
- Description
-
Systems to be converted to SUSE Liberty Linux
-
From the
liberate
System Group page, navigate go to theFormulas
tab. -
Select the
Liberate
formula, and click Save. A new tab calledLiberate
will appear. -
On the
Liberate
tab, you see theReinstall all packages after conversion
option. Keep it checked if you want to reinstall all the packages during the migration. This way you ensure all the packages will have SUSE signatures and no previous package will be kept. If you do not want to change the state of your system during the migration, uncheck this option and click the Save Formula button. In this case, you can re-install the packages later.
Now a system group exists that has assigned the Liberate
formula.
This formula will be applied only once to migrate the system to SUSE Liberty Linux, even if you run it multiple times.
With the next procedure, assign the system group to the Activation Key.
-
In the SUSE Manager Web UI, navigate to
. -
Select the Activation Key, for example
sll9-default
for the EL 9 systems. -
From the Activation Key page navigate to the
tab, select theliberate
group, and click the Join Selected Groups button. The group will be assigned to the Activation Key
-
From the Activation Key page, navigate to the
Details
tab. -
Navigate to the
Configuration File Deployment
section, and checkb theDeploy configuration files to systems on registration
option. -
Click Update Activation Key.
When you register a system with this key it will perform the migration automatically.
4. Register a new system and proceed to the migration
There are two ways to onboard (or register) a new client with the Activation Key:
- With the Web UI and selecting the activation key
-
This is intended for a one-off registration or for testing purposes.
- With a bootstrap script with an assigned activation key
-
This is intended to be used for mass registration.
4.1. Register with the Web UI
Technically, this will start an SSH connection to the client and run the bootstrap script to register it.
-
In the SUSE Manager Web UI, navigate to
. -
In the
Bootstrap Minions
dialog, fill the entries:- Host
-
Hostname of the client to register
- SSH Port
-
Leave blank to use default, which is
22
- User
-
Enter user or leave blank for root
- Authentication Method
-
Select if you want to use
password
or provide aSSH Private Key
-
Password
: password to access the system -
SSH Private Key
: file with the private key -
SSH Private Key Passphrase
: In case a private key was provided that requires a passphrase to unlock, provide it here
-
- Activation Key
-
Select from the menu the activation key to be used, for example
sll9-default
- Reactivation Key
-
Leave blank, it will not be used here
- Proxy
-
Leave as
None
if you are not using a proxy
-
Click the Bootstrap button to start the registration.
A notification will show on top of the page stating that the client is being registered.
4.2. Register with a bootstrap script
-
In the SUSE Manager Web UI, navigate to
. -
Fill the fields of the bootstrap script configuration dialog:
- Uyuni/SUSE Manager server hostname
-
This should be set to the hostname that the client will use to reach the server, as well as the hostname Note: a Certificate will be used associated to this name for the client systems, as it was configured in the initial setup. If it’s changed, a new certificate shall be created
- SSL cert location
-
Path, in the server, to the filename provided as a certificate to register it. Keep it as it is.
- Bootstrap using Salt
-
Select this checkbox to apply salt states, like the one we added via configuration channel. It is required to perform the migration.
- Enable Client GPG checking
-
Select this checkbox to ensure all packages installed come from the proper sources, in this case, SUSE Liberty Linux signed packages.
- Enable Remote Configuration
-
Leave unchecked.
- Enable Remote Commands
-
Leave unchecked.
- Client HTTP Proxy
-
Leave blank. This is in case the client requires a proxy to access the server.
- Client HTTP Proxy username
-
Leave blank.
- Client HTTP Proxy password
-
Leave blank.
-
Click the Update button to refresh the
bootstrap.sh
script.
The bootstrap script generated is reachable via HTTP.
For example, for a server named example.org
it will be at https://example.org/pub/bootstrap/
.
Accessing the server via SSH, the bootstrap script is available in /srv/www/htdocs/pub/bootstrap/
.
-
Make a copy of the bootstrap script generated on the server in
/srv/www/htdocs/pub/bootstrap/
. For example:cd /srv/www/htdocs/pub/bootstrap/ cp bootstrap.sh bootstrap-sll9.sh
-
Edit
bootstrap-sll9.sh
, and add the activation key created earlier. For example,sll9-default
:ACTIVATION_KEYS=sll9-default
-
Run the modified
bootstrap-sll9.sh
script. On the client, as root, run:curl -Sks https://example.org/pub/bootstrap/bootstrap-sll9.sh | /bin/bash
For more information about running bootstrap scripts, see xref:client-configuration:registration-bootstrap.adoc#registering.clients.bootstrap.register[].
-
Apply highstate to migrate the client to SUSE Liberty Linux.
5. For already registered clients
Software channels, system group membership, and formulas can be assigned to any already registered client. This method makes use of the bootstrap script created above for onboarding new systems.
-
In the SUSE Manager Web UI, open the System Details page of any registered client you want to migrate to SUSE Liberty Linux.
-
Click the
Reactivation
tab. If there is already a key listed, you can use it. If not, click Generate New Key, and copy the entire key. The key will start withre-
. -
SSH into this client and set the environment variable to be the key that you copied:
export REACTIVATION_KEY=re-xxxxxxxxxxxxxx
-
Run the bootstrap script you created above, and the system will re-register using the same profile as before, but with the newly assigned SUSE Liberty Linux context.