Red Hat Training
A Red Hat training course is available for Red Hat Satellite
Quick Start Guide
Installing, configuring, and provisioning physical and virtual hosts from Red Hat Satellite Servers.
Red Hat Satellite Documentation Team
satellite-doc-list@redhat.com
Abstract
Chapter 1. Should You Use This Guide?
The Quick Start Guide enables you to install and configure your Satellite Server based on a set of assumptions about your environment. This includes setting up the required topology and providing all of the configuration information needed to provision hosts on your network.
You should use this guide if the following assumptions apply to your environment:
- You are performing a fresh installation of Red Hat Satellite.
- You will have a single Satellite Server deployment.
- You can connect to the Red Hat Content Network to obtain packages and receive updates.
- You have an existing external DNS server that you want to connect to Satellite Server.
- Your environment does not use DHCP, or uses external DHCP services.
- You have an existing host that you want to register to Satellite to use for patching.
- You want to use PXE-less discovery to provision hosts.
- You use a kickstart-based deployment.
- Your deployment uses simple Content Views.
- You are using IPv4.
Some of the tasks in this guide use example information. You should ensure that you use values that are specific to your environment.
If your environment does not fit with these assumptions, you can use the following resources to assist you with installing Satellite Server:
Chapter 2. Preparing for Satellite Server Installation
2.1. Creating a Red Hat Enterprise Linux Host
Before you can install and configure Satellite Server, you must have created a Red Hat Enterprise Linux host. Red Hat Enterprise Linux 7 is recommended for better performance, although Red Hat Enterprise Linux 6 is also supported. The examples in this guide reference Red Hat Enterprise Linux 7.
Creating a Red Hat Enterprise Linux Server 7
- Install the latest version of Red Hat Enterprise Linux Server 7, using either the @Core or @Base package set. To install the Linux host, see the Red Hat Enterprise Linux 7 Installation Guide.
2.2. Preparing Your Environment for Installation
Before you install and configure Satellite Server, you should ensure that your environment meets the requirements for installation, including meeting storage requirements, and ensuring that network ports and firewalls are open and configured. For more information, see the Red Hat Satellite 6.2 Installation Guide.
Chapter 3. Installing Satellite Server
3.1. Registering to Red Hat Subscription Management
Registering the host to Red Hat Subscription Management enables the host to subscribe to and consume content for any subscriptions available to the user. This includes content such as Red Hat Enterprise Linux, Red Hat Software Collections (RHSCL), and Red Hat Satellite.
Register your Satellite Server, using your user name and password.
# subscription-manager register Username: Password: The system has been registered with ID: 541084ff2-44cab-4eb1-9fa1-7683431bcf9a
3.2. Identifying and Attaching the Satellite Subscription to the Host
After you have registered your host, you need to identify your Satellite subscription Pool ID. The Pool ID enables you to attach the required subscription to your host. The Satellite subscription provides access to the Satellite content, as well as Red Hat Enterprise Linux, Red Hat Software Collections (RHSCL), and Red Hat Satellite. This is the only subscription required.
To identify your Satellite subscription, enter the following command:
# subscription-manager list --all --available
The outputs displays something similar to the following:
Subscription Name: Red Hat Satellite Provides: Red Hat Satellite 6 Red Hat Enterprise Linux Server Red Hat Satellite Red Hat Enterprise Linux Load Balancer (for RHEL Server) SKU: MCT0370 Pool ID: 8a85f9874152663c0541943739717d11 Available: 3 Suggested: 1 Service Level: Premium Service Type: L1-L3 Multi-Entitlement: No Ends: 10/07/2014 System Type: Physical
- Make a note of the Pool ID so that you can attach it to your Satellite host. Your Pool ID will be different than the example provided.
To attach your subscription to your Satellite Server, enter the following command, using your Pool ID:
# subscription-manager attach --pool=8a85f9874152663c0541943739717d11
The outputs displays something similar to the following:
Successfully attached a subscription for: Red Hat Satellite
To verify that the subscriptions are successfully attached, enter the following command:
# subscription-manager list --consumed
The outputs displays something similar to the following:
+-------------------------------------------+ Consumed Subscriptions +-------------------------------------------+ Subscription Name: Red Hat Satellite Provides: Red Hat Satellite Red Hat Enterprise Linux Server Red Hat Software Collections (for RHEL Server) Red Hat Satellite Red Hat Satellite 6 Red Hat Software Collections (for RHEL Server) Red Hat Satellite Capsule Red Hat Enterprise Linux Load Balancer (for RHEL Server) Red Hat Satellite with Embedded Oracle Red Hat Satellite Capsule Red Hat Enterprise Linux High Availability (for RHEL Server) SKU: MCT0370 Contract: 10293569 Account: 5361051 Serial: 1653856191250699363 Pool ID: 8a85f9874152663c0541943739717d11 Active: True Quantity Used: 1 Service Level: Premium Service Type: L1-L3 Status Details: Starts: 10/08/2013 Ends: 10/07/2014 System Type: Physical
3.3. Configuring Repositories
Disable all existing repositories.
# subscription-manager repos --disable "*"
Enable the Red Hat Satellite and Red Hat Enterprise Linux and Red Hat Software Collections repositories.
The following example uses Red Hat Enterprise Linux 7.
# subscription-manager repos --enable rhel-7-server-rpms \ --enable rhel-server-rhscl-7-rpms \ --enable rhel-7-server-satellite-6.2-rpms
NoteIf you are using a different version of Red Hat Enterprise Linux, change the repository based on your specific version.
Clear out any metadata.
# yum clean all
Verify that the repositories have been enabled.
# yum repolist enabled
3.4. Installing Satellite Server
Install the Satellite Server package.
# yum install satellite
Install Satellite Server and perform the initial configuration.
# satellite-installer --scenario satellite \ --foreman-initial-organization "$ORG" \ --foreman-initial-location "$LOCATION" \ --foreman-admin-password redhat \ --capsule-puppet true \ --foreman-proxy-puppetca true \ --foreman-proxy-tftp true \ --enable-foreman-plugin-discovery
3.5. Configuring the Hammer CLI
You can create saved credentials so that you do not have to type them in each time you issue a command. You can also configure the server so that the admin
user defaults to logging into a specific organization and location.
Create the
~/.hammer/cli_config.yml
file if it does not already exist.# mkdir ~/.hammer # touch
~/.hammer/cli_config.yml
To protect your password, make sure the file is only readable by the current user. For example, if you plan to issue hammer commands as root, execute the following command.
# chmod 600 ~/.hammer/cli_config.yml
Add the following content to the file.
:foreman: :host: 'https://satellite.example.net/' :username: 'admin' :password: 'redhat'
ImportantDo not use tabs in your
~/.hammer/cli_config.yml
file. Always use indentation by spaces.Configure the
admin
user to default to logging in to the specified organization and location.# hammer user update --login admin \ --default-location-id 1 \ --default-organization-id 1 \ --locations "$LOCATION" \ --organizations "$ORG"
3.6. Creating a Manifest
- Go to the Red Hat Customer Portal and log in.
- Click SUBSCRIPTIONS.
- In the Red Hat Subscription Management section, click Satellite.
- Click Register a Satellite.
- In the Name field, type Satellite_Server_example.
- Select Satellite 6.2 as the version and click Register.
- Click Attach a subscription.
- Select the check box for each subscription that you want to attach and specify the number of subscriptions.
Click Attach Selected.
It can take several minutes for all the subscriptions to attach.
- Click Download Manifest and save the manifest file to a known location.
3.7. Uploading a Manifest to Your Satellite Server
Uploading a Manifest Using the Web UI
- Verify that you are in the correct Organization.
- Click Content → Red Hat Subscriptions.
- Click Manage Manifest to open the Subscriptions page.
- Click Browse, select the manifest file you created, and click Open.
- Click Upload to upload the manifest to the Satellite Server.
Uploading a Manifest Using Hammer CLI
Upload a manifest to Satellite Server.
# hammer subscription upload \ --organization-label org_label \ --file path_to_manifest
Chapter 4. Associating Objects with the Default Organization and Location
4.1. Creating a New Domain
For Web UI Users
Navigate to Infrastructure → Domains and click New Domain. The UI provides a set of fields where you can input details for the domain:
In the Domain tab:
-
Name - The domain name. In this example, this is "
example.com
". -
Description - A plain text description of the domain. For this example:
ACME’s example domain
. - DNS Capsule - The capsule to use for DNS assignments. For this example, use the Satellite Server’s Integrated Capsule.
-
Name - The domain name. In this example, this is "
In the Locations tab:
-
Select the locations that use this domain. For example, select the
New York
location.
-
Select the locations that use this domain. For example, select the
In the Organizations tab:
-
Select the organizations that use this domain. For example, select
ACME
.
-
Select the organizations that use this domain. For example, select
For CLI Users
Create the domain with the following command:
# hammer domain create --name "example.com" \ --description "ACME's example domain" \ --dns_id 1 --locations "New York" \ --organizations "ACME"
In this example, the --dns-id
option uses 1, which is the ID of the Satellite Server’s Integrated Capsule.
4.2. Associating the Domain with the Default Organization
Associating the Domain with the Default Organization Using the Web UI
- On the Main Menu, click Infrastructure → Domains.
- Select the domain in the Description column.
- On the Locations tab, click Default_Location to add it to the Selected items list.
- On the Organizations tab, click Default_Organization to add it to the Selected items list.
- Click Submit.
Associating the Domain with the Default Organization Using Hammer ClI
Associate the domain to your organization.
$ hammer organization add-domain --name $ORG --domain domain_name
Associate the domain to your location.
$ hammer location add-domain --name $LOCATION --domain domain-name
4.3. Configuring the Subnet
Configuring the Subnet Using the Web UI
- On the Main Menu, click Infrastructure → Subnets.
Click New Subnet and enter the information specific to your environment.
If you use DHCP, enter the following information:
- Name: Provisioning_Net
- Network address: 172.17.13.0
- Network mask: 255.255.255.0
- Gateway Address: 172.17.13.1
- Primary DNS Server: 172.17.13.2
- Secondary DNS Server: Leave blank
- IPAM: None
- Start of IP Range: 172.17.13.100
- End of IP Range: 172.17.13.150
- VLAN ID: Leave blank
- Boot Mode: DHCP
If you use static IP addresses, enter the following information:
- Name: Provisioning_Net
- Network address: 172.17.13.0
- Network mask: 255.255.255.0
- Gateway Address: 172.17.13.1
- Primary DNS Server: 172.17.13.2
- Secondary DNS Server: Leave blank
- IPAM: None
- Start of IP Range: 172.17.13.100
- End of IP Range: 172.17.13.150
- VLAN ID: Leave blank
- Boot Mode: Static
- Click Submit.
- Click Provisioning_Net to edit the subnet.
- On the Domains tab, select example.org.
- On the Capsules tab, change the TFTP and Discovery Proxy capsule to reflect the host name of the Satellite Server.
- On the Locations tab, select Default_Location under All items to associate the domain with the default location.
- On the Organizations tab, select Default_Organization under All items to associate the domain with the default organization.
Configuring the Subnet Using Hammer CLI
Create a subnet.
Create a subnet using DHCP.
# hammer subnet create --name Provisioning_Net \ --organizations 'RedHat' \ --locations 'RDU' \ --domain-ids 1 \ --boot-mode DHCP \ --network 172.17.13.0 \ --mask 255.255.255.0 \ --ipam None \ --dns-primary 172.17.13.1 \ --gateway 172.17.13.1 \ --from 172.17.13.100 \ --to 172.17.13.150 \ --tftp-id 1
Create a subnet using static IP addresses.
# hammer subnet create --name Provisioning_Net \ --organizations 'RedHat' \ --locations 'RDU' \ --domain-ids 1 \ --boot-mode Static \ --network 172.17.13.0 \ --mask 255.255.255.0 \ --ipam None \ --dns-primary 172.17.13.1 \ --gateway 172.17.13.1 \ --from 172.17.13.100 \ --to 172.17.13.150 \ --tftp-id 1
NoteYou cannot set the discovery proxy using Hammer CLI.
Chapter 5. Importing Subscriptions and Synchronizing Content
5.1. Enabling Red Hat Repositories
You must enable the required Red Hat repositories to support provisioning a Red Hat Enterprise Linux host.
You should select the appropriate release for your environment. This task enables the following repositories:
- Red Hat Enterprise Linux Server (Kickstart): This allows Satellite to kickstart a host.
- Red Hat Enterprise Linux Server (RPMs): This provides ongoing content and errata.
- Red Hat Enterprise Linux Server - Satellite Tools (RPMs): This provides supporting software, such as Puppet and katello-agent.
Enabling Red Hat Enterprise Linux 7 Server Repositories Using the Web UI
- Select Content → Red Hat Repositories.
- On the Kickstarts tab, go to Red Hat Enterprise Linux Server → Red Hat Enterprise Linux 7 Server (Kickstart) and select the Red Hat Enterprise Linux 7 Server Kickstart x86_64 7.2 repository.
- On the RPMs tab, go to Red Hat Enterprise Linux Server → Red Hat Enterprise Linux 7 Server (RPMs) and select the Red Hat Enterprise Linux 7 Server RPMs x86_64 7 Server repository.
- Navigate to Red Hat Enterprise Linux Server → Red Hat Enterprise Linux 7 Server - Satellite Tools (RPMs) - Satellite Tools (RPMs) and select the Red Hat Enterprise Linux 7 Server - Satellite Tools RPMs x86_64 repository.
Enabling Red Hat Enterprise Linux 7 Server Repositories Using Hammer CLI
Enable your Kickstart repository.
# hammer repository-set enable --organization-label "$ORG" \ --product 'Red Hat Enterprise Linux Server' \ --basearch='x86_64' \ --releasever='7Server' \ --name 'Red Hat Enterprise Linux 7 Server (Kickstart)'
Enable your RPMs repository.
# hammer repository-set enable --organization "$ORG" \ --product 'Red Hat Enterprise Linux Server' \ --basearch='x86_64' \ --releasever='7Server' \ --name 'Red Hat Enterprise Linux 7 Server (RPMs)'
Enable your Satellite Tools repository.
# hammer repository-set enable --organization "$ORG" \ --product 'Red Hat Enterprise Linux Server' \ --basearch='x86_64' \ --name 'Red Hat Satellite Tools 6 (for RHEL 7 Server) (RPMs)'
5.2. Creating a Custom Product
You can enable a repository with custom packages, but you must first manually create a Product for the repository.
Creating Custom Products Using the Web UI
- Click Content → Products and then click New Product.
- Enter a name for your custom Product.
- Click Save.
- After the screen refreshes, click Create Repository.
- Enter Puppet Modules in the Name field.
- In the Type field, Puppet. Leave the URL field blank.
- Click Save.
Uploading Puppet Modules to the Repository Using the Web UI
You can now upload a Puppet Module to the Puppet Module repository. You can also use the https://forge.puppetlabs.com as the URL to mirror Puppet Forge locally. All of the content from Puppet Forge is available on your Satellite Server. However, this requires downloading over 2700 modules and can take considerable time, depending on available bandwidth. This example uses the motd module because it is simple, and has no dependencies on other modules. If you want to upload packages with large files, use the Hammer CLI.
- Download the motd Puppet module from https://forge.puppetlabs.com/jeffmccune/motd. The file that you download will have a .tar.gz extension.
- Click Content → Products and click Custom Products in the Name field.
- On the Repositories tab, click Puppet Modules to modify the Puppet Modules repository.
- In the Upload Package section, click Choose Files, and navigate to the motd module that you downloaded.
- Click Upload.
Creating Custom Products and Enabling Repositories Using Hammer CLI
Create a custom Product.
$ hammer product create --name "product_name" --organization-label org_label
Create a new repository under the custom Product.
$ hammer repository create --name "repo_name" \ --organization-label org_label \ --product "product_name" \ --content-type cont_type \ --publish-via-http true \ --url "repo_url"
Content type specifies whether you want Yum, Puppet, or Docker content.
Upload packages to the custom repository.
$ hammer repository upload-content --product "product_name" \ --organization-label org_label \ --id "repo_id" \ --path path_to_dir
5.3. Synchronizing Content
You can synchronize repositories from the Red Hat Content Delivery Network to your Satellite, which also applies to synchronizing custom repositories (such as Yum or Puppet) that contain a repository URL.
Synchronizing Content Using Red Hat Enterprise Linux 7 Server Using the Web UI
- Click Content → Sync Status to display the list of available Products.
- Navigate to Red Hat Enterprise Linux Server → 7Server → x86_64.
Select the following Products:
- Red Hat Enterprise Linux 7 Server RPMs x86_64 6Server.
- Red Hat Enterprise Linux 7 Server - Satellite Tools RPMs x86_64.
- Navigate to Red Hat Enterprise Linux Server → 7.2 → x86_64 and select Red Hat Enterprise Linux 7 Server Kickstart x86_64 6.6.
Click Synchronize Now.
The synchronization could take several hours, depending on available bandwidth.
Synchronizing Content Using Hammer CLI
Synchronize your Kickstart repository.
$ hammer repository synchronize --organization "$ORG" \ --product 'Red Hat Enterprise Linux Server' \ --name 'Red Hat Enterprise Linux 7 Server Kickstart x86_64 7.2' \ --async
Synchronize your RPMs repository.
$ hammer repository synchronize --organization "$ORG" \ --product 'Red Hat Enterprise Linux Server' \ --name 'Red Hat Enterprise Linux 7 Server RPMs x86_64 7Server' \ --async
Synchronize your Satellite Tools repository.
$ hammer repository synchronize --organization "$ORG" \ --product 'Red Hat Enterprise Linux Server' \ --name 'Red Hat Satellite Tools 6 for RHEL 7 Server RPMs x86_64' \ --async
Chapter 6. Managing and Promoting Content
6.1. Creating Application Life Cycle Environments
An application life cycle environment represents a step, or stage, in a promotion path through the software development life cycle (SDLC).
- Click Content → Life Cycle Environments to open the Life Cycle Environment Paths page.
Click Add New Environment to display the New Environment page.
The library is the origin of all content that you can use in your environments.
Enter a name in the Name Field.
The label is automatically populated with the same name, but you can change it to suit your needs. You can also add a description of your environment.
- Click Save.
Creating Life Cycle Environments Using Hammer CLI
Create the life cycle environment.
$ hammer lifecycle-environment create --name Development \ --prior Library \ --organization “$ORG”
6.2. Creating Simple Content Views
A Content View is a managed selection of content, which contains one or more repositories (either yum or Puppet) with optional filtering. These filters can be either inclusive or exclusive, and tailor a host view of content for life cycle management. You can use Content Views to customize content that is made available to client hosts.
Creating Content Views Using the Web UI
- Click Content → Content Views and then click Create New View.
Type RHEL6 x86_64 in the Name field.
The label is automatically populated.
- Clear the Composite View? check box and click Save.
Creating Content Views Using Hammer CLI
Create the Content View.
$ hammer content-view create --organization "$ORG" \ --name 'RHEL7_Base' \ --label rhel7_base \ --description 'Core Build for RHEL 7'
6.3. Adding Red Hat Enterprise Linux Repositories
You can add Red Hat Enterprise Linux repositories to a Content View. You can use the same process for both Red Hat and custom repositories.
This task uses a simple use case where all content is published. You can also create filters to control the content that is included in or excluded from the published Content View.
Adding Repositories Using Web UI
- Go to the Content Selection page.
On the Add tab, select the check box next to each of the following repositories:
- Red Hat Enterprise Linux 7 Server Kickstart x86_64 7.2
- Red Hat Enterprise Linux 7 Server RPMs x86_64 7Server
- Red Hat Satellite Tools 6 for RHEL 7 Server RPMs x86_64
Click Add Repositories.
After the page has refreshed, you can see the list of repositories in your Content View on the List/Remove tab.
Adding Repositories Using Hammer CLI
Add your Kickstart repository.
$ hammer content-view add-repository --organization "$ORG" \ --name 'RHEL7_Base' \ --product 'Red Hat Enterprise Linux Server' \ --repository 'Red Hat Enterprise Linux 7 Server Kickstart x86_64 7.2'
Add your RPMs repository.
$ hammer content-view add-repository --organization "$ORG" \ --name 'RHEL7_Base' \ --product 'Red Hat Enterprise Linux Server' \ --repository 'Red Hat Enterprise Linux 7 Server RPMs x86_64 7Server'
Add your Satellite Tools repository.
$ hammer content-view add-repository --organization "$ORG" \ --name 'RHEL7_Base' \ --product 'Red Hat Enterprise Linux Server' \ --repository 'Red Hat Satellite Tools 6 for RHEL 7 Server RPMs x86_64'
6.4. Adding Puppet Modules to a Content View
Puppet Modules are self-contained bundles of code and data that you can use to manage resources such as users, files, and services.
Adding Puppet Modules Using the Web UI
- Go to the Content Views page.
- Click Content → Content Views.
On the Puppet Modules tab, click Add New Module to display a list of available Puppet Modules.
You can use the Filter field to help locate the required module.
- Click Select Version and select the 'motd' module.
- Click Select Version next to the version of the module that you want to add.
If you select "Use Latest" when you select which Puppet module version to use, it means that whenever a new version of the Content View is published, the latest version of that module is included in the published view.
Adding Puppet Modules Using Hammer CLI
Add a Puppet module.
$ hammer content-view puppet-module add \ --content-view cv_name \ --name module_name
6.5. Publishing a Content View
After you have created Content Views and Puppet Modules, you can publish them to the Library.
Publishing a Content View Using the Web UI
- Click Content → Content Views.
- Click the name of the Content View that you want to publish.
Click Publish New Version to display the Publish New Version page.
This specifies the version and allows you to enter a comment to reflect any changes made to the Content View.
Click Save to publish the Content View to the library.
You can monitor the publication progress on the screen that appears.
When the publishing process is complete, click Promote.
The list of available promotion paths (Library → Dev → QA) displays.
- Select the check box for the Dev environment, and then click Promote Version.
Publishing a Content View Using Hammer CLI
Publish your Content View.
$ hammer content-view publish --organization "$ORG" \ --name RHEL7_Base \ --description 'Initial Publishing'
Promote your Content View.
$ hammer content-view version promote \ --organization "$ORG" \ --content-view RHEL7_Base \ --to-lifecycle-environment Development
6.6. Creating and Editing Activation Keys
After you have successfully published a Content View, you need to create an Activation Key to associate with a Host Group.
Creating and Editing an Activation Key Using the Web UI
- On the main menu, click Content → Activation Keys → New Activation Key.
- In the Name field, enter a name.
If applicable, clear the Content Host Limit check box.
You can use this field to control how many times a given activation key is used. For example, if you associate the key with a subscription that has a limited quantity, you can set the limit on the activation key to eliminate exceeding that quantity.
- Select the check box for your environment.
- In the Content View drop-down list, select the RHEL 7 x86_64 Content View, and then click Save.
- On the Activation Keys page, click the Subscriptions tab, then click the Add tab to display the list of available subscriptions.
- From the list of available subscriptions, select the subscriptions you want to add.
- Click Add Selected.
Creating and Editing an Activation Key Using Hammer CLI
Create the activation key.
$ hammer activation-key create --name ak-Reg_To_Dev_EL7 \ --organization-label org_label \ --content-view RHEL7_Base --lifecycle-environment Development
Add a subscription.
$ hammer subscription list --organization “$ORG” $ hammer activation-key add-subscription \ --name ak-Reg_To_Dev_EL7 \ --subscription-id 8 \ --organization "$ORG"
Set Product content to enable the repository.
$ hammer activation-key content-override --name ak-Reg_To_Dev_EL7 \ --organization "$ORG" \ --content-label rhel-7-server-satellite-tools-6.2-rpms \ --value 1
If you do not plan to use Satellite Server to patch your systems, continue to Creating Provisioning Templates.
Chapter 7. Patching Your Systems
To patch your systems through Satellite Server, you need to register your systems first, and then choose to install Katello agent or use remote execution. Remote execution is enabled by default. This chapter covers both methods. Choose the option that suits your environment
7.1. Registering Existing Hosts
This section explains how to register Red Hat Enterprise Linux Hosts and Atomic Hosts.
7.1.1. Registering an Existing Red Hat Enterprise Linux Host
On the host, clear any old data to ensure updated data is uploaded correctly.
# subscription-manager clean
Install the katello-ca-consumer-latest RPM.
# rpm -Uvh http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
This installs the proper certificates which allow communication between the client and the Satellite Server.
Register the host.
# subscription-manager register --org $ORG \ --activationkey ak-Reg_To_Dev_EL7
7.1.2. Registering an Atomic Host
The following procedure explains how to register an Atomic Host with Subscription Manager.
Retrieve
katello-rhsm-consumer
from the Satellite Server:[root@atomic_client ~]# wget http://satellite.example.com/pub/katello-rhsm-consumer
Change the mode of
katello-rhsm-consumer
in order to make it executable:[root@atomic_client ~]# chmod +x katello-rhsm-consumer
Run
katello-rhsm-consumer
:[root@atomic_client ~]# ./katello-rhsm-consumer
Register with Red Hat Subscription Manager:
[root@atomic_client ~]# subscription-manager register
Because Atomic is functionally an appliance, we do not recommend that you try to install katello-agent
on it.
7.2. Patching Your System Using Katello Agent
7.2.1. Installing Katello Agent
On the content host, install the katello-agent
RPM package.
# yum install katello-agent
The goferd service must be running so that the Red Hat Satellite Server or Capsule Server can provide information about errata that are applicable for content hosts.
Ensure goferd is running:
On Red Hat Enterprise Linux 6, run the following command:
# service goferd start
On Red Hat Enterprise Linux 7, run the following command:
# systemctl start goferd
7.2.2. Applying Errata to Content Hosts
Applying Errata to Content Hosts Using the Web UI
-
Go to Hosts → Content Hosts and click on
auth01.example.com
. - Select the Errata tab to view the list of errata applicable to the content host.
- From the list, select an errata.
- Click Apply Selected.
- A confirmation message appears. Click Apply.
Verify that the errata has been applied to the client.
[root@client ~]# yum list-sec
Applying Errata to Content Hosts Using Hammer CLI
List the errata that apply to the
auth01.example.com
host.# hammer content-host errata list --content-host auth01.example.com \ --organization "$ORG"
Apply the errata required by the host.
# hammer host errata apply --content-host auth01.example.com \ --organization "$ORG" \ --errata-ids errata_id.
Verify that the errata has been applied to the client.
[root@client ~]# yum list-sec
7.3. Patching Your System Using Remote Execution
7.3.1. Enabling Remote Execution on a Host
During Satellite Server installation, an internal Capsule Server is automatically installed along with a public SSH key. The internal Capsule Server loads the SSH key from /usr/share/foreman-proxy/.ssh/id_rsa_foreman_proxy
. You can enable remote execution by distributing the public SSH key to a host.
On the Satellite Server, distribute the key to the host.
# ssh-copy-id -i ~foreman-proxy/.ssh/id_rsa_foreman_proxy.pub root@auth01.example.com
7.3.2. Installing Errata on Your Host
Satellite provides default job templates for executing remote jobs, one of which is for installing errata.
- Go to Hosts → All hosts and click the check box next to the host’s name.
- Click Select Action and select Schedule Remote Job from the drop-down menu.
- In the Job category drop-down menu, select Katello.
- In the Job template drop-down menu, select Install Errata-Katello SSH Default.
- In the errata field, enter the errata ID.
- Select Execute now and click Submit.
Chapter 8. Finalizing the Provisioning Configuration
8.1. Creating Custom Provisioning Templates
You can set up a provisioning template that you can use to provision multiple hosts, each having the same configuration.
Creating a Provisioning Template Using the Web UI
- On the main menu, click Hosts → Provisioning Templates.
In the Name column, select Kickstart Default iPXE or PXELinux in the list of provisioning templates.
This displays the configuration tabs where you can customize the template.
- On the Association tab, select the appropriate operating system and click Submit.
In the Name column, select the appropriate provisioning template.
If you use PXE-less discovery, you should select the Discover Red Hat kexec provisioning template.
- On the Association tab, select the appropriate operating system and click Submit.
On the main menu, click Hosts → Operating Systems and select the appropriate operating system.
This displays the configuration tabs where you can customize the operating system.
- On the Partition Table tab, select Kickstart Default.
- On the Installation Media tab, ensure Default_Organization/Library/Red_Hat_6_Server_Kickstart_x86_64_6Server is visible and selected.
- On the Templates tab, select Katello Kickstart Default from the provision drop-down list.
- Select Discovery Red Hat kexec from the kexec drop-down list and click Submit.
Creating a Provisioning Template Using Hammer CLI
Create a provisioning template.
$ hammer template create --name template_name --file path_to_template_file
If you use PXE-less discovery, you should use the kexec template type.
Add the operating system.
$ hammer template add-operatingsystem id
8.2. Creating Host Groups
You can create and configure a host group, which enables you to provision multiple hosts without the need to specify the same properties for each host. You can associate an activation key with a host group, which allows the provisioned host to be registered to the Satellite Server and associated with the selected life cycle environment, Content View, subscriptions, and so on.
Creating Host Groups Using the Web UI
- On the main menu, click Configure → Host Groups, and then click New Host Group.
On the Host Group tab, input the following values:
- Name: RHEL6Server-x86_64
- Lifecycle Environment: Default_Organization/DEV
- Content View: RHEL_6_x86_64
- Content Source: The FQDN of your Capsule (in this case the Satellite Server)
- Puppet CA: The FQDN of your Satellite
- Puppet Master: The FQDN of your Satellite
- On the Puppet Classes tab, select the motd puppet module from the list of available classes.
On the Network tab, select the following values:
- Domain: example.org
- Subnet: Provisioning_Net
- Realm: For the purposes of this example, leave this field blank. If you have configured realm management, for example IPA, select the appropriate realm here.
On the Operating System tab, select the following values:
- Architecture: x86_64
- Operating system: RHEL Server 6.5
- Media: Default_Organization/Library Red Hat Server 6.5 x86_64. In this example, this is automatically populated. If this field is not automatically populated, it means the Organization and Location associations are not correctly configured.
- Partition table: Kickstart default
- Root password: changeme
- On the Locations tab, select Default_location.
- On the Organizations tab, select Default_Organization.
- On the Activation Keys tab, select the appropriate key.
- Click Submit.
Creating Host Groups Using Hammer CLI
Create the host group.
$ hammer hostgroup create --name "hostgroup_name" \ --environment "environment_name" \ --architecture "architecture_name" \ --domain domain_name \ --subnet subnet_name \ --puppet-proxy proxy_name \ --puppet-ca-proxy ca-proxy_name \ --operatingsystem "os_name" \ --partition-table "table_name" \ --medium "medium_name" \ --organization-ids org_ID1,org_ID2... \ --location-ids loc_ID1,loc_ID2...
Add an activation key.
$ hammer hostgroup set-parameter --hostgroup "hostgroup_name" \ --name "kt_activation_keys" \ --value key_name
Chapter 9. Provisioning Hosts Using a PXE-less Discovery Image
Satellite provides two main approaches to provisioning hosts, PXE booting and boot disk provisioning. Boot disk provisioning, or PXE-less booting, provides host provisioning when PXE services are not available. This guide covers PXE-less host provisioning.
You can use the Discovery image ISO to boot either bare metal hardware or virtual systems and attach them to the Satellite Server. Both DHCP and static IP networking are supported. The Discovery Plug-ins are installed by default and are a part of the subscribed repository.
Verify that your Satellite Server has a compatible version of the discovery plug-ins.
- Discovery plug-in - tfm-rubygem-foreman_discovery-5.0.0.4-1 or later
- Discovery image - foreman-discovery-image-3.0.5-3 or later
Smart proxy plug-in - rubygem-smart_proxy_discovery-1.0.3-2 or later
If you need to upgrade the plug-ins, you must reboot.
- For physical systems, transfer the ISO image onto a USB stick or CDROM/DVD. For virtual systems, attach the ISO image to a virtual CD-ROM.
Boot the ISO image on your system.
A text-based user interface appears.
- Select either Manual network setup or Discover with DHCP, depending on your environment.
- If the host has multiple NICs, choose the primary network interface and click Select.
- If applicable, enter your network credentials and click Next.
- Enter the full Satellite Server URL and select the Server connection type. Click Next.
Enter custom facts to trigger auto-provisioning rules and click Confirm.
The host is discovered and sends a "discovery_kexec" fact to Satellite Server that prevents a reboot during provisioning.
- In the web UI, go to Hosts → Discovered Hosts to view the host.
- Click Provision, enter the information for your host and click Submit.