If My Subscription Expires or Is Out of Compliance, How Is My Automation Impacted When Using Ansible Automation Platform?
Red Hat Lightspeed can detect this issue
Environment
- Red Hat Ansible Automation Platform (Ansible Automation Platform) 2.0 and later
Issue
-
When using Ansible Automation Platform, different license types and conditions can affect your operations such as what happens when it expires or you go over your licensed automation node count.
-
Before AAP 2.5, in the UI, under Settings -> Subscription, the Status field will show if you are compliant or not. You are compliant when the number of hosts you have automated against is below your subscription count. If you go above, then it'll show as Non-Compliant.
-
For AAP 2.5+, check in the UI, under Automation Analytics -> Subscription Usage and Settings-> Subscription
Resolution
Versions 2.6
Behavior depends on license type. Enterprise, Developer, and Trial licenses have different enforcement behaviors.
License Types and Grace Periods
| License Type | SKU Pattern | Grace Period After Expiry | Enforcement Behavior |
|---|---|---|---|
| Enterprise | MCT*, other non-S prefixes | 30 days | Warning logged, automation continues |
| Trial | S* (SER, SVC) | None | Blocks automation immediately |
| Developer | RHEL Developer products | 30 days | Warning logged, automation continues |
| Open (AWX) | N/A | N/A | No restrictions, always compliant |
Compliance Criteria
A subscription is considered compliant when BOTH conditions are met:
1. time_remaining > 0 (subscription hasn't expired)
2. free_instances >= 0 (automated hosts ≤ licensed count)
Automation Controller Behavior Matrix - Enterprise/Developer Licenses
| Function | Out of Compliance (Node Count Exceeded) | Expired (Within 30-Day Grace) | Expired (Beyond Grace Period) |
|---|---|---|---|
| Add Project | ✔ | ✔ | ✔ |
| Add Template | ✔ | ✔ | ✔ |
| Add Workflow | ✔ | ✔ | ✔ |
| Run Job Template | ✔ 1 | ✔ 1 | ✔ 1 |
| Run Workflow | ✔ 1 | ✔ 1 | ✔ 1 |
| Dynamic Inventory Sync | ✔ 1 | ✔ 1 | ✔ 1 |
| Manual Host Addition | ✔ 1 | ✔ 1 | ✔ 1 |
| Ad Hoc Commands | ✔ 1 | ✔ 1 | ✔ 1 |
| Scheduled Jobs | ✔ 1 | ✔ 1 | ✔ 1 |
| Provisioning Callbacks | ✔ 2 | ✔ 2 | ✔ 2 |
| Insights Analytics Collection | ✔ 3 | ✔ 3 | ✖ 3 |
| Backup and Restore | ✔ | ✔ | ✔ |
| Upgrade to newer version | ✔ | ✔ | ✔ |
Automation Controller Behavior Matrix - Trial Licenses
| Function | Out of Compliance (Node Count Exceeded) | Subscription Expired |
|---|---|---|
| Add Project | ✔ | ✔ |
| Add Template | ✔ | ✔ |
| Add Workflow | ✔ | ✔ |
| Run Job Template | ✖ | ✖ |
| Run Workflow | ✖ | ✖ |
| Dynamic Inventory Sync | ✖ | ✖ |
| Manual Host Addition | ✖ | ✖ |
| Ad Hoc Commands | ✖ | ✖ |
| Scheduled Jobs | ✖ | ✖ |
| Provisioning Callbacks | ✔ 2 | ✔ 2 |
| Insights Analytics Collection | ✖ | ✖ |
| Backup and Restore | ✔ | ✔ |
| Upgrade to newer version | ✔ | ✔ |
Important: Trial licenses have no grace period. Operations are blocked immediately upon expiration or when node count is exceeded.
Event-Driven Ansible (EDA) Controller
EDA Controller does not currently enforce subscription/license restrictions. All operations (rulebook activations, event processing) continue regardless of subscription status.
Private Automation Hub
No specific license enforcement for content operations. Collection downloads and syncs continue regardless of subscription status.
Organization-Level Host Limits
Note: Organizations can have a separate
max_hostslimit configured independently of the subscription. This limit always blocks operations when exceeded, regardless of license type (Enterprise or Trial).When the organization host limit is reached:
- Adding new hosts is blocked with error: "You have already reached the maximum number of X hosts allowed for your organization."
- This is separate from subscription compliance and applies even when the subscription is valid and compliant.
- Contact your System Administrator to increase the organization host limit.
Versions 2.4 - 2.5
The platform should continue to function without change while you work with your account team to obtain a new subscription entitlement.
Note: The same license type distinctions apply as in 2.6. Trial licenses will block automation upon expiration, while Enterprise/Developer licenses continue with warnings.
Versions 2.0 - 2.3
Behavior is identified in the following table:
| AAP2 Function | When Out Of Compliance | When Subscription Expired |
|---|---|---|
| Add Project | ✔ | ✔ |
| Dynamic Inventory Sync | ✔ | ✖ |
| Manual Host Addition | ✔ | ✖ |
| Add Template | ✔ | ✔ |
| Add Workflow | ✔ | ✔ |
| Run Job Template | ✔ | ✖ |
| Run Workflow | ✔ | ✖ |
| Backup and restore | ✔ | ✔ |
| Upgrade to newer version | ✔ 1 | ✖ |
-
The "Upgrade to newer version" limitation has been removed in 2.1.2. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
-
Provisioning callbacks explicitly bypass license blocking to allow automated host provisioning. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
-
Insights analytics checks license validity; collection may fail with invalid license but does not block other operations. ↩︎ ↩︎ ↩︎
Diagnostic Steps
Check the current license compliance by logging into Controller node, and then navigating to the API at:
https://aap_hostname/api/controller/v2/config/
The license_info information will include:
"license_info": {
"instance_count": 100,
"license_date": "1798779599",
"license_type": "enterprise",
"sku": "MCT3691",
"trial": false,
"usage": "",
"pool_id": "8a85f99c7d76adcd017d93c9f19606bb",
"satellite": false,
"valid_key": true,
"product_name": "Red Hat Ansible Automation Platform, Standard (100 Managed Nodes)",
"support_level": "Standard",
"account_number": "5910538",
"subscription_id": "10433839",
"subscription_name": "Red Hat Ansible Automation Platform, Standard (100 Managed Nodes)",
"deleted_instances": 0,
"reactivated_instances": 0,
"current_instances": 85,
"automated_instances": 85,
"automated_since": 1704399664,
"free_instances": 15,
"time_remaining": 90075302,
"grace_period_remaining": 92667302,
"compliant": true,
"date_warning": false,
"date_expired": false
}
Key Fields Explained
| Field | Description |
|---|---|
license_type |
enterprise, trial, developer, or UNLICENSED |
trial |
true = no grace period, blocks on expire; false = 30-day grace |
instance_count |
Licensed node count |
automated_instances |
Unique hosts automated against (used for compliance) |
free_instances |
Remaining capacity (instance_count - automated_instances) |
time_remaining |
Seconds until subscription expiry |
grace_period_remaining |
Seconds until enforcement (Enterprise: expiry + 30 days) |
compliant |
true if time_remaining > 0 AND free_instances >= 0 |
date_warning |
true if less than 30 days remaining |
date_expired |
true if time_remaining <= 0 |
To view individual host metrics:
https://aap_hostname/api/controller/v2/host_metrics/
Frequently Asked Questions
Q: What happens if I exceed my node count?
- Enterprise/Developer: Warning logged, automation continues
- Trial: Operations blocked
Q: What's the grace period after subscription expires?
- Enterprise/Developer: 30 days from subscription end date
- Trial: No grace period - blocks immediately on expiry
Q: Can I still run playbooks while out of compliance?
- Enterprise/Developer: Yes, with warnings in logs
- Trial: No, blocked after expiry
Q: Does EDA controller check subscription?
- Currently no - EDA operates independently of subscription status
Q: Are scheduled jobs affected?
- Scheduled jobs follow the same enforcement as manually launched jobs
Q: Do provisioning callbacks work when out of compliance?
- Yes, provisioning callbacks explicitly bypass license checks to allow automated host provisioning
Q: How is the organization host limit different from subscription compliance?
- Organization host limits are set per-organization by administrators and always block when exceeded, even with a valid subscription
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments