Red Hat Satellite-6.4-Content Management Guide-en-US
Red Hat Satellite-6.4-Content Management Guide-en-US
Red Hat Satellite-6.4-Content Management Guide-en-US
An end-to-end guide on managing content from Red Hat and custom sources
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons
Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is
available at
http://creativecommons.org/licenses/by-sa/3.0/
. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must
provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert,
Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity
logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other
countries.
Linux ® is the registered trademark of Linus Torvalds in the United States and other countries.
XFS ® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States
and/or other countries.
MySQL ® is a registered trademark of MySQL AB in the United States, the European Union and
other countries.
Node.js ® is an official trademark of Joyent. Red Hat Software Collections is not formally related to
or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack ® Word Mark and OpenStack logo are either registered trademarks/service marks
or trademarks/service marks of the OpenStack Foundation, in the United States and other countries
and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or
sponsored by the OpenStack Foundation, or the OpenStack community.
Abstract
This guide provides an end-to-end scenario on managing content in Red Hat Satellite 6. Examples
of such content include RPM files, ISO images, Puppet modules, and container images. Red Hat
Satellite 6 manages this content using a set of Content Views promoted across the application
lifecycle. This guide demonstrates how to create an application lifecycle that suits your organization
and content views that fulfils host states within lifecycle environments. These content views
eventually form the basis for provisioning and updating hosts in your Red Hat Satellite 6
environment.
Table of Contents
Table of Contents
.CHAPTER
. . . . . . . . .1.. .INTRODUCTION
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5. . . . . . . . . .
1.1. OVERVIEW OF RED HAT SATELLITE 6 CONTENT MANAGEMENT 5
1.2. DEFINING CONTENT MANAGEMENT TYPES 5
1.3. DEFINING OUR SCENARIO 6
1.4. CONTENT MANAGEMENT STORAGE 6
.CHAPTER
. . . . . . . . .2.. .MANAGING
. . . . . . . . . . ORGANIZATIONS
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9. . . . . . . . . .
2.1. CREATING AN ORGANIZATION 9
2.2. SETTING THE ORGANIZATION CONTEXT 10
2.3. CREATING AN ORGANIZATION DEBUG CERTIFICATE 10
2.4. USING AN ORGANIZATION DEBUG CERTIFICATE 11
2.5. DELETING AN ORGANIZATION 12
.CHAPTER
. . . . . . . . .3.. .MANAGING
. . . . . . . . . . LOCATIONS
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
...........
3.1. CREATING A LOCATION 13
3.2. SETTING THE LOCATION CONTEXT 13
3.3. DELETING A LOCATION 14
.CHAPTER
. . . . . . . . .4.. .MANAGING
. . . . . . . . . . SUBSCRIPTIONS
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
...........
4.1. MANAGING SUBSCRIPTION ALLOCATIONS 15
4.1.1. Creating a Subscription Allocation in the Customer Portal 15
4.1.2. Adding Subscriptions to a Subscription Allocation 15
4.1.3. Removing Subscriptions from a Subscription Allocation 16
4.1.4. Moving Subscriptions between Subscription Allocations 16
4.1.5. Using Future Dated subscriptions 17
4.1.6. Using Subscription Allocations to Manage Multiple Organizations 17
4.1.7. Exporting a Subscription Manifest from the Customer Portal 17
4.1.8. Importing a Subscription Manifest into Satellite Server 17
4.2. MANAGING SUBSCRIPTION ALLOCATIONS IN THE SATELLITE WEB UI 18
4.2.1. Searching for a Subscription in the Satellite Web UI 18
4.2.2. Attaching Subscriptions to Content Hosts 19
4.2.3. Adding Subscriptions to Subscription Allocations in the Satellite Web UI 20
4.2.4. Removing Subscriptions from Subscription Allocations in the Satellite Web UI 20
4.2.5. Updating and Refreshing Subscription Manifests 21
4.2.6. Bulk Updating Content Hosts' Subscriptions 21
.CHAPTER
. . . . . . . . .5.. .IMPORTING
. . . . . . . . . . RED
. . . . .HAT
. . . .CONTENT
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
...........
5.1. CREATING A DEFINITIVE MEDIA LIBRARY 23
5.2. USING PRODUCTS AND REPOSITORIES IN SATELLITE 23
5.3. SYNCHRONIZING CONTENT 23
5.3.1. Disabling the Global HTTP Proxy 23
5.4. USING DOWNLOAD POLICIES 24
5.5. SELECTING RED HAT REPOSITORIES TO SYNCHRONIZE 24
5.6. SYNCHRONIZING RED HAT REPOSITORIES 26
5.6.1. Recovering a Repository 28
5.6.2. Limiting Synchronization Speed 29
5.7. CREATING A SYNCHRONIZATION PLAN 29
. . . . . . . . . .6.. .IMPORTING
CHAPTER . . . . . . . . . . CUSTOM
. . . . . . . . .CONTENT
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
...........
6.1. USING CUSTOM PRODUCTS IN SATELLITE 31
6.2. IMPORTING CUSTOM SSL CERTIFICATES 31
6.3. IMPORTING A CUSTOM GPG KEY 31
6.4. CREATING A CUSTOM PRODUCT 32
1
Red Hat Satellite 6.4 Content Management Guide
.CHAPTER
. . . . . . . . .7.. .CREATING
. . . . . . . . . .AN
. . .APPLICATION
. . . . . . . . . . . . .LIFE
. . . .CYCLE
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
...........
7.1. APPLICATION LIFE CYCLE OVERVIEW 35
7.2. PROMOTING CONTENT ACROSS THE APPLICATION LIFE CYCLE 36
7.3. CREATING AN APPLICATION LIFE CYCLE 37
7.4. ADDING LIFE CYCLE ENVIRONMENTS TO CAPSULE SERVERS 38
7.5. REMOVING LIFE CYCLE ENVIRONMENTS FROM SATELLITE SERVER 39
7.6. REMOVING LIFE CYCLE ENVIRONMENTS FROM CAPSULE SERVER 40
. . . . . . . . . .8.. .MANAGING
CHAPTER . . . . . . . . . . CONTENT
. . . . . . . . . VIEWS
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
...........
8.1. CREATING A CONTENT VIEW 43
8.2. CREATING A CONTENT VIEW WITH A PUPPET MODULE 44
8.3. PROMOTING A CONTENT VIEW 44
8.4. COMPOSITE CONTENT VIEWS OVERVIEW 45
8.5. CREATING A COMPOSITE CONTENT VIEW 47
8.6. CONTENT FILTER OVERVIEW 48
8.7. CONTENT FILTER EXAMPLES 49
8.8. CREATING A CONTENT FILTER 50
.CHAPTER
. . . . . . . . .9.. .MANAGING
. . . . . . . . . . ACTIVATION
. . . . . . . . . . . .KEYS
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52
...........
9.1. CREATING AN ACTIVATION KEY 52
9.2. UPDATING SUBSCRIPTIONS ASSOCIATED WITH AN ACTIVATION KEY 54
9.3. UPDATING SUBSCRIPTIONS ASSOCIATED WITH AN ACTIVATION KEY USING A CSV FILE 55
9.4. USING ACTIVATION KEYS FOR HOST REGISTRATION 56
9.5. ENABLING AUTO-ATTACH 58
9.6. SETTING THE SERVICE LEVEL 58
. . . . . . . . . .10.
CHAPTER . . .MANAGING
. . . . . . . . . . ERRATA
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60
...........
10.1. INSPECTING AVAILABLE ERRATA 60
10.2. SUBSCRIBING TO ERRATA NOTIFICATIONS 62
10.3. MANAGING ERRATA WITH CONTENT VIEWS 62
10.3.1. Creating a Content View Filter for Errata 62
10.4. APPLYING ERRATA TO INDIVIDUAL SYSTEMS 64
10.5. APPLYING ERRATA TO MULTIPLE SYSTEMS 65
. . . . . . . . . .11.
CHAPTER . . .MANAGING
. . . . . . . . . . OSTREE
. . . . . . . . CONTENT
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67
...........
11.1. SELECTING RED HAT OSTREE CONTENT TO SYNCHRONIZE 67
11.2. IMPORTING CUSTOM OSTREE CONTENT 68
11.3. MANAGING OSTREE CONTENT WITH CONTENT VIEWS 69
. . . . . . . . . .12.
CHAPTER . . .MANAGING
. . . . . . . . . . ISO
. . . .IMAGES
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71
...........
12.1. IMPORTING ISO IMAGES FROM RED HAT 71
12.2. IMPORTING INDIVIDUAL ISO IMAGES AND FILES 72
. . . . . . . . . .13.
CHAPTER . . .MANAGING
. . . . . . . . . . CUSTOM
. . . . . . . . .FILE
. . . .TYPE
. . . . . CONTENT
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74
...........
13.1. CREATING A CUSTOM FILE TYPE REPOSITORY IN RED HAT SATELLITE 74
13.2. CREATING A CUSTOM FILE TYPE REPOSITORY IN A LOCAL DIRECTORY 76
13.3. CREATING A REMOTE FILE TYPE REPOSITORY 78
13.4. UPLOADING FILES TO A CUSTOM FILE TYPE REPOSITORY IN RED HAT SATELLITE 79
13.5. DOWNLOADING FILES TO A HOST FROM A CUSTOM FILE TYPE REPOSITORY IN RED HAT
SATELLITE 80
. . . . . . . . . .14.
CHAPTER . . .MANAGING
. . . . . . . . . . CUSTOM
. . . . . . . . .PUPPET
. . . . . . . CONTENT
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .82
...........
14.1. CREATING A CUSTOM PUPPET REPOSITORY 82
2
Table of Contents
. . . . . . . . . . A.
APPENDIX . . .USING
. . . . . .AN
. . .NFS
. . . .SHARE
. . . . . . .FOR
. . . . CONTENT
. . . . . . . . . STORAGE
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .86
...........
. . . . . . . . . . B.
APPENDIX . . .IMPORTING
. . . . . . . . . . CONTENT
. . . . . . . . . ISOS
. . . . . INTO
. . . . .A
. .DISCONNECTED
. . . . . . . . . . . . . . .SATELLITE
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88
...........
. . . . . . . . . . C.
APPENDIX . . .IMPORTING
. . . . . . . . . . CONTENT
. . . . . . . . . ISOS
. . . . . INTO
. . . . .A
. .CONNECTED
. . . . . . . . . . . .SATELLITE
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
...........
. . . . . . . . . . D.
APPENDIX . . .SYNCHRONIZING
. . . . . . . . . . . . . . . CONTENT
. . . . . . . . . BETWEEN
. . . . . . . . . .SATELLITE
. . . . . . . . . . SERVERS
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93
...........
D.1. SATELLITE SERVERS, CAPSULE SERVERS, AND ISS 94
D.2. PREREQUISITES 94
D.3. SUPPORTED SYNCHRONIZATION OPTIONS 95
D.4. USING CHUNKED ISO FILES 95
D.5. CONFIGURING ISS 95
D.5.1. Configuring an Export Destination 95
D.5.2. Configuring the Download Policy 97
D.6. EXPORTING CONTENT 97
D.6.1. Exporting Repositories 98
D.6.2. Exporting Content View Version to a Directory 98
D.6.3. Incremental Export 101
D.7. IMPORTING CONTENT 101
D.7.1. Importing a Repository 102
D.7.2. Importing a Content View as a Red Hat Repository 102
D.7.3. Incremental Import 103
. . . . . . . . . . E.
APPENDIX . . SYNCHRONIZING
. . . . . . . . . . . . . . . . TEMPLATES
. . . . . . . . . . . .WITH
. . . . .GIT
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .104
............
E.1. ENABLING THE TEMPLATESYNC PLUG-IN 104
E.2. CONFIGURING THE TEMPLATESYNC PLUG-IN 104
E.3. IMPORTING AND EXPORTING TEMPLATES 106
E.3.1. Synchronizing Templates with a Git repository 106
E.3.2. Synchronizing templates with a local directory 107
E.4. ADVANCED GIT CONFIGURATION 108
E.5. UNINSTALLING THE PLUG-IN 108
3
Red Hat Satellite 6.4 Content Management Guide
4
CHAPTER 1. INTRODUCTION
CHAPTER 1. INTRODUCTION
In the context of system management, we define content as the software installed on systems. This
includes, but is not limited to, the base operating system, middleware services, and end user
applications. Red Hat Satellite 6 provides tools to manage the various types of content for Red Hat
Enterprise Linux systems. This provides system administrators with an easy way to collect a range of
content, keep it up to date, and use it to provision new systems and update existing systems.
This guide aims to provide an end-to-end scenario to demonstrate how to manage your content. This
guide is targeted at system administrators with a newly installed Satellite Server.
Subscription management, which includes tools to manage Red Hat software subscriptions,
and associated content, over a secure connection. This provides a means for organizations to
manage their Red Hat subscription information.
Content management, which includes applications to download and store content in custom
repositories. This provides organizations with a method to store Red Hat content and organize it
in various ways.
RPM Packages
Red Hat Satellite 6 provides a method to import RPM files from repositories related to your Red Hat
subscriptions. This means Satellite Server downloads the RPM files from Red Hat’s Content Delivery
Network and stores them locally. You can use these repositories and their RPM files in Content
Views.
Kickstart Trees
Red Hat Satellite 6 obtains the kickstart trees for creating a new system. New systems access these
kickstart trees over a network to use as base content for their installation. Red Hat Satellite 6 also
contains some predefined kickstart templates (and the ability to create your own), which are used to
provision new systems and customize the installation.
ISO and KVM Images
Red Hat Satellite 6 downloads and manages media for installation and provisioning. For example,
Satellite downloads, stores and manages ISO images and KVM guest images for specific Red Hat
Enterprise Linux versions.
Puppet Modules
Red Hat Satellite 6 offers the ability to upload Puppet modules alongside RPM content so that it can
configure the system’s state after provisioning. Users can also manage Puppet classes and
parameters as part of the provisioning process.
Container Images
Red Hat Satellite 6 can act as a registry for container images. This provides a method to create
containers using Red Hat Enterprise Linux Atomic Host.
5
Red Hat Satellite 6.4 Content Management Guide
OSTree
Red Hat Satellite 6 can import OSTree branches and publish this content to a HTTP location.
Have a set of content sources imported for their organization. This includes content from their
Red Hat subscription and their own custom content.
Have an application life cycle defined based on their software development process.
Have their Satellite Server ready so they can provision new Red Hat Enterprise Linux hosts and
register existing Red Hat Enterprise Linux hosts.
This guide only focuses on content management. Further features, such as host provisioning,
environment architecture, and Satellite Server management, are covered in other guides in the Red Hat
Satellite 6 series.
This guide provides both steps for using either the Red Hat Satellite 6 Web UI or its CLI tool — Hammer
CLI. Use either depending on your preferred method of interacting with Red Hat Satellite 6. If using the
CLI and do not want to include authentication details each time you enter a hammer command, edit the
~/.hammer/cli.modules.d/foreman.yml file to include the credentials for a local user:
:foreman:
:host: 'https://satellite.example.com/'
:username: 'your_username'
:password: 'your_password'
IMPORTANT
All uses of the hammer command in this guide use the configuration file and omit the
authentication details.
Some CLI commands can use the --async option to perform certain tasks asynchronously. For
example, you can synchronize content and publish Content Views as a asynchronous task rather than
monitoring it. This guide omits the --async so that users can monitor progress of tasks to completion. If
including the --async option for certain tasks, ensure the task completes before moving on to the next
task.
Red Hat Satellite 6 temporarily adds content to /var/cache/pulp, then moves them into the
/var/lib/pulp directory for storage and management. Ensure that both /var/cache/pulp and
/var/lib/pulp have adequate storage. Mount the /var/lib/pulp directory onto a large local
partition that you can scale. For example, use Logical Volume Manager (LVM) to create this partition.
6
CHAPTER 1. INTRODUCTION
IMPORTANT
Do not mount /var/lib/pulp on an NFS share. Parts of Red Hat Satellite 6 use
transient SQLite databases, which have issues over NFS. If you want to use an NFS
share, mount only the /var/lib/pulp/content directory, which contains the main
source content units. Use of high-bandwidth, low-latency storage for the /var/lib/pulp
file system. Red Hat Satellite has many operations that are I/O-intensive so usage of high-
latency, low-bandwidth storage could result in performance degradation.
Red Hat Satellite 6 synchronize and stores packages from Red Hat’s Content Delivery Network. This
includes repositories for Red Hat Enterprise Linux and other Red Hat software. The recommended
storage requirements for Red Hat content are as follows:
The estimated annual growth rates of these repositories are 10GB per binary package repository
and 20GB per debug-info repository
For more information about Red Hat Production Phases, see "Red Hat Enterprise Linux Life Cycle".
NOTE
All repositories vary in size. These specifications are recommendations and must be
adjusted according to the repositories you want to synchronize.
Red Hat Satellite 6 provides users with the ability to create Content Views. Content Views act as a
snapshot of a user-defined content collection at a particular point in time. This provides a means to
create customized content collections from preexisting repositories.
Each unit of content in a Content View uses a symbolic link to the Definitive Media Library stored in the
/var/lib/pulp/content directory. In addition, each repository in a Content View contains metadata
about the content belonging to the Content View. This means a Content View using a minimal number of
packages uses a small amount of storage. However, the storage size adds up when you use multiple
Content Views and a large number of packages per view.
For example, a Content View using the Red Hat Enterprise Linux 7 RPMs repository might contain over
7000 packages. In terms of disk space, this might only result in less than 100MB of symbolic links.
However, take into account the following:
To help reduce the amount of storage that Content Views consume, use the following recommendations:
7
Red Hat Satellite 6.4 Content Management Guide
Remove unused versions of Content Views. If you are not using a Content View in a life cycle
environment and you have no intention of reusing it, delete it to reclaim the storage used.
Use filters in Content Views. Filters limit the content that appears in a Content View. This helps
you define only the necessary content required for your view and excludes redundant content.
This reduces the size of each Content View significantly.
Monitor the /var/lib/pulp/nodes directory. Red Hat Satellite 6 uses this directory to
construct Content Views.
Monitor the /var/lib/pulp/published directory. Red Hat Satellite 6 uses this directory to
publish Content Views.
Red Hat Satellite 6 also uses the following databases for its content management components:
IMPORTANT
Do not mount /var/lib/mongodb on an NFS share. Red Hat recommends the usage of
high-bandwidth, low-latency storage for the /var/lib/mongodb file system. Red Hat
Satellite has many operations that are I/O-intensive so usage of high-latency, low-
bandwidth storage could result in performance degradation.
8
CHAPTER 2. MANAGING ORGANIZATIONS
Single Organization
A small business with a simple system administration chain. In this case, we create a single
organization for the business and assign content to it.
Multiple Organizations
A large company that owns several smaller business units. For example, a company with separate
system administration and software development groups. In this case, we create organizations for the
company and each of the business units it owns. This keeps the system infrastructure for each
separate. We then assign content to each organization based on their needs.
External Organizations
A company that manages external systems for other organizations. For example, a company offering
cloud computing and web hosting resources to customers. In this case, we might create an
organization for the company’s own system infrastructure and then an organization for each external
business. We then assign content to each organization where necessary.
A default installation of Red Hat Satellite 6 provides a default organization called Default_Organization.
IMPORTANT
If a new user is not assigned a default organization their access is limited. To grant
systems rights to users, assign them to a default organization and have them log out and
log back in again.
Label - A unique identifier for the organization. This is used for creating and mapping certain
assets, such as directories for content storage. Use letters, numbers, underscores, and
dashes, but no spaces.
4. Click Submit.
If you have hosts with no organization assigned, you are redirected to the Select Hosts tab.
Select between three variants of assigning hosts to the organization:
9
Red Hat Satellite 6.4 Content Management Guide
Proceed to Edit to move to the Edit Properties page without assigning hosts to the
organization
If you do not have hosts with no organization assigned, you are redirected to the Edit page,
where you can assign infrastructure resources to the organization. This includes networking
resources, installation media, kickstart templates, and other parameters. You can return to
this page at any time by navigating to Administer > Organizations and then selecting an
organization to edit.
10
CHAPTER 2. MANAGING ORGANIZATIONS
NOTE
2. Open the X.509 certificate, for example, for the default organization:
$ vi 'Default Organization-key-cert.pem'
3. Copy the contents of the file from: -----BEGIN RSA PRIVATE KEY----- to -----END
RSA PRIVATE KEY----- inclusive, into a file called key.pem.
5. Enter a command as follows to create a PKCS12 format certificate and enter a password or
phrase when prompted:
6. Using the preferences tab, import the resulting pfx file into your browser: Navigate to Edit >
Preferences > Advanced Tab. Select View Certificates in the Certificates view to open the
Certificate Manager. On the Your Certificates tab, click Import and select the pfx file to load.
You are prompted for the password or phrase used when making the certificate.
7. Enter a URL in the following format into your browser’s address bar to begin browsing for
repositories:
http://satellite.example.com/pulp/repos/organization_label
Pulp uses the organization label so the URL must use the organization label too.
11
Red Hat Satellite 6.4 Content Management Guide
2. Open the X.509 certificate, for example, for the default organization:
$ vi 'Default Organization-key-cert.pem'
3. Copy the contents of the file from: -----BEGIN RSA PRIVATE KEY----- to -----END
RSA PRIVATE KEY----- inclusive, into a file called key.pem.
5. Find a valid URL for a repository. You can use the browsing method described in the previous
procedure or use the web UI. For example, using the web UI, navigate to Content > Products
and select a Product by name. On the Repositories tab, select a repository by name and look
for the Published At entry.
Ensure the paths to cert.pem and key.pem are the correct absolute paths otherwise the
command fails silently.
2. Select Delete from the list to the right of the name of the organization you want to delete.
12
CHAPTER 3. MANAGING LOCATIONS
Parent - An optional parent location for this location. This creates a location hierarchy.
3. Click Submit.
If you have hosts with no location assigned, you are redirected to the Select Hosts tab.
Select between three variants of assigning hosts to the location:
Proceed to Edit to move to the Edit Properties page without assigning hosts to the
location.
If you do not have hosts with no location assigned, you are redirected to the Edit page,
where you can assign infrastructure resources to the location. This includes networking
resources, installation media, kickstart templates, and other parameters. You can return to
this page at any time by navigating to Administer > Locations and then selecting a location
to edit.
13
Red Hat Satellite 6.4 Content Management Guide
A location context defines the location to use for a host and its associated resources.
2. Select Delete from the list to the right of the name of the location you want to delete.
14
CHAPTER 4. MANAGING SUBSCRIPTIONS
Use this chapter to create, modify, and refresh subscription allocations and manifests.
Procedure
1. Open the Red Hat Customer Portal in your browser and log in to your Red Hat account.
2. Navigate to Subscriptions, which is in the upper-left corner of the Customer Portal page.
5. In the Name field, enter a descriptive name that helps identify the subscription allocation.
6. From the Type list, select the type and version that corresponds to your Satellite Server.
7. Click Create.
8. After a few minutes, the web UI reports that the allocation has been successfully created.
Procedure
1. Open the Red Hat Customer Portal in your browser and log in to your Red Hat account.
2. Navigate to Subscriptions, which is in the upper-left corner of the Customer Portal page.
4. From the Name column, select the name of the subscription allocation you want to modify.
6. On the row of each subscription you want to add, enter the quantity under the Entitlements
column.
15
Red Hat Satellite 6.4 Content Management Guide
7. Click Submit.
Procedure
1. Open the Red Hat Customer Portal in your browser and log in to your Red Hat account.
2. Navigate to Subscriptions, which is in the upper-left corner of the Customer Portal page.
4. From the Name column, select the name of the subscription allocation you want to modify.
6. On the row of each subscription you want to remove, select the corresponding check box.
Procedure
1. Open the Red Hat Customer Portal in your browser and log in to your Red Hat account.
2. Navigate to Subscriptions, which is in the upper-left corner of the Customer Portal page.
4. From the Name column, select the name of the subscription allocation you want to modify.
6. On the row of each subscription you want to move, select the corresponding check box.
8. In the "Move entitlements from this subscription allocation to another" window, use the
appropriate method to select the subscriptions you want to move:
16
CHAPTER 4. MANAGING SUBSCRIPTIONS
If you want to specify quantities, enter the appropriate quantity on the row of each
subscription under the Quantity to Move column.
If you want to remove a subscription from the selection, click the delete icon on the row of
that subscription, and then click OK to confirm.
10. From the table, select the subscription allocation you want to move the subscriptions to, and then
click Submit.
11. If the modified subscription allocation has a corresponding subscription manifest on a Satellite
Server, refresh the subscription manifest. For more information, see Section 4.2.5, “Updating
and Refreshing Subscription Manifests”.
Red Hat recommends that you manually attach the future-dated subscriptions to your content hosts
before the current subscriptions expire and not to rely on the auto-attach method. For more information,
see Section 4.2.2, “Attaching Subscriptions to Content Hosts”.
A subscription manifest is a ZIP archive of the subscription allocation, containing encoded subscriptions,
which can be imported into your Satellite Server.
Procedure
1. Open https://access.redhat.com/ in your browser and log in to your Red Hat account.
2. Navigate to Subscriptions, which is in the upper-left corner of the Customer Portal page.
4. From the Name column, select the name of the subscription allocation you want to export.
5. On the Details pane, click Export Manifest to download the subscription manifest file.
17
Red Hat Satellite 6.4 Content Management Guide
Prerequisite
You must have a subscription manifest file previously exported from the Customer Portal. For more
information, see Section 4.1.7, “Exporting a Subscription Manifest from the Customer Portal”.
1. In the Satellite web UI, ensure the context is set to the organization you want to use.
5. Navigate to the location containing the subscription manifest file, and then click Open.
6. If the Manage Manifest window does not close automatically, click Close to return to the Red
Hat Subscriptions page.
1. Log in to your local client system, and then copy the subscription manifest file to your Satellite
Server:
2. In a terminal, connect to your Satellite Server as the root user, and then import the subscription
manifest file:
You can now enable repositories and import Red Hat content. For more information, see Chapter 5,
Importing Red Hat Content.
Prerequisite
18
CHAPTER 4. MANAGING SUBSCRIPTIONS
You must have a subscription manifest file previously imported to your Satellite Server. For more
information, see Section 4.1.8, “Importing a Subscription Manifest into Satellite Server”.
Procedure
1. In the Satellite web UI, ensure the context is set to the organization you want to use.
3. On the Red Hat Subscriptions page, click the Search field to view the list search criteria for
building your search query.
5. When you have built your search query, click the search icon.
For example, if you place your cursor in the Search field, and select expires, then press the space bar,
another list appears with the options of placing a >, <, or = characters. If you select, >, and press the
space bar, another list of automatic options appear. You can also enter your own criteria.
For more information about updating multiple hosts, see Section 4.2.6, “Bulk Updating Content Hosts'
Subscriptions”.
For more information about activation keys, see Chapter 9, Managing Activation Keys.
Prerequisite
You must have a subscription manifest file previously imported to your Satellite Server. For more
information, see Section 4.1.8, “Importing a Subscription Manifest into Satellite Server”.
However, you are not required to attach Smart Management subscriptions to each content host. Smart
Management subscriptions cannot attach automatically to content hosts in Satellite because they are not
associated with any product certificates. Adding a Smart Management subscription to a content host
does not provide any content or repository access. If you want, you can add a smart management
subscription to a manifest for your own recording or tracking purposes.
1. In the Satellite web UI, ensure the context is set to the organization you want to use.
3. On the row of each content host whose subscription you want to change, select the
corresponding check box.
19
Red Hat Satellite 6.4 Content Management Guide
5. Optionally, enter a key and value in the Search field to filter the subscriptions displayed.
6. Select the check box to the left of the subscriptions to be added or removed and click Add
Selected or Remove Selected as required.
1. In a terminal, connect to your Satellite Server as the root user, and then list the available
subscriptions:
Prerequisite
You must have a subscription manifest file imported to your Satellite Server. For more information, see
Section 4.1.8, “Importing a Subscription Manifest into Satellite Server”.
Procedure
1. In the Satellite web UI, ensure the context is set to the organization you want to use.
4. On the row of each subscription you want to add, enter the quantity under the Quantity to
Allocate column.
5. Click Submit.
After a few minutes, the web UI reports that the action has been successful.
20
CHAPTER 4. MANAGING SUBSCRIPTIONS
NOTE
Manifests must not be deleted. If you delete the manifest from the Red Hat Customer
Portal or in the Satellite web UI, all of the entitlements for all of your content hosts will be
removed.
Prerequisite
You must have a subscription manifest file imported to your Satellite Server. For more information, see
Section 4.1.8, “Importing a Subscription Manifest into Satellite Server”.
Procedure
1. In the Satellite web UI, ensure the context is set to the organization you want to use.
3. On the row of each subscription you want to remove, select the corresponding check box.
After a few minutes, the web UI reports that the action has been successful.
Renewing a subscription
You can use refresh the manifest directly in the Satellite web UI. Alternatively, you can import an
updated manifest that contains the changes. For more information about importing a manifest, see
Section 4.1.8, “Importing a Subscription Manifest into Satellite Server”.
Procedure
1. In the Satellite web UI, ensure the context is set to the organization you want to use.
After a few minutes, the web UI reports that the action has been successful.
21
Red Hat Satellite 6.4 Content Management Guide
1. In the Satellite web UI, ensure the context is set to the organization you want to use.
3. On the row of each content host whose subscription you want to change, select the
corresponding check box.
5. Optionally, enter a key and value in the Search field to filter the subscriptions displayed.
6. Select the check box to the left of the subscriptions to be added or removed and click Add
Selected or Remove Selected as required.
2. Change the required values in the CSV file. You can use an editor, with a CSV plug-in, or sed to
change strings in the CSV file.
# cp content_hosts.csv content_hosts.csv.backup
22
CHAPTER 5. IMPORTING RED HAT CONTENT
In this chapter, our aim is to start creating our DML using Red Hat content. To do this, we synchronize
our DML with Red Hat’s Products and their repositories.
It is possible to perform an initial synchronization using ISO images. See Appendix C, Importing Content
ISOs into a Connected Satellite for more information on using Content ISOs. For locations with
bandwidth limitations, using an On Demand or Background download policy as described below might
be quicker than downloading and importing Content ISOs.
Procedure
To ignore the global HTTP proxy, complete the following steps:
1. In the Satellite web UI, navigate to Content > Products and select the product that you want to
change.
2. Click the Repositories tab, and select the repository that you want to change.
23
Red Hat Satellite 6.4 Content Management Guide
3. In the Sync Settings area, navigate to Ignore Global HTTP Capsule. Click the edit icon, select
the check box, and then click Save.
Immediate — Satellite Server downloads all metadata and packages during synchronization.
On Demand — Satellite Server only downloads the metadata during synchronization. Satellite
Server only fetches and stores packages on the file system when Capsules or directly connected
clients request them. This setting has no effect if you set a corresponding repository on a
Capsule to Immediate because Satellite Server is forced to download all the packages.
Background — Satellite Server creates a background task to download all packages after the
initial synchronization.
The latter two policies act as a Lazy Synchronization feature because they save time synchronizing
content. The lazy sync feature must only be used for yum repositories. The packages can be added to
Content Views and promoted to life cycle environments as normal.
Immediate — Capsule Server downloads all metadata and packages during synchronization. Do
not use this setting if the corresponding repository on Satellite Server is set to On Demand as
Satellite Server is forced to download all the packages.
On Demand — Capsule Server only downloads the metadata during synchronization. The
Capsule only fetches and stores packages on the file system when directly connected clients
request them.
NOTE
Background — Capsule Server creates a background task to download all packages after the
initial synchronization.
Inherit — Capsule Server inherits the download policy for the repository from the corresponding
repository on Satellite Server.
These policies are not available if a Capsule was installed or updated with --enable-foreman-
proxy-plugin-pulp set to false.
24
CHAPTER 5. IMPORTING RED HAT CONTENT
To select the repositories to synchronize you must first identify the product that contains the repository,
and then enable that repository based on the relevant release version and base architecture.
IMPORTANT
If using a Disconnected Satellite, you need to import the Content ISOs for Red Hat
Satellite and change the CDN URL on Satellite Server before synchronizing content. For
more information, see Appendix B, Importing Content ISOs into a Disconnected Satellite.
The relationship between products and specific repositories is connected through a cascading
hierarchy that is displayed in the Available Repositories pane.
2. To find the Red Hat Enterprise Linux 7 Server (RPMs) repositories, use one of the following
methods:
3. In the Available Repositories pane, click on the Red Hat Enterprise Linux 7 Server (RPMs) to
expand the repository set.
4. For the x86_64 7Server entry, click the Enable icon to enable the repository. This enables the
latest RPM files for Red Hat Enterprise Linux 7.
NOTE
The difference between associating Red Hat Enterprise Linux Operating System with
either 7 Server repositories or 7.X repositories is that 7 Server repositories contain all the
latest updates while Red Hat Enterprise Linux 7.X repositories stop getting updates after
the next minor version release. Note that Kickstart repositories only have minor versions.
25
Red Hat Satellite 6.4 Content Management Guide
This displays the repositories in the product’s repository set, including their name and ID number. Enable
the repository using either the name or ID number. Also include the release version (7Server) and base
architecture (x86_64). For example:
For this scenario, use either the Web UI or the CLI to enable the following repositories for ACME:
Red Hat Enterprise Linux 7 Server RPM Repositories for the latest version
RPMs x86_64 7Server of Red Hat Enterprise Linux 7.
Use the 7 Server repository
instead of the 7.2 repository so
that you receive continuous
package updates.
Red Hat Satellite Tools 6.4 for RPM The Satellite Tools repository,
RHEL 7 Server RPMs x86_64 which contains system
management agents and tools for
client systems. After provisioning
a new system, Satellite installs
tools such as katello-agent
and Puppet to the client. Use the
7 Server repository instead of
the 7.2 repository so that you
receive continuous package
updates.
Red Hat Enterprise Linux 7.2 Kickstart The kickstart tree for Red Hat
Kickstart x86_64 7Server Enterprise Linux 7.2. Use this as
installation media for provisioning
new systems over PXE.
These repositories provide some initial content for our scenario’s DML. You can select more repositories
based upon your needs.
NOTE
For this scenario, all repositories use x86_64 as the base architecture.
26
CHAPTER 5. IMPORTING RED HAT CONTENT
Navigate to Content > Products and select Red Hat Enterprise Linux Server. This displays all
enabled repositories in our product. Select all repositories and click Sync Now. You can also view the
progress of the synchronization in the Web UI. Navigate to Content > Sync Status and expanding the
Product/Repository tree (or click Expand All).
You can also synchronize each repository individually. List all repositories in the product, then
synchronize using the ID number for the corresponding repositories. For example:
The synchronization duration depends on the size of each repository and the speed of your network
connection. The following table provides estimates of how long it would take to synchronize content,
depending on the available Internet bandwidth:
256 Kbps 5 Mins 27 Secs 6 Hrs 49 Mins 36 Secs 2 Days 7 Hrs 55 Mins
512 Kbps 2 Mins 43.84 Secs 3 Hrs 24 Mins 48 Secs 1 Day 3 Hrs 57 Mins
T1 (1.5 Mbps) 54.33 Secs 1 Hr 7 Mins 54.78 Secs 9 Hrs 16 Mins 20.57
Secs
100 Mbps 0.84 Secs 1 Min 2.91 Secs 8 Mins 35.4 Secs
A manual synchronization is often required for the initial content import into the DML. However, it is
recommended to create a synchronization plan to ensure that our DML updates on a regular basis.
NOTE
You can change the download policy for a Red Hat repository. Select a repository in the
Red Hat Enterprise Linux Server product and navigate to the Download Policy
field. If using the CLI, enter the hammer repository update command with the --
download-policy option.
27
Red Hat Satellite 6.4 Content Management Guide
Optimized Sync - it synchronizes the repository bypassing RPMs that have no detected
differences from the upstream RPMs.
Complete Sync - it synchronizes all RPMs regardless of detected changes. Use this option if
specific RPMs could not be downloaded to the local repository even though they exist in the
upstream repository.
Validate Content Sync - it synchronizes all RPMs and then verifies the checksum of all RPMs
locally. If the checksum of an RPM differs from the upstream, it re-downloads the RPM. This
option is relevant for yum repositories only. Use this option if you have one of the following
errors:
Package does not match intended download error, which means that specific
RPMs are corrupted.
28
CHAPTER 5. IMPORTING RED HAT CONTENT
1. To control the number of synchronization jobs that run in parallel, configure the
PULP_CONCURRENCY parameter in the /etc/default/pulp_workers file. For example,
to set the number of jobs that run in parallel to 1, change PULP_CONCURRENCY to 1:
PULP_CONCURRENCY=1
By default, on a system with less than 8 CPUs, PULP_CONCURRENCY is set to the number of
CPUs. On a system with more than 8 CPUs, it is set to 8.
2. To set the maximum network speed for synchronizing in bytes per second, configure the
max_speed parameter. This parameter must be configured separately for each importer in the
/etc/pulp/server/plugins.conf.d/ directory.
a. For example, to set the maximum speed for synchronizing RPM content to 10 bytes per
second, set the "max_speed" parameter in the
/etc/pulp/server/plugins.conf.d/yum_importer.json file to 10:
# cat /etc/pulp/server/plugins.conf.d/yum_importer.json
{
"proxy_host": null,
"proxy_port": null,
"proxy_username": null,
"proxy_password": null,
"max_speed": 10
}
Name - A plain text name for the plan. Enter Example Plan.
29
Red Hat Satellite 6.4 Content Management Guide
Description - A plain text description of the plan. Enter Example Plan for ACME’s
repositories.
Start Date and Start Time - Defines when to run the synchronization. We already completed a
synchronization today, so set the synchronization for tomorrow at 1:00 (1AM).
Click Save to create a plan. The plan details page displays along with two tabs for Details and
Products.
Now add your products. Click the Products tab, then click Add. Select the Red Hat Enterprise Linux
Server product and click Add Selected.
Then assign the Red Hat Enterprise Linux Server product to it:
Now Satellite Server checks its DML content against the Red Hat CDN on a daily basis and keeps its
Red Hat repositories up to date.
30
CHAPTER 6. IMPORTING CUSTOM CONTENT
For example, you can use the following chapters for information on specific types of custom content but
the underlying procedures are the same:
The relationship between a product and its repositories is the same and the repositories still
require synchronization.
Custom products require a subscription for clients to access, similar to subscriptions to Red Hat
Products. Red Hat Satellite 6 creates a subscription for each custom product you create.
For more information about creating and packaging RPMs, see the RPM Packaging Guide in the Red Hat
Enterprise Linux documentation.
If you require SSL certificates and keys to download RPMs, you can add them to Satellite.
1. In the Satellite web UI, navigate to Content > Content Credentials. In the Content Credentials
window, click Create Content Credential.
4. In the Content Credentials Content field, paste your SSL certificate, or click Browse to upload
your SSL certificate.
5. Click Save.
Prerequisites
1. Download a copy of the version specific repository package to your client system.
31
Red Hat Satellite 6.4 Content Management Guide
$ wget http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/pgdg-
redhat95-9.5-2.noarch.rpm
Procedure
To import a GPG key, complete the following procedure:
1. In the Satellite web UI, navigate to Content > Content Credentials and in the upper-right of the
window, click Create Content Credential.
2. Enter the name of your repository and select GPG Key from the Type list.
3. Either paste the GPG key into the Content Credential Contents field, or click Browse and
select the GPG key file that you want to import.
4. Click Save.
$ scp ~/etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG-95
[email protected]:~/.
Procedure
To create a custom product, complete the following procedure:
1. In the Satellite web UI, navigate to Content > Products, click New Product.
2. In the Name field, enter a name for the product. Red Hat Satellite 6 automatically completes the
Label field based on what you have entered for Name.
3. Optional: From the GPG Key list, select the GPG key for the product.
4. Optional: From the SSL CA Cert list, select the SSL CA certificate for the product.
5. Optional: From the SSL Client Cert list, select the SSL client certificate for the product.
32
CHAPTER 6. IMPORTING CUSTOM CONTENT
6. Optional: From the SSL Client Key list, select the SSL client key for the product.
7. Optional: From the Sync Plan list, select an existing sync plan or click Create Sync Plan and
create a sync plan for your product requirements.
9. Click Save.
The Products window in the Satellite web UI also provides a Repo Discovery function that finds all
repositories from a URL and you can select which ones to add to your custom product. For example, you
can use the Repo Discovery to search, for example, http://yum.postgresql.org/9.5/redhat/
and list all repositories for different Red Hat Enterprise Linux versions and architectures. This helps users
save time importing multiple repositories from a single source.
Procedure
1. In the Satellite web UI, navigate to Content > Products and select the product that you want to
use, and then click Create Repository.
2. In the Name field, enter a name for the repository. Red Hat Satellite 6 automatically completes
the Label field based on what you have entered for Name.
3. From the Type list, select the type of repository. You can select either a repository for RPM files
(yum), Puppet modules ( puppet), or Docker images (docker).
4. In the URL field, enter the URL of the external repository to use as a source.
5. From the Download Policy list, select the type of synchronization Satellite Server performs.
6. Ensure that the Mirror on Sync check box is selected. This ensures that the content that is no
longer part of the upstream repository is removed during synchronization.
7. From the Checksum list, select the checksum type for the repository.
33
Red Hat Satellite 6.4 Content Management Guide
8. Optional: If you want, you can clear the Publish via HTTP check box to disable this repository
from publishing through HTTP.
9. Optional: From the GPG Key list, select the GPG key for the product.
If you want to perform an immediate synchronization, in your product window, click Sync Now.
34
CHAPTER 7. CREATING AN APPLICATION LIFE CYCLE
Development
Production
However, a more complex application life cycle might have further stages, such as a phase for testing or
a beta release. This adds extra stages to the application life cycle:
Development
Testing
Beta Release
Production
Red Hat Satellite 6 provides methods to customize each application life cycle stage so that it suits your
specifications.
Each stage in the application life cycle is called an environment in Red Hat Satellite 6. Each environment
uses a specific collection of content. Red Hat Satellite 6 defines these content collections as a Content
View. Each Content View acts as a filter where you can define what repositories, packages, and Puppet
modules to include in a particular environment. This provides a method for you to define specific sets of
content to designate to each environment.
For example, an email server might only require a simple application life cycle where you have a
production-level server for real-world use and a test server for trying out the latest mail server packages.
When the test server passes the initial phase, you can set the production-level server to use the new
packages.
Another example is a development life cycle for a software product. To develop a new piece of software
in a development environment, test it in a quality assurance environment, pre-release as a beta, then
release the software as a production-level application.
35
Red Hat Satellite 6.4 Content Management Guide
After completing development on the patch, you promote the RPM to the Testing environment so the
Quality Engineering team can review the patch. The application life cycle then contains the following
package versions in each environment:
While the Quality Engineering team reviews the patch, the Development team starts work on
example_software 2.0. This results in the following application life cycle:
36
CHAPTER 7. CREATING AN APPLICATION LIFE CYCLE
The Quality Engineering team completes their review of the patch. Now example_software 1.1 is ready to
release. You promote 1.1 to the Production environment:
The Development team completes their work on example_software 2.0 and promotes it to the Testing
environment:
Finally, the Quality Engineering team reviews the package. After a successful review, promote the
package to the Production environment:
Procedure
To create an application life cycle, complete the following steps:
5. Click Save.
37
Red Hat Satellite 6.4 Content Management Guide
To view the chain of the life cycle environment, enter the hammer lifecycle-environment paths
command:
You can use Hammer CLI on Satellite Server or the Satellite web UI.
Procedure
To add a life cycle environment to Capsule Server, complete the following step:
1. In the Satellite web UI, navigate to Infrastructure > Capsules, and select the Capsule that you
want to add a life cycle to.
3. From the left menu, select the life cycle environments that you want to add to Capsule, and then
click Submit.
4. To synchronize Capsule’s content, click the Overview tab, and then click Synchronize.
38
CHAPTER 7. CREATING AN APPLICATION LIFE CYCLE
3. Verify the life cycle environments available and note the environment ID:
4. To view the life cycle environments available for your Capsule Server, enter the following
command and note the ID and the organization name:
Repeat for each life cycle environment you want to add to Capsule Server.
To synchronize all content from your Satellite Server environment to Capsule Server, enter the
following command:
To synchronize a specific life cycle environment from your Satellite Server to Capsule Server,
enter the following command:
Procedure
To remove a life cycle environment, complete the following steps:
1. In the Satellite web UI, navigate to Content > Life Cycle Environments.
39
Red Hat Satellite 6.4 Content Management Guide
2. Click the name of the life cycle environment that you want to remove, and then click Remove
Environment.
1. List the life cycle environments for your organization and note the name of the life cycle
environment you want to remove:
You can use both the Satellite web UI and the Hammer to remove life cycle environments from Capsule.
Procedure
To remove a life cycle environment from Capsule Server, complete the following step:
1. In the Satellite web UI, navigate to Infrastructure > Capsules, and select the Capsule that you
want to remove a life cycle from.
3. From the right menu, select the life cycle environments that you want to remove from Capsule,
and then click Submit.
4. To synchronize Capsule’s content, click the Overview tab, and then click Synchronize.
1. Select the Capsule Server that you want from the list and take note of its id:
40
CHAPTER 7. CREATING AN APPLICATION LIFE CYCLE
3. Verify the list of life cycle environments currently attached to the Capsule Server and take note of
the environment id:
Repeat this step for every life cycle environment that you want to remove from Capsule Server.
41
Red Hat Satellite 6.4 Content Management Guide
Each Content View creates a set of repositories across each environment, which Satellite Server stores
and manages. When you promote a Content View from one environment to the next environment in the
application life cycle, the respective repository on Satellite Server updates and publishes the packages.
This ensures systems are designated to a specific environment but receive updates when that
environment uses a new version of the Content View.
The general workflow for creating Content Views for filtering and creating snapshots is as follows:
2. Add the repository and the Puppet modules that you want to the Content View.
3. Optionally, create one or more filters to refine the content of the Content View.
If a repository is not associated with the Content View, the file /etc/yum.repos.d/redhat.repo
remains empty and systems registered to it cannot receive updates.
Hosts can only be associated with a single Content View. To associate a host with multiple Content
Views, create a composite Content View. For more information, see Section 8.5, “Creating a Composite
Content View”.
42
CHAPTER 8. MANAGING CONTENT VIEWS
Procedure
To create a content view complete the following steps:
1. In the Satellite web UI, navigate to Content > Content Views and click Create New View.
2. In the Name field, enter a name for the view. Red Hat Satellite 6 automatically completes the
Label field from the name you enter.
5. In the Repository Selection area, select the repositories that you want to add to your Content
View, then click Add Repositories.
6. Click Publish New Version and in the Description field enter information about the version to
log changes.
7. Optional: to force metadata regeneration on Yum repositories, select the Force Yum Metadata
Regeneration check box.
8. Click Save.
You can view the Content View in the Content Views window. To view more information about the
Content View, click the Content View name.
To register a host to your content view, see Registering a Host in the Managing Hosts guide.
For the --repository-ids option, you can find the IDs in the output of the hammer
repository list command.
43
Red Hat Satellite 6.4 Content Management Guide
Satellite Server creates the new version of the view and publishes it to the Library environment.
Procedure
To create a Content View with a Puppet module, complete the following steps:
1. In the Satellite web UI, navigate to Content > Content Views and click Create New View.
2. In the Name field, enter a name for the view. Red Hat Satellite 6 automatically completes the
Label field from the name you enter.
5. In the Repository Selection area, select the repositories that you want to add to your Content
View, then click Add Repositories.
6. Click the Puppet Modules tab, then click Add New Module.
7. Search for the module that you want to add and click Select a Version.
8. Navigate to the entry for Use Latest and click Select Version in the Actions column.
9. To publish, click the Versions tab and click Publish New Version. In the Description field,
enter a description to log the changes and click Save.
To register a host to your content view, see Registering a Host in the Managing Hosts guide.
1. promote_or_remove_content_views
2. promote_or_remove_content_views_to_environment.
With these permissions you can assign users permissions to promote certain Content Views to certain
environments, but not to other environments. For example, you can limit a user so that they are
permitted to promote to test environments, but not to production environments.
You must assign both permissions to a user to allow them to promote Content Views.
44
CHAPTER 8. MANAGING CONTENT VIEWS
Procedure
To promote a Content View, complete the following steps:
1. In the Satellite web UI, navigate to Content > Content Views and select the Content View that
you want to promote.
3. Select the version that you want to promote and in the Actions column, click Promote.
4. Select the environment where you want to promote the Content View, and click Promote
Version.
5. Click the Promote button again. This time select the Testing environment and click Promote
Version.
6. Finally click on the Promote button again. Select the Production environment and click
Promote Version.
Now the repository for the Content View appears in all environments.
Promote the Content View using the hammer content-view version promote each time:
To register a host to your content view, see Registering a Host in the Managing Hosts guide.
If you want to develop an application that supports different database servers. The example_application
appears as:
45
Red Hat Satellite 6.4 Content Management Guide
example_software
Application
Database
Operating System
PostgreSQL (Database)
MariaDB (Database)
example_software (Application)
From the previous Content Views, you can create two Composite Content Views.
example_software (Application)
PostgreSQL (Database)
example_software (Application)
MariaDB (Database)
Each Content View is then managed and published separately. When you create a version of the
application, you publish a new version of the Composite Content Views. You can also select the Auto
Publish option when creating a Composite Content View, and then the Composite Content View is
automatically republished when a Content View it includes is republished.
Repository Restrictions
46
CHAPTER 8. MANAGING CONTENT VIEWS
You cannot include more than one of each repository in Composite Content Views. For example, if you
attempt to include two Content Views using the same repository in a Composite Content View, Satellite
Server reports an error.
1. In the Satellite web UI, navigate to Content > Content Views and click Create New View.
2. In the Name field, enter a name for the view. Red Hat Satellite 6 automatically completes the
Label field from the name you enter.
4. Select the Composite View? check box to create a Composite Content View.
5. Optional: select the Auto Publish check box if you want the Composite Content View to be
republished automatically when a Content View is republished.
6. Click Save.
7. In the Add Content Views area, select the Content Views that you want to add to the Composite
Content View, and then click Add Content Views.
8. Click Publish New Version to publish the Composite Content View. In the Description field,
enter a description and click Save.
9. Click Promote and select the lifecycle environments to promote the Composite Content View to,
enter a description, and then click Promote Version.
1. Before you create the Composite Content Views, list the version IDs for our existing Content
Views:
2. Create a new Composite Content View and include the Content View IDs with the --
component-ids option. When the --auto-publish option is set to yes, the Composite
Content View is automatically republished when a Content View it includes is republished:
47
Red Hat Satellite 6.4 Content Management Guide
Content Types
There are also four types of content to filter:
48
CHAPTER 8. MANAGING CONTENT VIEWS
Erratum (by ID) Select which specific errata to add to the filter. The
list of Errata is based on the repositories added to the
Content View.
Erratum (by Date and Type) Select a issued or updated date range and errata
type (Bugfix, Enhancement, or Security) to add to the
filter.
Example 1
Create a repository with the base Red Hat Enterprise Linux packages. This filter requires a Red Hat
Enterprise Linux repository added to the Content View.
Filter:
Example 2
Create a repository that excludes all errata, except for security updates, after a certain date. This is
useful if you want to perform system updates on a regular basis with the exception of critical security
updates, which must be applied immediately. This filter requires a Red Hat Enterprise Linux repository
added to the Content View.
Filter:
49
Red Hat Satellite 6.4 Content Management Guide
Filter: Select only the Bugfix and Enhancement errata types, and clear the Security errata
type. Set the Date Type to Updated On. Set the Start Date to the date you want to restrict
errata. Leave the End Date blank to ensure any new non-security errata is filtered.
Example 3
A combination of Example 1 and Example 2 where you only require the operating system packages and
want to exclude recent bug fix and enhancement errata. This requires two filters attached to the same
Content View. The Content View processes the Include filter first, then the Exclude filter.
Filter 1:
Filter 2:
Filter: Select only the Bugfix and Enhancement errata types, and clear the Security errata
type. Set the Date Type to Updated On. Set the Start Date to the date you want to restrict
errata. Leave the End Date blank to ensure any new non-security errata is filtered.
For another example of how content filters work, see the following article: "How do content filters work in
Satellite 6"
Procedure
To create a content filter, complete the following steps:
1. In the Satellite web UI, navigate to Content > Content Views and select a Content View.
4. From the Content Type list, select the content type that you want to filter. Depending on what
you select for the new filter’s content type, different options appear.
6. In the Description field, enter a description for the filter, and click Save.
7. Depending on what you enter for Content Type, add rules to create the filter that you want.
8. Click the Affected repositories tab to select which specific repositories use this filter.
50
CHAPTER 8. MANAGING CONTENT VIEWS
9. Click Publish New Version to publish the filtered repository. In the Description field, enter a
description of the changes, and click Save.
1. Add a filter to the Content View. Use the --inclusion false option to set the filter to an
Exclude filter:
51
Red Hat Satellite 6.4 Content Management Guide
You can use activation keys during content host registration to improve the speed, simplicity and
consistency of the process.
Activation keys can define the following properties for content hosts:
You can apply the same activation key to multiple content hosts if it contains enough subscriptions.
However, activation keys set only the initial configuration for a content host. When the content host is
registered to an organization, the organization’s content can be attached to the content host manually.
A content host can be associated with multiple activation keys that are combined to define the host
settings. In case of conflicting settings, the last specified activation key takes precedence.
Note that activation keys are used only when hosts are registered. If changes are made to an activation
key, it is applicable only to hosts that are registered with the amended activation key in the future. The
changes are not made to existing hosts.
Based on the previous factors, there are three possible scenarios for subscribing with activation keys:
Custom Products
52
CHAPTER 9. MANAGING ACTIVATION KEYS
If a custom product, typically containing content not provided by Red Hat, is assigned to an activation
key, this product is always enabled for the registered content host regardless of the auto-attach setting.
Procedure
To create an activation key, complete the following steps:
1. In the Satellite web UI, navigate to Content > Activation keys and click Create Activation Key.
3. If you want to set a limit, clear the Unlimited hosts check box, and in the Limit field, enter the
maximum number of systems you can register with the activation key. If you want unlimited
hosts to register with the activation key, ensure the Unlimited Hosts check box is selected.
7. Click Save and when your new activation key appears in the Activation Keys window, click the
name to edit.
8. To define which products to attach and repositories to enable upon registration, click the
Subscriptions tab, select the subscriptions that you want to add, then click Add.
9. In the Satellite web UI, navigate to the Product Content page. For example, to enable the Red
Hat Satellite Tools repository, for Red Hat Satellite Tools 6.4 (for RHEL 7 Server) (RPMs) -
Enabled select Override to Yes.
3. Attach the Red Hat Enterprise Linux subscription UUID to the activation key:
53
Red Hat Satellite 6.4 Content Management Guide
5. Override the default auto-enable status for the Red Hat Satellite Tools 6.4 repository. The default
status is set to disabled. To enable, enter the following command:
Note that changes to an activation key apply only to machines provisioned after the change. To update
subscriptions on existing content hosts, see Section 4.2.6, “Bulk Updating Content Hosts' Subscriptions”.
Procedure
To update the subscriptions associated with an activation key, complete the following steps:
1. In the Satellite web UI, navigate to Content > Activation keys and click the name of the
activation key.
3. To remove subscriptions, select List/Remove, and then select the check boxes to the left of the
subscriptions to be removed and then click Remove Selected.
4. To add subscriptions, select Add, and then select the check boxes to the left of the subscriptions
to be added and then click Add Selected.
5. Click the Repository Sets tab and review the repositories' status settings.
6. To enable or disable a repository, select the check box for a repository and then change the
status using the Select Action list.
7. Click the Details tab, select a Content View for this activation key, and then click Save.
54
CHAPTER 9. MANAGING ACTIVATION KEYS
For the --subscription-id option, you can use either the UUID or the ID of the subscription.
For the --subscription-id option, you can use either the UUID or the ID of the subscription.
55
Red Hat Satellite 6.4 Content Management Guide
Procedure
To update the subscription list using a CSV file, complete the following procedure:
1. Export the subscriptions from Satellite Server to a CSV file. For this example, a_keys.csv:
3. Change the required values in the CSV file. You can use an editor, with a CSV plug-in, or sed to
change strings in the Subscriptions field.
# cp a_keys.csv a_keys.csv.backup
56
CHAPTER 9. MANAGING ACTIVATION KEYS
Registering new hosts during provisioning through Red Hat Satellite 6. The kickstart provisioning
templates in Red Hat Satellite 6 contain commands to register the host using an activation key
that is defined when creating a host.
Registering existing Red Hat Enterprise Linux hosts. Configure Red Hat Subscription Manager to
use Satellite Server for registration and specify the activation key when running the
subscription-manager register command.
Procedure
To use an activation key for host registration with an existing Red Hat Enterprise Linux 7 host to Satellite
Server, complete the following steps:
1. Download the consumer RPM for your Satellite Server. This is located in the pub directory on the
host’s web server. For example, for a Satellite Server with the host name
satellite.example.com, enter the following command on the host to register:
This RPM installs the necessary certificates for accessing repositories on Satellite Server and
configures Red Hat Subscription Manager to use the server’s URL.
2. On the host, enter the following command to register the host to Satellite using the activation
key:
3. To view a list of hosts for an organization, on Satellite Server, enter the following command:
4. After registering a host to Satellite Server, install the katello-agent package on the host so
that it can report back to Satellite Server:
The Red Hat Satellite Tools 6.4 repository provides this package.
Settings Conflicts
If there are conflicting settings in activation keys, the rightmost key takes precedence.
57
Red Hat Satellite 6.4 Content Management Guide
Settings that conflict: Service Level, Release Version, Environment, Content View, and
Product Content.
Settings that do not conflict and the host gets the union of them: Subscriptions and Host
Collections.
Settings that influence the behavior of the key itself and not the host configuration: Content Host
Limit and Auto-Attach.
You can enable auto-attach and have no subscriptions associated with the key. This type of key is
commonly used to register virtual machines when you do not want the virtual machine to consume a
RHEL subscription but to inherit a RHEL Virtual Data Center (VDC) subscription from the hypervisor.
Auto-attach is enabled by default. Disable the option if you want to force attach all subscriptions
associated with the activation key.
Procedure
To enable auto-attach, complete the following steps:
6. Click Save.
To register virtual content hosts to Satellite Server using an auto-attach activation key, first use the
virt-who utility to map those hosts to a hypervisor entitled with the Virtual Datacenter (VDC)
subscription. Without this prerequisite, virtual hosts are registered only with a temporary virtual
subscription for 24 hours. For more information, see Applying Virtual Guest Subscriptions in the Virtual
Instances Guide.
58
CHAPTER 9. MANAGING ACTIVATION KEYS
subscriptions with premium service levels are attached to the host upon registration.
Procedure
To set the service level, complete the following steps:
4. Select the required service level from the list. The list only contains service levels available to the
activation key.
5. Click Save.
59
Red Hat Satellite 6.4 Content Management Guide
Security Advisory
Describes fixed security issues found in the package. The security impact of the issue can be Low,
Moderate, Important, or Critical.
Bug Fix Advisory
Describes bug fixes for the package.
Product Enhancement Advisory
Describes enhancements and new features added to the package.
Red Hat Satellite 6 imports this errata information when synchronizing repositories with Red Hat’s
Content Delivery Network (CDN). Red Hat Satellite 6 also provides tools to inspect and filter errata,
allowing for precise update management. This way, you can select relevant updates and propagate
them through Content Views to selected content hosts.
Errata are labeled according to the most important advisory type they contain. Therefore, errata labeled
as Product Enhancement Advisory can contain only enhancement updates, while Bug Fix Advisory
errata can contain both bug fixes and enhancements, and Security Advisory can contain all three types.
In Red Hat Satellite, there are two keywords that describe an erratum’s relationship to the available
content hosts:
Applicable
Erratum applies to one or more content hosts, which means it updates packages present on the
content host. Applicable errata are not yet accessible by the content host.
Installable
Erratum applies to one or more content hosts and it has been made available to the content host.
Installable errata are present in the content host’s life cycle environment and Content View, but are
not yet installed. This way, errata can be installed by users who have permissions to manage content
hosts, but are not entitled for errata management at higher levels.
This chapter shows how to manage errata and apply them to either a single system or multiple systems.
2. Use the filtering tools at the top of the page to limit the number of displayed errata:
Select the repository to be inspected from the list. All Repositories is selected by default.
The Applicable check box is selected by default to view only errata applicable to the
selected repository. Select the Installable check box to view only errata marked as
installable.
60
CHAPTER 10. MANAGING ERRATA
To search the table of errata, type the query in the Search field in the form of:
See Table 10.1, “Parameters Available for Errata Search” for the list of parameters available
for search. Find the list of applicable operators in Supported Operators for Granular Search
in Administering Red Hat Satellite. Automatic suggestion works as you type. You can also
combine queries with the use of and and or operators. For example, to display only security
advisories related to the kernel package, type:
The Details tab contains the description of the updated package as well as documentation
of important fixes and enhancements provided by the update.
On the Content Hosts tab, you can apply the erratum to selected content hosts as
described in Section 10.5, “Applying Errata to Multiple Systems”.
The Repositories tab lists repositories that already contain the erratum. You can filter
repositories by the environment and Content View, and search for them by the repository
name.
issued Search by the issue date. You issued < "Jan 12,2015"
can specify the exact date, like
"Feb16,2015", or use keywords,
for example "Yesterday", or "1
hour ago". The time range can be
specified with the use of the "<"
and ">" operators.
61
Red Hat Satellite 6.4 Content Management Guide
updated Search by the date of the last updated = "6 days ago"
update. You can use the same
formats as with the issued
parameter.
Date Range - Define a date range and include a set of errata released during that date range.
Type - Select the type of errata to include such as bug fixes, enhancements, and security
updates.
Prerequisites
62
CHAPTER 10. MANAGING ERRATA
A Content View with the repositories that contain required errata is created. For more
information, see Section 8.1, “Creating a Content View”.
Procedure
1. In the Satellite web UI, navigate to Content > Content Views and select a Content View that
you want to use for applying errata.
4. From the Content Type list, select Erratum - Date and Type.
7. Click Save.
8. For Errata Type, select the check boxes of errata types you want to exclude. For example,
select the Enhancement and Bugfix check boxes and clear the Security check box to exclude
enhancement and bugfix errata after certain date, but include all the security errata.
10. Select the Start Date to exclude all errata on or after the selected date.
18. Select the environments you want to promote the Content View version to.
20. Click Promote Version to promote this Content View version across the required environments.
63
Red Hat Satellite 6.4 Content Management Guide
2. Create a filter rule to exclude all errata on or after the Start Date that you want to set:
4. Promote the Content View to the lifecycle environment so that the included errata are available
to that lifecycle environment:
Prerequisites
Synchronize Red Hat Satellite repositories with the latest errata available from Red Hat. For
more information, see Section 5.6, “Synchronizing Red Hat Repositories”.
Register the host to an environment and Content View on Satellite Server. For more information,
see Registering a Host in the Managing Hosts guide.
Install the katello-agent package on the host. For more information, see the Installing the
Katello Agent section in the Managing Hosts guide.
Procedure
1. In the Satellite web UI, navigate to Hosts > Content Hosts and select the host you want to
apply errata to.
3. Select the errata to apply and click Apply Selected. In the confirmation window, click Apply.
4. After the task to update all packages associated with the selected errata completes, click the
Details tab to view the updated packages.
64
CHAPTER 10. MANAGING ERRATA
2. Apply the most recent erratum to the host. Identify the erratum to apply using the erratum ID:
Prerequisites
Synchronize Red Hat Satellite repositories with the latest errata available from Red Hat. For
more information, see Section 5.6, “Synchronizing Red Hat Repositories”.
Register the hosts to an environment and Content View on Satellite Server. For more
information, see Registering a Host in the Managing Hosts guide.
Install the katello-agent package on hosts. For more information, see the Installing the
Katello Agent section in the Managing Hosts guide.
Procedure
4. Select the systems you want to apply errata to and click Apply to Hosts.
5. Click Confirm.
2. Select the erratum you want to use and list the systems that this erratum is applicable to:
65
Red Hat Satellite 6.4 Content Management Guide
4. Enter the following command for each host and replace $HOST with the name of the system for
each execution.
This command identifies all hosts with erratum_IDs as an applicable erratum and then applies
the erratum to each host.
66
CHAPTER 11. MANAGING OSTREE CONTENT
You can use Red Hat Satellite 6 to synchronize and manage OSTree branches from an OSTree
repository.
In Satellite Server 6.4, OSTree management tools are enabled by default. If you ever have a reason to
enable the tool, enter the following command:
# satellite-installer --katello-enable-ostree=true
Procedure
To find and synchronize OSTree content, complete the following steps:
1. In the Satellite web UI, navigate to Content > Red Hat Repositories.
3. In the Available Repositories pane, locate the OSTree repisotry set you want to use, for
example, the Red Hat Enterprise Linux Atomic Host Trees set from the Red Hat Enterprise
Linux Atomic Host product group.
4. Click the Enable icon to enable the repository you want to use.
5. Navigate to Content > Products and click the product that you want to use, for example
Red Hat Enterprise Linux Atomic Host.
6. Select the upstream synchronization policy for this repository. By default, Satellite synchronizes
only the latest OSTree branch.
b. From the Upstream Sync Policy menu, select one of the following policies to synchronize
OSTree branches for this repository:
c. Click Save.
67
Red Hat Satellite 6.4 Content Management Guide
In the Satellite web UI, navigate to Content > Sync Status and expand, for example, Red Hat
Enterprise Linux Atomic Host.
1. Search the Red Hat Enterprise Linux Server product for ostree repositories:
2. Enable the ostree repository for Red Hat Enterprise Linux Atomic Host or any product that you
want to use:
Procedure
To import custom OSTree content, complete the following steps:
1. In the Satellite web UI, navigate to Content > Products and click Create Product.
2. In the Name field, enter a name for your OSTree content. This automatically populates the
Label field.
3. Optional: In the GPG Key field, enter a GPG Key for the entire product.
4. From the Sync Plan menu, select a synchronization plan to associate with the product.
5. In the Description field, enter a description of the product and click Save.
7. In the Name field, enter a name for the repository. This automatically populates the Label field.
68
CHAPTER 11. MANAGING OSTREE CONTENT
9. In the URL field, enter the URL of the registry to use as a source. For example
http://www.example.com/rpm-ostree/.
10. From the Upstream Sync Policy menu, select one of the following policies to synchronize
OSTree branches for this repository:
Custom - synchronize a custom number of OSTree branches. Enter the required number
into the field below.
12. When the repository creation completes, select the new repository and click Sync Now to start
the synchronization process.
In the Satellite web UI, navigate to Content > Sync Status and expand the entry that you want
to view.
69
Red Hat Satellite 6.4 Content Management Guide
Procedure
To create a content view for your OSTree and add a repository, complete the following steps:
1. In the Satellite web UI, navigate to Content > Content Views and click Create New View.
2. In the Name field, enter a plain text name for the view. This automatically populates the Label
field.
4. If you want to use a Composite Content View, select the Composite View check box.
7. Select the OSTree repository for that you want to use. Click Add Repository to add the OSTree
content from this repository to the Content View.
9. In the Description field, enter a description for the version, and click Save.
You can also click Promote to promote this Content View across environments in the application life
cycle.
70
CHAPTER 12. MANAGING ISO IMAGES
Procedure
To import Red Hat ISO images, complete the following steps:
1. In the Satellite web UI, navigate to Content > Red Hat Repositories.
2. In the Search field, enter an image name, for example, Red Hat Enterprise Linux 7
Server (ISOs).
3. In the Available Repositories window, expand Red Hat Enterprise Linux 7 Server (ISOs).
4. For the x86_64 7.2 entry, click the Enable icon to enable the repositories for the image.
5. Navigate to Content > Products and click Red Hat Enterprise Linux Server.
6. Click the Repositories tab of the Red Hat Enterprise Linux Server window, and click Red Hat
Enterprise Linux 7 Server ISOs x86_64 7.2.
7. In the upper right of the Red Hat Enterprise Linux 7 Server ISOs x86_64 7.2 window, click Select
Action and select Sync Now.
In the web UI, navigate to Content > Sync Status and expand Red Hat Enterprise Linux
Server.
1. Locate the Red Hat Enterprise Linux Server product for file repositories:
2. Enable the file repository for Red Hat Enterprise Linux 7.2 Server ISO:
71
Red Hat Satellite 6.4 Content Management Guide
Procedure
To import custom ISO images, complete the following steps:
1. In the Satellite web UI, navigate to Content > Products, and in the Products window, click New
Product.
2. In the Name field, enter a name to identify the product. This name populates the Label field.
3. In the GPG Key field, enter a GPG Key for the product.
4. From the Sync Plan list, select a synchronization plan for the product.
6. Click Save.
7. In the Products window, click the new product and then click Create Repository.
8. In the Name field, enter a name for the repository. This automatically populates the Label field.
10. In the Upstream URL field, enter the URL of the registry to use as a source. Add a
corresponding user name and password in the Upstream Username and Upstream Password
fields.
72
CHAPTER 12. MANAGING ISO IMAGES
73
Red Hat Satellite 6.4 Content Management Guide
You can upload files to the repository and synchronize files from an upstream Satellite Server. When you
add files to a custom file type repository, you can use the normal Satellite management functions such
as adding a specific version to a Content View to provide version control and making the repository of
files available on various Capsule Servers. Clients must download the files over HTTP or HTTPS using
curl -O.
You can create a file type repository in Satellite Server only in a custom product, but there is flexibility in
how you create the file type repository. You can create an independent file type repository in a directory
on the system where Satellite is installed, or on a remote HTTP server, and then synchronize the
contents of that directory into Satellite. This method is useful when you have multiple files to add to a
Satellite repository.
Procedure
To create a custom product, complete the following procedure:
1. In the Satellite web UI, navigate to Content > Products, click Create Product and enter the
following details:
2. In the Name field, enter a name for the product. Red Hat Satellite 6 automatically completes the
Label field based on what you have entered for Name.
3. Optional: From the GPG Key list, select the GPG key for the product.
4. Optional: From the Sync Plan list, select a synchronization plan for the product.
5. In the Description field, enter a description of the product, and then click Save.
To create a repository for your custom product, complete the following procedure:
1. In the Products window, select the name of a product that you want to create a repository for.
3. In the Name field, enter a name for the repository. Red Hat Satellite 6 automatically completes
the Label field based on the name.
5. In the Upstream URL field, enter the URL of the upstream repository to use as a source.
74
CHAPTER 13. MANAGING CUSTOM FILE TYPE CONTENT
6. Select the Verify SSL check box if you want to verify that the upstream repository’s SSL
certificates are signed by a trusted CA.
7. In the Upstream Username field, enter the user name for the upstream repository if required for
authentication. Clear this field if the repository does not require authentication.
8. In the Upstream Password field, enter the corresponding password for the upstream repository.
Clear this field if the repository does not require authentication.
9. Click Save.
Table 13.1. Optional Parameters for the hammer product create Command
Option Description
Table 13.2. Optional Parameters for the hammer repository create Command
Option Description
75
Red Hat Satellite 6.4 Content Management Guide
Option Description
--mirror-on-sync boolean Must this repo be mirrored from the source, and
stale RPMs removed, when synced? Set to
true or false, yes or no, 1 or 0 .
--verify-ssl-on-sync boolean Must Katello verify that the upstream URL’s SSL
certificates are signed by a trusted CA? Set to
true or false, yes or no, 1 or 0 .
Use this procedure to configure a repository in a directory on the base system where Satellite is installed.
To create a file type repository in a directory on a remote server, see Section 13.3, “Creating a Remote
File Type Repository”.
Procedure
To create a file type repository in a local directory, complete the following procedure:
76
CHAPTER 13. MANAGING CUSTOM FILE TYPE CONTENT
3. Create a directory that you want to use as the file type repository in the HTTP server’s public
folder:
# mkdir my_file_repo
# touch my_file_repo/test.txt
# pulp-manifest my_file_repo
# ls my_file_repo
PULP_MANIFEST test.txt
5. In the Name field, enter a name for the repository. Red Hat Satellite 6 automatically completes
this field based on what you enter for Name.
6. From the Type list, select the content type of the repository.
7. In the Upstream URL field, enter the local directory with the repository to use as the source, in
the form file:///my_file_repo.
8. Select the Verify SSL check box to check the SSL certificate for the repository or clear the
Verify SSL check box.
9. Optional: In the Upstream Username field, enter the upstream user name that you require.
10. Optional: In the Upstream Password field, enter the corresponding password for your upstream
user name.
77
Red Hat Satellite 6.4 Content Management Guide
5. Visit the URL where the repository is published to see the files.
Use this procedure to configure a repository in a directory on a remote server. To create a file type
repository in a directory on the base system where Satellite Server is installed, see Section 13.2,
“Creating a Custom File Type Repository in a Local Directory”.
Prerequisites
Before you create a remote file type repository, ensure the following conditions exist:
You have a Red Hat Enterprise Linux 7 server registered to your Satellite or the Red Hat CDN.
Your server has an entitlement to the Red Hat Enterprise Linux Server and Satellite Tools
repositories.
You have installed an HTTP server. For more information about configuring a web server, see
The Apache HTTP Server in the Red Hat Enterprise Linux 7 System Administrator’s Guide.
Procedure
To create a file type repository in a remote directory, complete the following procedure:
1. On your remote server, ensure that the Server and Satellite Tools repositories are enabled:
3. Create a directory that you want to use as the file type repository in the HTTP server’s public
folder:
# mkdir /var/www/html/pub/my_file_repo
# touch /var/www/html/pub/my_file_repo/test.txt
# pulp-manifest /var/www/html/pub/my_file_repo
78
CHAPTER 13. MANAGING CUSTOM FILE TYPE CONTENT
# ls /var/www/html/pub/my_file_repo
PULP_MANIFEST test.txt
1. Ensure a custom product exists in Satellite Server, or create a custom product. For more
information see Section 13.1, “Creating a Custom File Type Repository in Red Hat Satellite”
5. In the Name field, enter a name for the repository. Red Hat Satellite 6 automatically completes
this field based on what you enter for Name.
7. In the Upstream URL field, enter the URL of the upstream repository to use as a source.
8. Select the Verify SSL check box if you want to verify that the upstream repository’s SSL
certificates are signed by a trusted CA.
9. In the Upstream Username field, enter the user name for the upstream repository if required for
authentication. Clear this field if the repository does not require authentication.
10. In the Upstream Password field, enter the corresponding password for the upstream repository.
Clear this field if the repository does not require authentication.
12. To update the file type repository, navigate to Content > Products. Select the name of a
product that contains the repository that you want to update.
13. In the product’s window, select the name of the repository you want to update.
Visit the URL where the repository is published to view the files.
79
Red Hat Satellite 6.4 Content Management Guide
4. Click Browse to search and select the file you want to upload.
6. Visit the URL where the repository is published to see the file.
The --path option can indicate a file, a directory of files, or a glob expression of files. Globs must be
escaped by single or double quotes.
Prerequisites
You have a custom file type repository. See Section 13.1, “Creating a Custom File Type
Repository in Red Hat Satellite” for more information.
You know the name of the file you want to download to clients from the file type repository.
1. The katello-server-ca.crt. For more information, see Installing the Katello Root CA
Certificate in the Administering Red Hat Satellite guide.
Procedure
To download files to a host from a custom file type repository, complete the following procedure:
4. Check to see if Publish via HTTP is enabled. If it is not, you require the certificates to use
HTTPS.
80
CHAPTER 13. MANAGING CUSTOM FILE TYPE CONTENT
3. On the client, enter a command in the appropriate format for HTTP or HTTPS:
For HTTP:
# curl -O satellite.example.com/pulp/isos/uuid/my_file
For HTTPS:
81
Red Hat Satellite 6.4 Content Management Guide
Procedure
1. In the Satellite web UI, navigate to Content > Products, and click the product that you want to
use.
3. In the Name field, enter a name for the repository. Red Hat Satellite 6 automatically completes
the Label field based on what you have entered for Name.
5. In the URL field, enter the URL of the external repository to use as a source. You can use a
repository source to synchronize your own Puppet modules.
6. Click Save.
Prerequisites
1. From the Puppet Forge website, download the module that you want to use, for example,
https://forge.puppetlabs.com/puppetlabs/postgresql.
82
CHAPTER 14. MANAGING CUSTOM PUPPET CONTENT
2. In your web browser, click download latest tar.gz to save to your local file system.
Procedure
1. In the Satellite web UI, navigate to Content > Products and select the product that contains the
Puppet repository that you want to manage.
2. In the repository window, click the new Puppet repository, which displays the details page for that
repository.
3. Navigate to the Upload Puppet Module area, click Browse, select the newly downloaded and
extracted Puppet module, and click Upload.
To manage and remove Puppet modules from a product, complete the following steps:
1. In the window for your Puppet Modules repository, navigate to the upper right of the window to
the Content Counts area. In the Puppet Modules row, click the numerical value that is
displayed for the Puppet Modules.
2. In the Manage Puppet Modules for your Puppet Module repository window, select the modules
that you want to manage and then click Select Action and perform an action, or select Remove
Puppet Modules.
Procedure
1. In the Satellite web UI, navigate to Content > Products and click New Product.
2. In the Name field, enter a name for the product. Red Hat Satellite 6 automatically completes the
Label field based on what you have entered for Name.
3. Optional: From the GPG Key list, select the GPG key for the product.
83
Red Hat Satellite 6.4 Content Management Guide
4. Optional: From the Sync Plan list, select a synchronization plan for the product.
6. Click Save.
8. In the Name field, enter a name for the repository. Red Hat Satellite 6 automatically completes
this field based on what you have entered for Name.
12. Select the new Puppet repository and click Sync Now to import all modules from Puppet Forge
into Satellite Server. This can take a long time.
The Puppet Forge repository contains several thousand modules and can take a long time to
synchronize.
84
CHAPTER 14. MANAGING CUSTOM PUPPET CONTENT
run the utility on Satellite Server itself, publish to a local directory, and synchronize against that directory.
For example:
# mkdir /modules
# chmod 755 /modules
# pulp-puppet-module-builder \
--output-dir=/modules \
[email protected]:mymodules.git \
--branch=develop
This example checks out the develop branch of the Git repository from
[email protected]:mymodules.git and publishes it to /modules. Add this directory as the
URL (file:///modules) for a new repository on Satellite Server.
# mkdir /var/www/html/modules/
# chmod 755 /var/www/html/modules/
# pulp-puppet-module-builder \
--output-dir=/var/www/html/modules/ \
[email protected]:mymodules.git \
--branch=develop
Procedure
3. In the URL field, enter the URL of the external Git repository to use as a source in the following
format: file:///modules.
85
Red Hat Satellite 6.4 Content Management Guide
IMPORTANT
Do not mount the full /var/lib/pulp on an NFS share. Parts of Satellite Server use
transient SQLite databases, which have issues over NFS. Red Hat recommends the use
of high-bandwidth, low-latency storage for the /var/lib/pulp file system. Red Hat
Satellite has many operations that are IO-intensive so usage of high-latency, low-
bandwidth storage could potentially have issues with performance degradation. Only use
the NFS share for the /var/lib/pulp/content directory.
4. You need to copy the existing contents of /var/lib/pulp/content to the NFS share. First,
mount the NFS share to a temporary location:
# mkdir /mnt/temp
# mount -o rw nfs.example.com:/satellite/content /mnt/temp
# cp -r /var/lib/pulp/content/* /mnt/temp/.
5. Set the permissions for all files on the share to use the apache user. This ID of this user is
usually 48.
# umount /mnt/temp
# rm -rf /var/lib/pulp/content/*
86
APPENDIX A. USING AN NFS SHARE FOR CONTENT STORAGE
This makes the mount persistent across system reboots. Ensure to include the SELinux context.
# mount -a
# df
Filesystem 1K-blocks Used Available
Use% Mounted on
...
nfs.example.com:/satellite/content 309506048 58632800 235128224 20%
/var/lib/pulp/content
...
Also confirm that the existing content exists at the mount on var/lib/pulp/content:
# ls /var/lib/pulp/content
Satellite Server now uses the NFS share to store content. Run a content synchronization (see
Section 5.3, “Synchronizing Content”) to ensure the NFS share works as expected.
87
Red Hat Satellite 6.4 Content Management Guide
IMPORTANT
This section is not required if your Satellite Server is connected to the Internet.
Download the product ISO from the Red Hat Customer Portal, as follows:
1. Navigate to Downloads (at the very top of the window) and select Red Hat Satellite.
2. Open the Content ISOs tab. All products in your subscription are listed here.
3. Click the link for the product name, such as Red Hat Enterprise Linux 6 Server (x86_64) to
download the ISO.
4. Copy all of Satellite Content ISOs to a directory Satellite can access. This example uses
/root/isos.
5. Create a local directory that are shared through httpd on the Satellite. This example uses
/var/www/html/pub/sat-import/.
# mkdir -p /var/www/html/pub/sat-import/
6. Mount and recursively copy the contents of the first ISO to the local directory:
# mkdir /mnt/iso
# mount -o loop /root/isos/first_iso /mnt/iso
# cp -ruv /mnt/iso/* /var/www/html/pub/sat-import/
# umount /mnt/iso
# rmdir /mnt/iso
7. Repeat the above step for each ISO until you have copied all the data from the Content ISOs
into /var/www/html/pub/sat-import/.
9. Satellite Server now contains the content from the Content ISOs. However, Satellite Server
needs to point to this location as the CDN URL. In the Satellite Web UI, navigate to Content >
Red Hat Subscriptions. .
11. On the Subscription Manifest information screen, select the Actions tab.
12. Navigate to Red Hat Provider Details. Click the edit icon on the Red Hat CDN URL and change
the URL to the Satellite host name with the newly created directory, for example:
88
APPENDIX B. IMPORTING CONTENT ISOS INTO A DISCONNECTED SATELLITE
http://server.example.com/pub/sat-import/
13. Click Save and then upload your manifest using Section 4.1.8, “Importing a Subscription
Manifest into Satellite Server”.
Satellite is now acting as its own CDN with the files located in
http://server.example.com/pub/sat-import/. This is not a requirement. The CDN can be
hosted on a different machine inside the same disconnected network as long as it is accessible to
Satellite Server using HTTP.
If your environment changes from disconnected to connected, you can reconfigure a disconnected
Satellite to pull content directly from Red Hat Customer Portal:
1. In the Satellite Web UI, navigate to Content > Red Hat Subscriptions.
4. Navigate to Red Hat Provider Details. Click the edit icon on the Red Hat CDN URL and change
the URL to the Red Hat CDN URL:
https://cdn.redhat.com
5. Click Save
Satellite Server pulls content directly from Red Hat Customer Portal on the next synchronization.
89
Red Hat Satellite 6.4 Content Management Guide
IMPORTANT
This section is not required if your Satellite Server is connected to the Internet.
This example shows how to perform the first synchronization of the Red Hat Enterprise Linux 6 repository
from content ISOs. At the time of writing there are 21 DVD size ISO files.
Downloading the content ISOs from the Red Hat Customer Portal
1. In your browser, navigate to Red Hat Customer Portal and log in.
2. Click DOWNLOADS.
4. Select the Content ISOs tab. All products in your subscription are listed there.
5. Search for the section required, in this example Red Hat Enterprise Linux 6.
6. Click the link for the product name, such as RHEL 6 Server (x86_64)(2017-04-
14T01:27:00) to reveal the ISO files.
7. Using your browser, download the required ISOs to a location accessible by your browser. For
example, to your workstation’s Downloads directory.
1. In a terminal connected to Satellite Server, create a directory to act as a temporary store for all of
the required Satellite Content ISOs. This example uses /tmp/isos/rhel6:
# mkdir -p /tmp/isos/rhel6
$ scp ~/Downloads/iso_file
[email protected]:/tmp/isos/rhel6
3. On Satellite Server, create a directory to serve as a mount point for the ISOs:
# mkdir /mnt/iso
90
APPENDIX C. IMPORTING CONTENT ISOS INTO A CONNECTED SATELLITE
# mkdir /mnt/rhel6
5. Mount and recursively copy the contents of the first ISO to the working directory:
6. Repeat the above step for each ISO until you have copied all the data from the Content ISOs
into /mnt/rhel6.
# rmdir /mnt/iso
8. If required, remove the temporary working directory and its contents to regain the space:
# rm -rf /tmp/isos/
1. Set the owner and the SELinux context for the directory and its contents to be the same as
/var/lib/pulp:
[rhel-6-server]
enabled: 1
priority: 0
expires: 3d
name: Red Hat Enterprise Linux 6 Server
type: yum
base_url:
file:///mnt/rhel6/content/dist/rhel/server/6/6Server/x86_64/os/
The base_url path might differ in your content ISO. The directory specified in base_url must
contain the repodata directory, otherwise the synchronization fails. To synchronize multiple
repositories, create a separate entry for each of them in the configuration file
/etc/pulp/content/sources/conf.d/local.conf.
3. In the Satellite web UI, navigate to Content > Red Hat Repositories and enable the following
repository: Red Hat Enterprise Linux 6 Server RPMs x86_64 6Server.
4. Under Content > Sync Status select the repository to be synchronized and click Synchronize
Now.
Note that there is no indication in the Satellite web UI of which source is being used. In case of problems
with a local source, Satellite pulls content through the network. To monitor the process, enter the
following command in a terminal (limited to Red Hat Enterprise Linux 7 base systems):
91
Red Hat Satellite 6.4 Content Management Guide
The above command displays interactive logs. First, Satellite Server connects to the Red Hat Customer
Portal to download and process repository metadata. Then, the local repository is loaded. In case of any
errors, cancel the synchronization in the Satellite web UI and verify your configuration.
After successful synchronization you can detach the local source by removing its entry from
/etc/pulp/content/sources/conf.d/local.conf.
92
APPENDIX D. SYNCHRONIZING CONTENT BETWEEN SATELLITE SERVERS
If you have both connected and disconnected Satellite Servers, and want to propagate content
from the connected servers to the disconnected servers.
If you have a primary Satellite Server and want to propagate some, but not all, content to other
Satellite Servers. For example, you might have Content Views (CVs) that are validated by the IT
department, and you want to propagate the yum content from those CVs to a downstream
Satellite.
NOTE
Be aware that you cannot use ISS to synchronize content from a Satellite Server to a
Capsule Server. Capsule Server supports synchronization natively. For more information,
see Capsule Server Overview in Planning for Red Hat Satellite 6.
Satellite 6.4 supports exports as a set of directories (default) or as ISO files. You can then import the
resulting export to another Satellite Server. This replaces the katello-disconnected script in earlier
Satellite versions, which exported repositories into a directory structure that could be later imported into
another Satellite Server. In Satellite 6.4, all export and import functions are performed on the command
line.
NOTE
Only RPM, kickstart, and ISO files are exported. Content View definitions and metadata,
such as package filters, is not transferred. Satellite 6.4 does not support the export of
Puppet, Docker, or OSTree content. Imports occur as a normal repository
synchronization, and consequently always arrive in the Library environment.
The disconnected use case is used extensively by customers who have air-gapped networks where a
Satellite and its clients are on a network that is never connected to the Internet. The only way that these
disconnected Satellites are populated with content is by exports from a connected Satellite.
IMPORTANT
93
Red Hat Satellite 6.4 Content Management Guide
If you do not want to maintain another management web UI and platform, and you want to perform
management and provisioning to local clients, consider setting up a Capsule Server.
D.2. PREREQUISITES
In Red Hat Satellite 6, ISS is only available in Satellite 6.2 and later, which requires Red Hat
Enterprise Linux 6.7, 7.2, or later.
The export directory needs to be large enough to accommodate at least one Red Hat
Enterprise Linux export. By default, the export directory is /var/lib/pulp/katello-export/.
The /var/cache/pulp/ and /var/lib/pulp/ directories must have free storage space
equivalent to the size of the repository being exported for temporary files created during the
export process. This is in addition to the space required by the default export directory.
The downstream Satellite Server must have the required manifests and entitlements for any
content that you intend to enable. You cannot enable repositories on a downstream Satellite for
which no entitlements exist.
The repository download policy needs to be set to immediate. This policy specifies whether or
not Satellite first downloads metadata and other repository information, and only downloads
actual repositories when requested. ISS does not function correctly if this policy is not set to
immediate.
94
APPENDIX D. SYNCHRONIZING CONTENT BETWEEN SATELLITE SERVERS
Exporting all repositories in an Environment or CV version to a directory or ISO file. You can also
recreate any custom products during the import process, but Red Hat products are not recreated
because they must be created using a manifest.
These synchronization options include a range of history details about the export and import, depending
on the type of content. For example:
The repository synchronization history includes upstream source information, as well as the time
the export occurred.
The CV synchronization history includes the export time and version, as well as the import time,
version, and upstream source.
The difference between this and splitting large files is that the split utility is not aware of the ISO file
format, which means that it does not create a new burnable ISO file for the next file in the series. This
method requires that you copy all of the files to one place, concatenate those files, and then mount that
single large ISO through loopback.
You can add the --iso-mb-size parameter to specify the size of ISO export files. The default value is
4380 MB, the size of a single-sided, single-layer DVD.
It can be helpful to create symbolic links to commonly used directories after they are exported. Exported
repositories and CVs have the organization name and environment name prepended to the repository
directory structure, which might create paths of overlong length.
95
Red Hat Satellite 6.4 Content Management Guide
IMPORTANT
The directory used in this example is for demonstration purposes only. Confirm that the
export directory has adequate space for the required export RPM and ISO files.
Section 1.4, “Content Management Storage” provides information on estimating storage
requirements. A temporary file is created during the export process in the
/var/cache/pulp/ and directory, then transferred to the /var/lib/pulp/ directory.
This means that storage space equal to twice the size of the repository being exported is
required during the export process. The temporary file is deleted when the export is
completed.
# mkdir /var/www/html/pub/export
2. Ensure the foreman user has read and write permissions on the export directory:
1. In the web UI, navigate to Administer > Settings, and click the Content tab.
2. Locate the 'pulp_export_destination' variable in the Name column, and click the Value field.
3. Enter the export destination, for example /var/www/html/pub/export, in the Value field and
click Save.
96
APPENDIX D. SYNCHRONIZING CONTENT BETWEEN SATELLITE SERVERS
To change the global default Download Policy, enter the following command:
If required to change the policy for a specific repository, you can list the repositories for an organization
as follows:
To change the download policy for an existing repository, enter the following command:
To change the global default Download Policy using the web UI:
To change the Download Policy for an existing repository using the web UI:
1. In the web UI, navigate to Content > Products, and click the required product name.
2. On the Repositories tab, click the required repository name, locate the 'Download Policy' field,
and click the edit icon.
97
Red Hat Satellite 6.4 Content Management Guide
2. Enter the hammer repository export command to export content from your upstream
server. This command exports content to the directory specified in 'pulp_export_destination'
setting. ISS exports to a directory by default. You can add the '--export-to-iso 1' parameter to
export to an ISO file instead. For example:
NOTE
If you use the '--export-to-iso' parameter, you need to specify either 1 (ISO) or 0
(directory). This parameter does not have a default value.
Prerequisites
Ensure all repositories within the CV have their download policy set to Immediate. You cannot
export repositories with policies other than Immediate.
1. Navigate to Content > Content Views. Click Create New View. Enter following details to create
a CV:
b. Label — An internal ID for the CV. Red Hat Satellite 6 automatically completes this field
based on what you have entered for Name.
d. Composite View — Defines whether or not to use a Composite Content View. Leave this
option unselected.
3. On the Repository Selection screen, select the repositories to be added to the new CV from the
Repository Selection table. Click Add Repositories to add selected packages to the CV.
4. Navigate to Yum Content > Filters and click New Filter. Enter following details to create a filter
for including non-errata packages:
98
APPENDIX D. SYNCHRONIZING CONTENT BETWEEN SATELLITE SERVERS
a. Name — A plain text name for the filter. Enter Non-errata Products.
b. Content type — A list of the types of content to be included into the filter. Select Package.
c. Inclusion type — A list defining whether the content are included or excluded from the CV.
Select Include.
d. Description — An optional plain text description of the filter. Enter Include all non-errata
Products.
e. Click Save.
f. On the Include RPM screen, select the Include all RPMs with no errata check box.
5. Navigate to Yum Content > Filters and click New Filter. Enter following details to create a filter
for including errata packages in accordance with the required date range:
a. Name — A plain text name for the filter. Enter Erratas untill YYYY-MM-DD.
b. Content type — A list of the types of content to be included into the filter. Select Erratum -
Date and Type.
c. Inclusion type — A list defining whether the content is included or excluded from the CV.
Select Include.
d. Description — An optional plain text description of the filter. Enter Include errata products
untill YYYY-MM-DD.
e. Click Save.
f. On the Erratum Date Range screen, select all Security, Enhancement and Bugfix errata
types.
h. Fill in the Start Date and End Date menus to configure the date range of Products for the
filter.
i. Click Save.
6. Click Publish New Version, it is recommended to fill in the date ranges of repositories into the
Description field. Ensure the Force Yum Metadata Regeneration check box is not selected.
2. Enter the hammer content-view add-repository command to add repositories to the CV:
99
Red Hat Satellite 6.4 Content Management Guide
a. Enter the hammer content-view filter create command to create a filter for
including non-errata packages:
b. Enter the hammer content-view filter create command to create a filter for
including errata packages:
c. Enter the hammer content-view filter rule create command to create a rule
defining the date range:
4. Enter the hammer content-view publish command to publish the CV version ready for
exporting. It is recommended to fill in the date ranges of repositories under the --description
option.
100
APPENDIX D. SYNCHRONIZING CONTENT BETWEEN SATELLITE SERVERS
1. Enter the hammer content-view version list command to determine which version of a
Content View to export. For example:
To make an incremental-update repository, enter the hammer repository export command with the
--since option. For example:
The time stamp used for the calculations is the time that the RPMs were synchronized on Satellite
Server. For example, if Red Hat adds RPMs to a repository on a Monday and then again on a
Wednesday, you cannot synchronize your local repository on Thursday and then use a date of Tuesday
to get only the Wednesday update.
In addition to exporting changes to a repository, this feature is useful with the Default Organization View
Content View, but is not as useful for published CVs.
101
Red Hat Satellite 6.4 Content Management Guide
Prerequisites
Export the repository from the upstream Satellite Server. For more details, see Section D.6.1,
“Exporting Repositories”.
To Import a Repository:
1. Make the data available for a repository over HTTP, not HTTPS. For example, copy the exported
directory to the /var/www/html/pub/export/ directory on the downstream server, which is
available over HTTP by default.
4. On the Import/Remove Manifest tab, set the Red Hat CDN URL address field to match the
location of a content directory and a listing file within the exported repository.
For example, if the exported repository is located in
/var/www/html/pub/export/Default_Organization-
Red_Hat_Enterprise_Linux_7_Server_RPMs_x68_64, set the URL to be
http://satellite.example.com/pub/export/Default_Organization-
Red_Hat_Enterprise_Linux_7_Server_RPMs_x68_64/Default_Organization/Libr
ary/.
5. Click Save.
6. Navigate to Content > Red Hat Repositories and enable the exported repository.
Prerequisites
You have a Content View with Red Hat repositories on the upstream Satellite Server.
Export the Content View from the upstream Satellite Server. For more details, see
Section D.6.2, “Exporting Content View Version to a Directory”.
NOTE
1. Make the data available for a repository over HTTP, not HTTPS. For example, copy it to the
/var/www/html/pub/export/ directory on the downstream server.
102
APPENDIX D. SYNCHRONIZING CONTENT BETWEEN SATELLITE SERVERS
4. On the Import/Remove Manifest tab, set the Red Hat CDN URL address field to match the
location of a content directory and a listing file within the exported Content View.
For example, if the exported CV is located in
/var/www/html/pub/export/Default_Organization-Export_CV-v1.0, set the URL
to be http://satellite.example.com/pub/export/Default_Organization-
Export_CV-v1.0/Default_Organization/content_views/Export_CV/1.0/
5. Click Save.
6. Navigate to Content > Red Hat Repositories and enable the exported repository.
7. On a downstream server, enter the hammer organization update command to add new
repositories to an organization. Set the address to the directory corresponding to the version you
want within the exported Content View as shown:
Organization updated
103
Red Hat Satellite 6.4 Content Management Guide
NOTE
Synchronizing templates between Satellite Server and a Git repository or a local directory
is a Technology Preview feature. Technology Preview features are not fully supported
under Red Hat Subscription Service Level Agreements (SLAs), may not be functionally
complete, and are not intended for production use. However, these features provide early
access to upcoming product innovations, enabling customers to test functionality and
provide feedback during the development process.
# satellite-installer --enable-foreman-plugin-templates
2. To verify that the plug-in is installed correctly, ensure Administer > Settings includes the
TemplateSync menu.
104
APPENDIX E. SYNCHRONIZING TEMPLATES WITH GIT
Keep — retain
the existing
metadata.
Remove —
export template
without
metadata.
Useful if you
want to add
metadata
manually.
105
Red Hat Satellite 6.4 Content Management Guide
Prerequisites
For imported templates to appear in the Satellite web UI, each template must contain the location and
organization that the template belongs to. This applies to all template types. Before you import a
template, ensure that you add the following section to the template:
<%#
kind: provision
name: My Kickstart File
oses:
- RedHat 7
- RedHat 6
locations:
- First Location
- Second Location
organizations:
- Default Organization
- Extra Organization
%>
You can also import and export templates using Hammer. For more information, see Provisioning
Templates in the Hammer Cli Guide.
a. Change the Branch setting to match the target branch on a Git server.
b. Change the Repo setting to match the Git repository. For example, for the repository located
in [email protected]/templates.git set the setting into
ssh://[email protected]/templates.git.
You can see the Permission denied, please try again. message in the output, which
is expected, because the SSH connection cannot succeed yet.
106
APPENDIX E. SYNCHRONIZING TEMPLATES WITH GIT
4. Create an SSH key pair if you do not already have it. Do not specify any passphrase.
5. Configure your Git server with the public key from your Satellite, which resides in
/usr/share/foreman/.ssh/id_rsa.pub.
6. Export templates from your Satellite Server to the Git repository specified in the TemplateSync
menu:
$ curl -H "Accept:application/json,version=2" \
-H "Content-Type:application/json" \
-u login:password \
-k https://satellite.example.com/api/v2/templates/export \
-X POST
{"message":"Success"}
$ curl -H "Accept:application/json,version=2" \
-H "Content-Type:application/json" \
-u login:password \
-k https://satellite.example.com/api/v2/templates/import \
-X POST
{“message”:”Success”}
Note that templates provided by Satellite are locked and you cannot import them by default. To
overwrite this behavior, change the Force import setting in the TemplateSync menu to yes
or add the force parameter -d '{ "force": "true" }’ to the import command.
1. Create the directory where templates are stored and apply appropriate permissions and SELinux
context:
# mkdir -p /usr/share/templates_dir/
# chown foreman /usr/share/templates_dir/
# chcon -t httpd_sys_rw_content_t /usr/share/templates_dir/ -R
2. Change the Repo setting on the TemplateSync tab to match the export directory
/usr/share/templates_dir/.
$ curl -H "Accept:application/json,version=2" \
-H "Content-Type:application/json" \
-u login:password \
-k https://satellite.example.com/api/v2/templates/export \
107
Red Hat Satellite 6.4 Content Management Guide
-X POST \
{"message":"Success"}
$ curl -H "Accept:application/json,version=2" \
-H "Content-Type:application/json" \
-u login:password \
-k https://satellite.example.com/api/v2/templates/import \
-X POST
{“message”:”Success”}
Note that templates provided by Satellite are locked and you cannot import them by default. To
overwrite this behavior, change the Force import setting in the TemplateSync menu to yes
or add the force parameter -d '{ "force": "true" }’ to the import command.
NOTE
You can override default API settings by specifying them in the request with the -d
parameter. The following example exports templates to the
git.example.com/templates repository:
$ curl -H "Accept:application/json,version=2" \
-H "Content-Type:application/json" \
-u login:password \
-k https://satellite.example.com/api/v2/templates/export \
-X POST \
-d "{\"repo\":\"git.example.com/templates\"}"
For example, the following command verifies a self-signed certificate stored in /cert/cert.pem:
For a complete list of advanced options, see the git-config manual page.
108
APPENDIX E. SYNCHRONIZING TEMPLATES WITH GIT
# satellite-installer --no-enable-foreman-plugin-templates
2. Clean custom data of the plug-in. The command does not affect any templates that you created.
# foreman-rake templates:cleanup
109