Documentation

4. Import a Subscription

Starting with 3.8, Ansible Tower uses available subscriptions or a subscription manifest to authorize the use of Tower. Previously, Tower used a license key and a JSON dictionary of license metadata. Even if you already have valid licenses from previous versions, you must still provide your credentials or a subscriptions manifest again upon upgrading to Tower 3.8. To obtain your Tower subscription, you can either:

  1. Provide your Red Hat or Satellite username and password on the license page.

  2. Obtain a subscriptions manifest from your Subscription Allocations page on the customer portal. See Obtaining a subscriptions manifest for more detail.

If you have a Red Hat Ansible Automation Platform subscription, use your Red Hat customer credentials when you launch Tower to access your subscription information (see instructions below).

If you do not have a Red Hat Ansible Automation Platform subscription, you can request a trial subscription here or click Request Subscription and follow the instructions to request one.

Disconnected environments with Satellite will be able to use the login flow on vm-based installations if they have configured subscription manager on the Tower instance to connect to their Satellite instance. Recommended workarounds for disconnected environments without Satellite include [1] downloading a manifest from access.redhat.com in a connected environment, then uploading it to the disconnected Tower instance, or [2] connecting to the Internet through a proxy server.

Note

In order to use a disconnected environment, it is necessary to have a valid Ansible Tower entitlement attached to your Satellite organization’s manifest. This can be confirmed by using hammer subscription list \--organization <org_name>.

If you have issues with the subscription you have received, please contact your Sales Account Manager or Red Hat Customer Service at https://access.redhat.com/support/contact/customerService/.

When Tower launches for the first time, the Tower Subscription screen automatically displays.

no license

Use your Red Hat credentials (username and password) to retrieve and import your subscription, or upload a subscription manifest you generate from https://access.redhat.com/management/subscription_allocations.

  1. Enter your Red Hat customer credentials (username and password) and click Get Subscriptions. Use your Satellite username/password if your Tower cluster nodes are registered to Satellite via Subscription Manager. See Installing Satellite instances on Tower for more information.

Alternatively, if you have a subscriptions manifest, you can upload it by browsing to the location where the file is saved to upload it (the subscription manifest is the complete .zip file, not its component parts). See Obtaining a subscriptions manifest for more detail.

Note

If the Browse button is grayed-out, clear the username and password fields to enable the Browse button.

  1. The subscription metadata is then retrieved from the RHSM/Satellite API, or from the manifest provided.

  • If it is a subscription manifest, Tower will use the first valid subscription included in your manifest file. This is why it is important to only include the subscription you want applied to the Tower installation.

  • If you entered your credential information (username/password), Tower retrieves your configured subscription service. Then it prompts you to choose the subscription you want to run (the example below shows multiple subscriptions) and entitles Tower with that metadata. You can log in over time and retrieve new subscriptions if you have renewed.

Note

When your subscription expires (you can check this on the License settings in the Configure Tower screen of the UI), you will need to renew it in Tower by one of these two methods.

_images/license-password-entered.png

If you encounter the following error message, you will need the proper permissions required for the Satellite user with which the Tower admin uses to apply a subscription.

_images/tower-license-error-satellite-user.png

The Satellite username/password is used to query the Satellite API for existing subscriptions. From the Satellite API, Tower gets back some metadata about those subscriptions, then filter through to find valid subscriptions that you could apply, which are then displayed as valid subscription options in the UI.

The following Satellite roles grant proper access:

  • Custom with view_subscriptions and view_organizations filter

  • Viewer

  • Administrator

  • Organization Admin

  • Manager

As the Custom role is the most restrictive of these, this is the recommend role to use for your Tower integration. Refer to the Satellite documentation on managing users and roles for more detail.

Note

The System Administrator role is not equivalent to the Administrator user checkbox, and will not provide sufficient permissions to access the subscriptions API page.

  1. Proceed by checking the End User License Agreement.

  2. The bottom half of the license screen involves analytics data collection. This helps Red Hat improve the product by delivering you a much better user experience. For more information about data collection, refer to Usability Analytics and Data Collection. This option is checked by default, but you may opt out of any of the following:

  • User analytics collects data from the Tower User Interface.

  • Automation analytics provides a high level analysis of your automation with Ansible Tower, which is used to help you identify trends and anomalous use of Tower. For opt-in of Automation Analytics to have any effect, your instance of Ansible Tower must be running on Red Hat Enterprise Linux. See instructions described in the Automation Analytics section.

Note

At this time, Automation Insights is not supported when Ansible Tower is running in the OpenShift Container Platform. You may change your analytics data collection preferences at any time, as described in the Usability Analytics and Data Collection section.

  1. After you have specified your tracking and analytics preferences, click Submit.

Once your subscription has been accepted, Tower briefly displays the license screen and navigates you to the Dashboard of the Ansible Tower interface. For later reference, you can return to the license screen by clicking the Settings (settings) icon from the left navigation bar and select the License tab from the Settings screen.

license accepted

4.1. Obtaining a subscriptions manifest

In order to upload a subscriptions manifest into Tower, first set up your subscription allocations:

  1. Go to https://access.redhat.com/management/subscription_allocations.

The Subscriptions Allocations page contains no subscriptions until you create one.

_images/subscription-allocations-empty.png
  1. Click the Create New subscription allocation button to create a new subscription allocation.

Note

If this button is not present or disabled, you do not have the proper permissions to create subscription allocations. To create a subscription allocation, you must either be an Administrator on the Customer Portal, or have the Manage Your Subscriptions role. Contact an access.redhat.com administrator or organization administrator who will be able to grant you permission to manage subscriptions.

  1. Enter a name for your subscription and select Satellite 6.8 from the Type drop-down menu.

_images/subscription-allocations-create.png
  1. Click Create.

  2. Once your subscriptions manifest is successfully created, it displays various information including subscription information at the bottom of the Details tab. The number indicated next to Entitlements indicates the number of entitlements associated with your subscription.

_images/subscription-allocations-details-bottom.png

In order to obtain a subscriptions manifest, you must add an entitlement to your subscriptions though the Subscriptions tab.

  1. Click the Subscriptions tab.

_images/subscription-allocations-details.png
  1. In the Subscriptions tab, there are no subscriptions to display, click the Add Subscriptions button.

_images/subscription-allocations-subscriptions.png

The next screen allows you to select and add entitlements to put in the manifest file. You may select multiple Ansible Automation Platform subscriptions (with the same SKU) in your subscription allocation. Valid Ansible Automation Platform subscriptions commonly go by the name “Red Hat Ansible Automation…”.

  1. Specify the number of entitlements/managed nodes to put in the manifest file. This allows you to split up a subscription (for example: 400 nodes on a development cluster and 600 nodes for the production cluster, out of a 1000 node subscription).

_images/aap-subscriptions.png

Note

Starting in Ansible Tower 3.8.1, you can apply multiple subscriptions to a single installation by adding multiple subscriptions of the same type to a manifest file and uploading them. Similarly, a subset of a subscription can be applied by only allocating a portion of the subscription when creating the manifest.

  1. Click Submit.

The allocations you specified, once successfully added, are displayed in the Subscriptions tab.

  1. Click the Details tab to access the subscription manifest file.

  2. At the bottom of the details window under Entitlements, click the Export Manifest button to export the manifest file for this subscription.

_images/subscription-allocations-detail.png

A folder pre-pended with manifest_ in the name is downloaded to your local drive. Multiple subscriptions with the same SKU will be aggregated.

  1. Now that you have a subscription manifest, proceed to the Subscription screen. Upload the entire manifest file (.zip) by clicking Browse and navigate to the location where the file is saved. Do not open it or upload individual parts of it.

4.2. Adding a Tower subscription manually

If you are unable to apply or update the subscription info using the Tower UI, you can upload the subscriptions manifest manually in an Ansible playbook using the tower_license module in the Tower collection:

- name: Set the license using a file
  tower_license:
  manifest: "/tmp/my_manifest.zip"

See the Ansible tower_license module for more information.