Skip to content

Commit 5d6189e

Browse files
Merge pull request #36993 from MikeRayMSFT/mikeray/arc-linux-payg-limitations
Document Linux-specific PAYG billing limitations for Arc SQL Server
2 parents 5db78ab + 631522c commit 5d6189e

6 files changed

Lines changed: 65 additions & 20 deletions

File tree

docs/sql-server/azure-arc/faq.yml

Lines changed: 27 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ metadata:
33
title: Frequently asked questions
44
description: Provides questions and answers frequently asked about SQL Server enabled by Azure Arc.
55
ms.topic: faq
6-
ms.date: 02/25/2025
6+
ms.date: 04/01/2026
7+
ai-usage: ai-assisted
78
ms.author: mikeray
89
author: MikeRayMSFT
910
title: Frequently asked questions - SQL Server enabled by Azure Arc
@@ -39,7 +40,7 @@ sections:
3940
answer: No. The usage data collection requires an active SQL Server instance. Therefore, you'll not be charged for the time the SQL Server instance was stopped.
4041

4142
- question: Do I get charged if my SQL Server instance was running for less than an hour?
42-
answer: The billing granularity is one hour. If your instance was active for less than an hour, you are billed for the full hour.
43+
answer: The billing granularity is one hour. If your instance was active for less than an hour, you're billed for the full hour.
4344

4445
- question: Is there a minimum number of cores with pay-as-you-go billing?
4546
answer: Pay-as-you-go billing doesn't change the licensing terms of SQL Server. Therefore, it's subject to the four-core limit as defined in the [SQL Server licensing terms](https://www.microsoft.com/licensing/terms/productoffering/SQLServer/EAEAS).
@@ -54,7 +55,7 @@ sections:
5455
answer: |
5556
No. At this point, recurring billing is only enabled in the cloud solution provider (CSP) managed Azure subscriptions.
5657
57-
- question: How do I ensure that my VM and SQL server are not billed when it is disconnected or turned off intentionally?
58+
- question: How do I ensure that my VM and SQL server aren't billed when it's disconnected or turned off intentionally?
5859
answer: |
5960
If the machine is offline for less than 30 days and then reconnects, the uploaded SQL Server usage will reflect the offline period, and the monthly invoice will account for it. If you keep the machine offline for longer than 30 days, the pay-as-you-go billing will resume when the machine is back online and reconnects to Azure Arc.
6061
@@ -63,23 +64,35 @@ sections:
6364
- If you take your VM offline intentionally for a period longer than 30 days, and stop using SQL Server, the pay-as-you-go billing will resume when the machine is back online and reconnects to Azure Arc.
6465
- If your SQL Server instance is continuously running during the disconnected time period, you must restore the connectivity to stay compliant. Review [Troubleshoot extension](troubleshoot-extension.md).
6566
66-
- question: How can I be notified about when a given machine does not send usage data when expected or when recurring billing has happened or is happening?
67+
- question: How can I be notified about when a given machine doesn't send usage data when expected or when recurring billing has happened or is happening?
6768
answer: |
6869
You can:
6970
- See the billing mode of each machine in the Arc-enabled SQL Server Billing dashboard in the Azure portal.
7071
- Write your own ARG query to get the billing mode and last billed data points.
71-
- Subscribe to Activity Log events for when usage records are not received when expected or when recurring billing starts or is happening. Review [Use activity logs with SQL Server enabled by Azure Arc](activity-logs.md).
72+
- Subscribe to Activity Log events for when usage records aren't received when expected or when recurring billing starts or is happening. Review [Use activity logs with SQL Server enabled by Azure Arc](activity-logs.md).
73+
74+
- question: Does pay-as-you-go billing work on Linux?
75+
answer: |
76+
Yes. PAYG billing is supported for SQL Server on Linux with limitations. Passive instance detection, connected user verification, and Database Engine-level core visibility aren't available on Linux. All SQL Server instances on Linux are billed as active. For details, see [Manage licensing and billing](manage-license-billing.md).
77+
78+
- question: Why are my passive SQL Server instances on Linux billed as active with pay-as-you-go?
79+
answer: |
80+
Passive instance detection isn't available on Linux. Without this capability, the free passive billing benefit can't be applied. All instances are billed based on the OS-reported core count. If you need free passive instance billing, consider using volume licensing instead of PAYG, or use [PAYG physical cores with unlimited virtualization](manage-license-billing.md#unlimited-virtualization).
81+
82+
- question: How does core detection work for PAYG on Linux?
83+
answer: |
84+
On Linux, core count is reported based on the operating system environment (virtual or physical cores visible to the OS). Database Engine-level core verification isn't available. Billing is based on the OS-reported core count, subject to the four-core minimum per OSE.
7285
7386
- name: Security
7487
questions:
7588
- question: What are the best practices for security?
7689
answer: Review and implement [SQL Server enabled by Azure Arc best practices](security-overview.md#best-practices).
7790

7891
- question: Is TDE with Azure Key Vault supported?
79-
answer: No. TDE with Azure Key Vault is not supported today SQL Server enabled by Azure Arc. You can manually set up TDE for your own instances.
92+
answer: No. TDE with Azure Key Vault isn't supported today SQL Server enabled by Azure Arc. You can manually set up TDE for your own instances.
8093

8194
- question: Is there key vault support?
82-
answer: Yes, there is key vault support today for SQL Server enabled by Azure Arc for storing the Microsoft Entra ID certificate.
95+
answer: Yes, there's key vault support today for SQL Server enabled by Azure Arc for storing the Microsoft Entra ID certificate.
8396

8497
- question: Does SQL Server enabled by Azure Arc support Private Link?
8598
answer: |
@@ -92,14 +105,14 @@ sections:
92105
answer: You need to open up the endpoint at `*.<region>.arcdataservices.com`. For specific information, review [Prerequisites - Connect to Azure Arc data processing service](prerequisites.md#connect-to-azure-arc-data-processing-service).
93106

94107
- question: Does TLS inspection work with Azure Extension for SQL Server?
95-
answer: If your organization uses TLS inspection, the Azure Extension for SQL Server does not use certificate pinning and will continue to work, so long as your machine trusts the certificate presented by the TLS inspection service. For information on TLS inspection with Azure Arc-enabled server extension, see [Network Security](/azure/azure-arc/servers/security-networking#general-networking).
108+
answer: If your organization uses TLS inspection, the Azure Extension for SQL Server doesn't use certificate pinning and will continue to work, so long as your machine trusts the certificate presented by the TLS inspection service. For information on TLS inspection with Azure Arc-enabled server extension, see [Network Security](/azure/azure-arc/servers/security-networking#general-networking).
96109

97110

98111
- question: What are the details on the permissions assigned?
99112
answer: Review [Configure Windows service accounts and permissions for Azure extension for SQL Server](configure-windows-accounts-agent.md).
100113

101114
- question: What user is the Microsoft SQL Server extension service running as?
102-
answer: When the least privileges mode is enabled, then it runs as the NT Service\SQLServerExtension account. When it is disabled, it runs as Local System. To enable least privilege mode, review [Least privilege mode](configure-least-privilege.md).
115+
answer: When the least privileges mode is enabled, then it runs as the NT Service\SQLServerExtension account. When it's disabled, it runs as Local System. To enable least privilege mode, review [Least privilege mode](configure-least-privilege.md).
103116

104117
- question: Is least privilege mode supported for SQL Server enabled by Azure Arc?
105118
answer: Yes, least privilege mode is supported for SQL Server enabled by Azure Arc. Existing servers with extension version `1.1.2859.223` or greater will eventually have the least privileged configuration applied. This extension was released in November, 2024. To prevent the automatic application of least privilege, block extension upgrades after `1.1.2859.223`. Learn more about the permission assigned at [Configure Windows service accounts and permissions for Azure extension for SQL Server](configure-windows-accounts-agent.md).
@@ -110,24 +123,24 @@ sections:
110123
- name: Associated services
111124
questions:
112125
- question: How does SQL Server enabled by Azure Arc license management work with associated services?
113-
answer: The associated services are represented as SQL Server instances in Azure Resource Manager (ARM) with a service_type property reflecting if it is an engine or an associated service installation. Review [Manage licensing and billing](manage-license-billing.md) and [Extended Security Updates](extended-security-updates.md) for details.
126+
answer: The associated services are represented as SQL Server instances in Azure Resource Manager (ARM) with a service_type property reflecting if it's an engine or an associated service installation. Review [Manage licensing and billing](manage-license-billing.md) and [Extended Security Updates](extended-security-updates.md) for details.
114127

115128
- name: "Recurring pay-as-you-go billing"
116129
questions:
117130
- question: I have an enterprise or a small business account with Microsoft, can I enable recurring pay-as-you-go billing?
118131
answer: |
119-
No. At this point, recurring pay-as-you-go billing is enabled and required in the CSP-managed subscriptions. It is not available with other subscription offers.
132+
No. At this point, recurring pay-as-you-go billing is enabled and required in the CSP-managed subscriptions. It's not available with other subscription offers.
120133
121-
- question: How do I ensure that my VM and SQL server are not billed when it is disconnected or turned off intentionally?
134+
- question: How do I ensure that my VM and SQL server aren't billed when it's disconnected or turned off intentionally?
122135
answer: |
123136
If the machine is offline for less than 30 days and then reconnects, the uploaded SQL Server usage will reflect the offline period, and the monthly invoice will account for it. If you plan to keep it offline for longer than 30 days, you should disconnect the Arc-enabled SQL Server. For steps, review [Disconnect SQL Server instances from Azure Arc](delete-from-azure-arc.md). Then reconnect using one of [the supported deployments options](deployment-options.md).
124137
125-
- question: How can I be notified about when a given machine does not send usage data when expected or when recurring billing has happened or is happening?
138+
- question: How can I be notified about when a given machine doesn't send usage data when expected or when recurring billing has happened or is happening?
126139
answer: |
127140
You can:
128141
- See the billing mode of each machine in the Arc-enabled SQL Server Billing dashboard in the Azure portal.
129142
- Write your own ARG query to get the billing mode and last billed data points.
130-
- Subscribe to Activity Log events for when usage records are not received when expected or when recurring billing starts or is happening.
143+
- Subscribe to Activity Log events for when usage records aren't received when expected or when recurring billing starts or is happening.
131144
Review [Manage recurrent billing for pay-as-you go licenses](manage-pay-as-you-go-transition.md) for details.
132145
133146
- name: VMware

docs/sql-server/azure-arc/includes/features-operating-system.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
author: MikeRayMSFT
33
ms.author: mikeray
44
ms.reviewer: randolphwest
5-
ms.date: 05/10/2023
5+
ms.date: 04/01/2026
66
ms.topic: include
77
ms.custom: ignite-2023
88
---
@@ -11,7 +11,7 @@ The following table identifies features available by operating system:
1111
| Feature | Windows | Linux |
1212
| --- | --- | --- |
1313
| [Discover and register SQL Server instances in Azure](../prerequisites.md) | Yes | Yes |
14-
| [Azure pay-as-you-go billing](../manage-configuration.md) | Yes | Yes |
14+
| [Azure pay-as-you-go billing](../manage-configuration.md) | Yes | Yes <sup>2</sup> |
1515
| [Install Azure extension for SQL Server during setup](../../../database-engine/install-windows/install-sql-server-from-the-installation-wizard-setup.md#install-sql-server-2022) <sup>1</sup> | Yes | No |
1616
| [Best practices assessment](../assess.md) | Yes | No |
1717
| [Migration assessment](../migration-assessment.md) | Yes | No |
@@ -31,3 +31,5 @@ The following table identifies features available by operating system:
3131
| [Operate with least privilege](../configure-least-privilege.md)| Yes | No |
3232

3333
<sup>1</sup> [!INCLUDE [sssql22-md](../../../includes/sssql22-md.md)] only.
34+
35+
<sup>2</sup> PAYG billing is supported on Linux with limitations. Passive instance detection, connected user verification, and Database Engine-level core visibility aren't available. All instances are billed as active. For details, see [Manage licensing and billing](../manage-license-billing.md).

docs/sql-server/azure-arc/manage-configuration.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ description: Learn how to manage configuration options for SQL Server enabled by
44
author: anosov1960
55
ms.author: sashan
66
ms.reviewer: mikeray, randolphwest
7-
ms.date: 07/03/2025
7+
ms.date: 04/01/2026
8+
ai-usage: ai-assisted
89
ms.topic: how-to
910
ms.custom: sfi-image-nochange
1011
---
@@ -87,6 +88,9 @@ There are two ways to configure the SQL Server host in the Azure portal:
8788

8889
Choose one of the license types. For descriptions, see [License types](manage-license-billing.md#license-types).
8990

91+
> [!NOTE]
92+
> On Linux, certain configuration features aren't available, including passive instance detection and connected user verification. When you configure PAYG billing on Linux, all instances are billed as active regardless of their HA/DR role. For details, see [Manage licensing and billing](manage-license-billing.md).
93+
9094
<a id="use-physical-core-license"></a>
9195

9296
#### Use a physical core license

docs/sql-server/azure-arc/manage-license-billing.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: This article explains how to manage SQL Server licensing options. I
44
author: anosov1960
55
ms.author: sashan
66
ms.reviewer: mikeray, randolphwest, maghan, mathoma
7-
ms.date: 03/04/2026
7+
ms.date: 04/01/2026
88
ai-usage: ai-assisted
99
ms.topic: how-to
1010
ms.custom:
@@ -98,6 +98,15 @@ The following license types are supported when you're licensing v-cores:
9898

9999
- If you're using an Azure subscription managed by a Cloud Service Provider (CSP), enabling pay-as-you-go requires that you or the CSP consents to recurrent billing. For details, review [Manage recurrent billing for SQL Server enabled by Azure Arc with pay-as-you-go license](manage-pay-as-you-go-transition.md).
100100

101+
> [!IMPORTANT]
102+
> **Pay-as-you-go on Linux**: The following PAYG limitations apply to SQL Server on Linux:
103+
>
104+
> - **Passive instance detection**: Automatic detection of passive replicas in availability groups or failover cluster instances isn't available. All instances are billed as active.
105+
> - **Core visibility**: Core count is based on the operating system environment. Database Engine-level core verification isn't available.
106+
> - **Connected user detection**: Verification of active user connections on readable secondary replicas isn't available.
107+
>
108+
> These limitations don't affect license compliance or the ability to use PAYG billing on Linux. However, you should account for the billing differences when planning PAYG deployments on Linux. For more information about feature availability by operating system, see [Feature availability by operating system](overview.md#feature-availability-by-operating-system).
109+
101110
- By selecting a license with Software Assurance, you attest that you have Enterprise or Standard licenses with active Software Assurance or an active SQL Server subscription license, and that the device is in compliance with the [Product Terms outsourcing restrictions](https://www.microsoft.com/licensing/terms/productoffering/MicrosoftAzure/allprograms#:~:text=When%20using%20SQL%20Server%20enabled%20by%20Azure%20Arc%20with%20a,%2C%20regardless%20of%20whether%20those%20Servers%20are%20dedicated%20to%20Customer).
102111

103112
- For SQL Server Enterprise, Standard, or Web edition instances of SQL Server licensed from cloud service providers or hosting service providers using the Service Provider Licensing Agreement (SPLA), use `license only` for the license type. Web edition isn't available in [!INCLUDE [sssql25-md](../../includes/sssql25-md.md)] and later versions.
@@ -292,6 +301,7 @@ The current passive instance detection logic has the following limitations:
292301
- Passive instances for other disaster recovery technologies like log shipping or mirroring aren't automatically detected at this time.
293302
- The detection logic doesn't support free disaster recovery testing.
294303
- The detection logic doesn't support monitoring connections like database consistency checks, backups, or monitoring resource usage data.
304+
- On Linux, passive instance detection isn't available. All SQL Server instances on Linux are billed as active, regardless of their HA/DR role.
295305

296306
If you're unable to work within these limitations, you can use volume licensing instead of `PAYG`. For details, review [Configure SQL Server enabled by Azure Arc](manage-configuration.md).
297307

docs/sql-server/azure-arc/manage-pay-as-you-go-transition.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ description: How to transition SQL Server from the legacy licensing model to Azu
44
author: anosov1960
55
ms.author: sashan
66
ms.reviewer: mikeray, randolphwest, maghan
7-
ms.date: 07/08/2025
7+
ms.date: 04/01/2026
8+
ai-usage: ai-assisted
89
ms.topic: how-to
910
---
1011

@@ -71,6 +72,17 @@ Azure Arc-connected servers must check in with Azure at least once every 30 days
7172

7273
You or your cloud solutions provider must explicitly provide consent before you enabled pay-as-you-go billing. For details, review [Recurring billing consent](#recurring-billing-consent).
7374

75+
## Linux-specific considerations
76+
77+
When transitioning SQL Server on Linux to pay-as-you-go, be aware of the following limitations compared to Windows:
78+
79+
- **Passive instance detection**: Automatic detection of passive replicas in availability groups or failover cluster instances isn't available on Linux. All instances are billed as active.
80+
- **Core detection**: Core count is reported based on the operating system environment. Database Engine-level core verification isn't available.
81+
- **Connected user detection**: Verification of active user connections on readable secondary replicas isn't available.
82+
- **Agent health monitoring**: Ensure the Azure Connected Machine agent stays healthy and connected. The 30-day reconnection window and recurring billing behavior work the same as on Windows.
83+
84+
These limitations don't block the transition to PAYG on Linux. However, plan for the billing differences described in [Manage licensing and billing](manage-license-billing.md).
85+
7486
### Reconnection within 30 days
7587

7688
If the machine reconnects within 30 days of being disconnected, pay-as-you-go billing is based on the actual usage logs maintained locally by the extension.

0 commit comments

Comments
 (0)