Infrastructure at your Service

Daniel Westermann

Getting started with Red Hat Satellite – Initial configuration

In the last post it was all about the Installation of Red Hat Satellite and the components that are used under the hood. In this post it is about doing the initial configuration so that packages can be synchronized from the Red Hat content network and subscriptions are available to be consumed by clients. This requires some initial tasks to be done in the Satellite itself but also in the Red Hat portal where you can manage your subscriptions.

When you log on to the Satellite Console for the first time you’ll land on the monitoring page:
Selection_066
As we currently do not have any systems managed by this Satellite system the overview is quite boring at the moment. The first task we need to do for going further is to create an “Organization”. Organizations are logical groups you should use to divide your infrastructure to whatever makes sense in your case, could be a division, could be based on content, whatever. This can either be done using the Console but it can also be done by using the command line utility hammer. For the moment there is just the “Default Organization”:
Selection_068

[root@satellite lib]$ hammer organization list
---|----------------------|----------------------|-------------|----------------------|------------
ID | TITLE                | NAME                 | DESCRIPTION | LABEL                | DESCRIPTION
---|----------------------|----------------------|-------------|----------------------|------------
1  | Default Organization | Default Organization |             | Default_Organization |            
---|----------------------|----------------------|-------------|----------------------|------------

Lets create a new one we will use throughout this series of posts:

[root@satellite lib] hammer organization create --name "dbi services" --label "dbi-services" --description "dbi services headquarter"
Organization created
[root@satellite lib] hammer organization list
---|----------------------|----------------------|--------------------------|----------------------|-------------------------
ID | TITLE                | NAME                 | DESCRIPTION              | LABEL                | DESCRIPTION             
---|----------------------|----------------------|--------------------------|----------------------|-------------------------
3  | dbi services         | dbi services         | dbi services headquarter | dbi-services         | dbi services headquarter
1  | Default Organization | Default Organization |                          | Default_Organization |                         
---|----------------------|----------------------|--------------------------|----------------------|-------------------------

Once we have that we can switch to our new organization in the Console:
Selection_070

For being able to browse the content of our Organization we need to create a so called “Debug Certificate”. This can be done by switching to the “Administer->Organizations” screen:
Selection_072

Once you selected the organization the certificate can be generated:
Selection_073

For importing that certificate into Firefox it needs to be converted. Using the generated certificate file create two files, one containing the private key section and another one containing the certificate section, like here:

dwe@dwe:~/Downloads$ cat key.pem 
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAroq3rZuJ.....Q5eCqquzW4/Ie7SI3MQZQ==
-----END RSA PRIVATE KEY-----

dwe@dwe:~/Downloads$ cat cert.pem 
-----BEGIN CERTIFICATE-----
MIIG8jCCBdqgAwIB....Ix55eToRfqUZLzcAlrOFTaF8UrbDOoFTJldF
wxDDBpzk
-----END CERTIFICATE-----

These files can now be used to create a certificate that can be imported into Firefox:

dwe@dwe:~/Downloads$ openssl pkcs12 -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -export -in cert.pem -inkey key.pem -out dbi-services.pfx -name dbiservices
Enter Export Password:
Verifying - Enter Export Password:
dwe@dwe:~/Downloads$ ls -la *pfx*
-rw------- 1 dwe dwe 3460 Oct 12 10:36 dbi-services.pfx

Selection_074

Once we have that in Firefox we are able to browse the organization’s repository. The URL is of the following format: https://[SATELLITE-MACHINE]/pulp/repos/[ORGANIZATION-LABEL], so in my case: https://192.168.22.11/pulp/repos/dbi-services

Selection_075

For being able to attach systems to the Satellite need to create a so called “Subscription Allocation” in the Red Hat portal:
Selection_075
Selection_076
Selection_077

Once we have the “Subscription Allocation” we need to add subscriptions to it (I will use just two for the scope of this post):
Selection_078
Selection_079
Selection_080
Selection_081

These definitions need to be exported as a “Manifest” that then can be imported into our Satellite:
Selection_082

Importing the Manifest into the Satellite is done in the “Content > Red Hat Subscriptions” section:
Selection_084
Selection_086
Selection_087

From now on we are ready to synchronize content from the Red Hat content network. Again this can either be done via the Console or on the command line. To list all the products available using the hammer command line utility:

[root@satellite ~]$ hammer product list --organization "dbi services"
----|----------------------------------------------------------------------------------|-------------|--------------|--------------|-----------
ID  | NAME                                                                             | DESCRIPTION | ORGANIZATION | REPOSITORIES | SYNC STATE
----|----------------------------------------------------------------------------------|-------------|--------------|--------------|-----------
12  | dotNET on RHEL Beta for RHEL Server                                              |             | dbi services | 0            |           
99  | dotNET on RHEL for RHEL Server                                                   |             | dbi services | 0            |           
54  | MRG Realtime                                                                     |             | dbi services | 0            |           
1   | Oracle Java for RHEL Client                                                      |             | dbi services | 0            |           
94  | Oracle Java for RHEL Compute Node                                                |             | dbi services | 0            |           
18  | Oracle Java for RHEL Compute Node - Extended Update Support                      |             | dbi services | 0            |           
38  | Oracle Java for RHEL Server                                                      |             | dbi services | 0            |           
...

Each of those “products” are also a repository. To list the product set for Red Hat Enterprise Linux using hammer:

[root@satellite ~]$ hammer repository-set list --product "Red Hat Enterprise Linux Server" --organization "dbi services"
-----|-----------|---------------------------------------------------------------------------------
ID   | TYPE      | NAME                                                                            
-----|-----------|---------------------------------------------------------------------------------
2008 | yum       | Red Hat Enterprise Linux 4 AS Beta (RPMs)                                       
7750 | yum       | Red Hat Satellite Tools 6.4 (for RHEL 7 Server) (Debug RPMs)                    
2009 | yum       | Red Hat Enterprise Linux 4 AS Beta (Source RPMs)                                
2006 | yum       | Red Hat Enterprise Linux 4 AS Beta (Debug RPMs)                                 
2007 | file      | Red Hat Enterprise Linux 4 AS Beta (ISOs)                                       
7752 | yum       | Red Hat Satellite Tools 6.4 (for RHEL 7 Server) (Source RPMs)                   
7751 | yum       | Red Hat Satellite Tools 6.4 (for RHEL 7 Server) (RPMs)                          
...

For the scope of this blog post we are only interested in the Satellite tools and the latest Enterprise Linux products, so we enable only those two. For enabling the first one using the command line:

[root@satellite ~]$ hammer repository-set enable --name "Red Hat Enterprise Linux 7 Server (RPMs)" \
                                                 --releasever "7Server" \
                                                 --basearch "x86_64" \
                                                 --product "Red Hat Enterprise Linux Server" \
                                                 --organization "dbi services"
Repository enabled

For enabling the second one using the Console go to “Content->Red Hat Subscriptions”, locate the “Red Hat Enterprise Linux” section, expand that and enable “Red Hat Satellite Tools 6.3 (for RHEL 7 Server) (RPMs)”:

Selection_067
Selection_068
Selection_069

To verify what we did:

[root@satellite ~]$ hammer repository list --product "Red Hat Enterprise Linux Server" --organization "dbi services"
---|-----------------------------------------------------------|---------------------------------|--------------|---------------------------------------------------------------------------------
ID | NAME                                                      | PRODUCT                         | CONTENT TYPE | URL                                                                             
---|-----------------------------------------------------------|---------------------------------|--------------|---------------------------------------------------------------------------------
1  | Red Hat Enterprise Linux 7 Server RPMs x86_64 7Server     | Red Hat Enterprise Linux Server | yum          | https://cdn.redhat.com/content/dist/rhel/server/7/7Server/x86_64/os             
2  | Red Hat Satellite Tools 6.3 for RHEL 7 Server RPMs x86_64 | Red Hat Enterprise Linux Server | yum          | https://cdn.redhat.com/content/dist/rhel/server/7/7Server/x86_64/sat-tools/6....
---|-----------------------------------------------------------|---------------------------------|--------------|---------------------------------------------------------------------------------

Finally we need to synchronize these repositories (this will take some time):

[root@satellite ~]$ hammer product synchronize --name "Red Hat Enterprise Linux Server" --organization "dbi services"

You can monitor the progress in the Console:
Selection_071
Selection_072
Selection_074

Btw: When you want to check the overall status of the components can do do it like this on the command line:

[root@satellite pulp]$ hammer ping
candlepin:      
    Status:          ok
    Server Response: Duration: 19ms
candlepin_auth: 
    Status:          ok
    Server Response: Duration: 66ms
pulp:           
    Status:          ok
    Server Response: Duration: 111ms
pulp_auth:      
    Status:          ok
    Server Response: Duration: 52ms
foreman_tasks:  
    Status:          ok
    Server Response: Duration: 1163ms

That’s it for the basic configuration. Satellite is up and running and we have content clients can consume. In the next post we’ll attach a new Red Hat Linux installation to the Satellite.

Leave a Reply

Daniel Westermann
Daniel Westermann

Senior Consultant and Technology Leader Open Infrastructure