2.2. Basic Installation and Setup for Subscription Asset Manager

You can install Subscription Asset Manager by using the Red Hat hosted repositories and yum, or through an ISO image. The installation paths differ slightly, depending on the network and infrastructure.

2.2.1. Installing Using yum

  1. Register the host system. Use the --auto-attach option to attach the required subscriptions for the operating system immediately.
    [root@server ~]# subscription-manager register --auto-attach
    Username: jsmith@example.com
    Password:
  2. Wait several minutes for the updated content repositories to be added to the system configuration.
  3. Enable the rhel-6-server-sam-rpms repository.
    If the Enhanced Updates (EUS) repository is enabled, then disable it, either as part of the yum configuration (as in this example) or when running yum to install packages. There are conflicts in the Ruby packages between the EUS repository and the Subscription Asset Manager repository.
    [root@server ~]# subscription-manager repos --enable rhel-6-server-sam-rpms --disable rhel-server-rhscl-6-eus-rpms
    Loaded plugins: product-id, refresh-packagekit
    ========================= repo: rhel-6-server-sam-rpms =========================
    [rhel-6-server-sam-rpms]
    bandwidth = 0
    base_persistdir = /var/lib/yum/repos/x86_64/6Server
    baseurl = https://cdn.redhat.com/content/dist/rhel/server/6/6Server/x86_64/subscription-asset-manager/1/os
    cache = 0
    cachedir = /var/cache/yum/x86_64/6Server/rhel-6-server-sam-rpms
    cost = 1000
    enabled = 1
    enablegroups = True
    exclude =
    failovermethod = priority
    ...
  4. Install the katello-headpin-all package using yum install:
    [root@server ~]# yum install -y katello-headpin-all
  5. After installing the packages, run the Subscription Asset Manager configuration script, katello-configure.
    The required parameters for the basic installation are the deployment type, which is sam, and an administrator password.
    While not required, it is useful to specify an initial organization name for your deployment. If this is not set, then the first organization has a default name of ACME_Corporation.
    This sets up the Subscription Asset Manager instance with the default user and database settings.
    [root@server ~]# katello-configure --deployment=sam --org=Example_Org --user-pass=admin
    Starting Katello configuration
    The top-level log file is [/var/log/katello/katello-configure-20130904-210539/main.log]

2.2.1.1. Configuring Red Hat SAM Manually with an HTTP Proxy

For networks that go through an HTTP Proxy, use the following katello-installer options so that the Satellite Server completes the configuration successfully:
katello-installer --katello-proxy-url=http://myproxy.example.com --katello-proxy-port=8080 --katello-proxy-username=proxy_username --katello-proxy-password=proxy_password
Where:
  • --katello-proxy-url: URL of the HTTP proxy server
  • --katello-proxy-port: Port the HTTP proxy server is listening on
  • --katello-proxy-username: (Optional) HTTP proxy username for authentication. If your HTTP proxy server does not require a username, you do not have to specify the username.
  • --katello-proxy-password: (Optional) HTTP proxy password for authentication. If your HTTP proxy server does not require a password, you do not have to specify the password.
After configuring SAM to go through the HTTP Proxy, you must ensure that yum or subscription-manager can connect to the Red Hat Content Delivery Network (CDN) and that SAM can synchronize its repositories to the CDN. Follow these steps:

Procedure 2.1. Configuring SAM to Allow Red Hat Subscription Manager Access to the CDN

  1. On the network gateway and the HTTP Proxy, open the following hostnames, ports and protocols:

    Table 2.1. Required Hostnames, Ports and Protocols

    HostnamePortProtocol
    subscription.rhn.redhat.com443https
    cdn.redhat.com443https
    *.akamaiedge.net443https
  2. In the Satellite Server, complete the following details in the file:
    /etc/rhsm/rhsm.conf:
    # an http proxy server to use (enter server FQDN)
    proxy_hostname = http_proxy.example.com
    
    # port for http proxy server
    proxy_port = 3128
    
    # user name for authenticating to an http proxy, if needed
    proxy_user =
    
    # password for basic http proxy auth, if needed
    proxy_password =