红帽博客
Blog menu
This article was originally published on the Red Hat Customer Portal. The information may no longer be current.
Overview
Instance Based Subscriptions are a type of subscription that allows the end user flexible deployment options. This article describes their usage with the subscription tooling.
Prerequisites
It is important that you have read (or understand) the concepts as presented in:
What is an Instance Based Subscription?
To provide a more flexible and intuitive way of managing your Red Hat Enterprise Linux subscriptions, Red Hat introduced a new Red Hat Enterprise Linux (RHEL) 2013 packaging model. This model was designed to suit customers with growing needs to deploy both physical and virtual systems in large, constantly changing datacenters.
One of the subscription types that was created is the Red Hat Enterprise Linux Server, (Physical or Virtual Nodes) subscription. This subscription type allows the end user to deploy either 2 virtual machines (regardless of size) or 1 two socket system.
While this subscription is flexible, it does present some interesting challenges when working with the subscription tooling.
Example:
As an customer, I've purchased Quantity 20 of RH00004 - Red Hat Enterprise Linux Server, Standard (Physical or Virtual Nodes), and I can see this via the Customer Portal's new subscription page as shown below
UI Example (Click to Enlarge)
You'd note that there are two columns, Quantity & Entitlement Usage:
- Quantity - The actual number of purchased subscriptions (which is in this case 20)
- Entitlement Usage - The number of entitlements created (which is in this case 40)
The quantity of the pool as shown in the Entitlement Usage column is the purchased Quantity multiplied by the instance multiplier. For the Physical or Virtual Nodes subscription, this is 2. Other subscriptions may have different multipliers.
As stated above, the Physical or Virtual Nodes subscription allows the end user to deploy either 2 virtual machines (regardless of size) or 1 two socket system. As I have in this example, purchased 20 of them, any of the following are valid deployment scenarios:
- Ten (10) 2-socket systems + 20 virtual machines OR
- Twenty (20) 2-socket systems OR
- Forty (40) virtual machines OR
- Two (2) 8-socket systems, Four (4) 4-socket systems + Four (4) virtual machines OR
- various combinations thereof.
How do I know a subscription is an instance based subscription?
In the Customer Portal's new subscription page, various subscription properties are now more prominently exposed. In the case of instance based subscriptions, you'd see the Instance Based
property set to Yes
How are instance based subscriptions counted?
With instance based subscriptions, a registering system will decrement an entitlement from the pool in the following fashion:
- Virtual machines (regardless of size) decrement by 1.
- 2 socket systems decrement by 2
- 4 socket systems decrement by 4
- 8 socket systems decrement by 8
- etc.
Let's take a look at that from a client perspective.
How do instance based subscriptions work with the client tools?
Let's take a look at a virtual guest that has been deployed. Our virtual guest has been given 4 sockets (as it is expected to run a workload that requires a large amount of processing power)
We'll show its system facts via the subscription-manager facts
command.
[root@virtual:] ~ #subscription-manager facts | egrep '(cpu_socket|is_guest)'
cpu.cpu_socket(s): 4
virt.is_guest: True
Next, let's list what subscriptions do we have available:
[root@virtual:] ~ #subscription-manager list\
--all --available \
--matches \
'Red Hat Enterprise Linux Server, Standard (Physical or Virtual Nodes)'
+-------------------------------------------+
Available Subscriptions
+-------------------------------------------+
Subscription Name: Red Hat Enterprise Linux Server, Standard (Physical or Virtual Nodes)
Provides: Red Hat Container Images Beta
Red Hat Beta
dotNET on RHEL Beta (for RHEL Server)
Red Hat Software Collections (for RHEL Server)
Red Hat Enterprise Linux Atomic Host Beta
Oracle Java (for RHEL Server)
Red Hat Container Images
Red Hat Enterprise Linux Server
dotNET on RHEL (for RHEL Server)
Red Hat Software Collections Beta (for RHEL Server)
Red Hat Enterprise Linux Atomic Host
Red Hat Developer Toolset (for RHEL Server)
SKU: RH00004
Contract: 10881781
Pool ID: 8a85f98352d124000152d1d759ca4f68
Provides Management: No
Available: 40
Suggested: 1
Service Level: Standard
Service Type: L1-L3
Subscription Type: Instance Based
Ends: 02/10/2017
System Type: Physical
Note, we can see that only a quantity of 1 is suggested for this virtual system. The fact that it is a guest (virt.is_guest: True) supercedes the reported hardware topology.
Next, let's look at an 8-socket system's facts:
[root@eight-socket:] ~ #subscription-manager facts | egrep '(cpu_socket|is_guest)'
cpu.cpu_socket(s): 8
virt.is_guest: False
And show which subscriptions are available. Note the suggested quantity is now 8 due to the system's facts.
[root@eight-socket] ~ #subscription-manager list\
--all --available \
--matches \
'Red Hat Enterprise Linux Server, Standard (Physical or Virtual Nodes)'
+-------------------------------------------+
Available Subscriptions
+-------------------------------------------+
Subscription Name: Red Hat Enterprise Linux Server, Standard (Physical or Virtual Nodes)
Provides: Red Hat Container Images Beta
Red Hat Beta
dotNET on RHEL Beta (for RHEL Server)
Red Hat Software Collections (for RHEL Server)
Red Hat Enterprise Linux Atomic Host Beta
Oracle Java (for RHEL Server)
Red Hat Container Images
Red Hat Enterprise Linux Server
dotNET on RHEL (for RHEL Server)
Red Hat Software Collections Beta (for RHEL Server)
Red Hat Enterprise Linux Atomic Host
Red Hat Developer Toolset (for RHEL Server)
SKU: RH00004
Contract: 10881781
Pool ID: 8a85f98352d124000152d1d759ca4f68
Provides Management: No
Available: 40
Suggested: 8
Service Level: Standard
Service Type: L1-L3
Subscription Type: Instance Based
Ends: 02/10/2017
System Type: Physical
Next, let's actually attach that subscription to our 8-socket system:
[root@eight-socket] ~ #subscription-manager attach --pool 8a85f98352d124000152d1d759ca4f68
Successfully attached a subscription for: Red Hat Enterprise Linux Server, Standard (Physical or Virtual Nodes)
And let's look at subscription consumption via the client.
[root@eight-socket] ~ #subscription-manager list --consumed
Subscription Name: Red Hat Enterprise Linux Server, Standard (Physical or Virtual Nodes)
Provides: Oracle Java (for RHEL Server)
Red Hat Enterprise Linux Atomic Host
Red Hat Enterprise Linux Server
Red Hat Software Collections (for RHEL Server)
Red Hat Beta
dotNET on RHEL Beta (for RHEL Server)
dotNET on RHEL (for RHEL Server)
Red Hat Enterprise Linux Atomic Host Beta
Red Hat Developer Toolset (for RHEL Server)
Red Hat Software Collections Beta (for RHEL Server)
Red Hat Container Images
Red Hat Container Images Beta
SKU: RH00004
Contract: 10881781
Account: 5644938
Serial: 6819453414623957537
Pool ID: 8a85f98352d124000152d1d759ca4f68
Provides Management: No
Active: True
Quantity Used: 8
Service Level: Standard
Service Type: L1-L3
Status Details: Subscription is current
Subscription Type: Instance Based
Starts: 02/11/2016
Ends: 02/10/2017
System Type: Physical
And via the portal:
How many systems can I actually deploy then?
As the Physical or Virtual Nodes subscriptions allow you to consume flexibly (albeit at different quantities based on system facts), it can be difficult to understand what is available. In the case of an instance based subscription, the Entitlement Usage column reflects is the maximum number of virtual machines you can subscribe (if you deploy nothing BUT virtual machines). If you deploy physical systems (or combinations of physical systems and virtual machines), you'll consume from this pool faster.
Instance Based subscriptions with Satellite 6
Instance based subscriptions work the same in Satellite 6 as they do with the Red Hat Customer Portal. It is to be noted that when creating a subscription manifest, you are selecting which entitlements you wish to use on-premise, so the same logic applies (virtual machines decrement by 1, 2 socket servers by 2, etc, etc)
Further reading
- Subscription-manager for the former Red Hat Network User: Part 1
- Subscription-manager for the former Red Hat Network User: Part 2 - Subscription-manager learns grep
- Subscription-manager for the former Red Hat Network User: Part 3 - Understanding virt-who
- Subscription-manager for the former Red Hat Network User: Part 4 - Understanding Subscription Manifests
- Subscription-manager for the former Red Hat Network User: Part 5 - working with subscriptions that require virt-who
- Subscription-manager for the former Red Hat Network User: Part 6 - understanding and improving the renewal experience
- Subscription-manager for the former Red Hat Network User: Part 7 - understanding the Red Hat Content Delivery Network
- Subscription-manager for the former Red Hat Network User: Part 8 - Product Certificates
- Subscription-manager for the former Red Hat Network User: Part 9 - A Case Study with activation keys.
- Activation Key Enhancements with Red Hat Satellite 6.1
- Red Hat Satellite Virtual Instances Guide