Difference between revisions of "SUSE Manager/bootstrapping-salt-scripted"

From MicroFocusInternationalWiki
Jump to: navigation, search
(Minion Registration using a bootstrap script)
Line 28: Line 28:
== Minion Registration using a bootstrap script ==
== Minion Registration using a bootstrap script ==
1. If needed, regenerate the bootstrap script on the server with the Salt option enabled  
1. If needed, regenerate the bootstrap script on the server with the Salt option enabled  
   <br/> <tt>mgr-bootstrap --salt --script=bootstrap-salt.sh --ssl-cert=RHN-ORG-TRUSTED-SSL-CERT</tt>
   <br/> <tt>mgr-bootstrap --salt --script=bootstrap-salt.sh --ssl-cert='/srv/www/htdocs/pub/RHN-ORG-TRUSTED-SSL-CERT'</tt>
This places the script in <tt>/srv/www/htdocs/pub/bootstrap</tt> by default.
This places the script in <tt>/srv/www/htdocs/pub/bootstrap</tt> by default.

Revision as of 22:05, 24 February 2017

SUSE Manager Main Page

Bootstrap salt minions with bootstrap scripts

Since SUMA 3.0.2, you can create salt-specific bootstrap scripts that can be incorporated into your onboarding or build processes. While there are other ways to onboard a salt minion, this method provides consistency and scalability.


Apply the latest updates to SUSE Manager 3, minimum update required is version 3.0.2.

Required channels

Make sure you have the corresponding product enabled and the channels synced. This must be completed before creating the bootstrap repositories. For example:

  • SLES11 SP4 x86_64
- Product: SUSE Linux Enterprise Server 11 SP4 (x86_64)
- Mandatory channels: sles11-sp4-pool-x86_64, sles11-sp4-suse-manager-tools-x86_64, sles11-sp4-updates-x86_64

In order to check if the channels have finished syncing:

  • Go to "Admin -> Setup Wizard" and look under tab "SUSE Products" You will see a Green indicator and the last sync time for completed products.
  • Go to Channels, and select the channel in question. Under "Basic Information", the "Last Modified" and "Last Repo Build" date/time stamps should agree, and the "Repo Cache Status" must be "Completed"
  • Optionally check the sync log file under /var/log/rhn/reposync/<channel-label>.log

Bootstrap repositories

On the server, create a bootstrap repository for each distribution/architecture with
Ensure that this script finishes properly, and if not, re-check the channel sync. You can optionally include all the channels under the parent with this command option -
mgr-create-bootstrap-repo --with-custom-channels
You can safely re-run this command at any time, and you SHOULD whenever a new version of salt-minion is released, and your tools channel gets updated. The repositories are created under
, and are meant to be used in the registration/bootstrap process only.

Minion Registration using a bootstrap script

1. If needed, regenerate the bootstrap script on the server with the Salt option enabled

mgr-bootstrap --salt --script=bootstrap-salt.sh --ssl-cert='/srv/www/htdocs/pub/RHN-ORG-TRUSTED-SSL-CERT'

This places the script in /srv/www/htdocs/pub/bootstrap by default.

2. Copy this for your specific use case, editing the script to reflect the correct activation key, and any other relevant content. Here are some examples of changes:

a. Add an activation key reference like this:


b. Comment out the removal of the certificate to prevent repository issues. Search for this section and ensure it looks like this:

  #echo  "* removing TLS certificate used for bootstrap"
  #echo "  (will be re-added via salt state)"

This prevents interference in some cases with proper channel certification.

3. Download and run the appropriately edited bootstrap script after completing the edits. The bootstrap script validates installation of the necessary Salt packages, sets the proper activation key, and starts the salt-minion service.

curl -Sks http://<server FQDN>/pub/bootstrap/bootstrap-salt.sh | /bin/bash

The script also creates a file on the minion: /etc/salt/minion.d/susemanager.conf with content that looks like this:

 master: <server FQDN>
       activation_key: "1-11sp4-x86_64"

4. Go to the Server web UI to Salt -> Onboarding and accept the minion's key. After a few minutes, the new minion will appear in your list of systems with the channels assigned in the activation key you specified in the bootstrap process.