Licensing for read a database master in sql server always on

Cédric 0 Reputation points
2024-06-19T08:24:33.7166667+00:00

Good morning,

I'm wondering about the licenses to have on the nodes of an Always On cluster.

We have the main node and two passive secondary nodes.

In order to monitor the good state of a cluster I made a procedure stored in the master database which queries system tables.

As we are not doing anything more than what is proposed in the dashboard, is a license change necessary for these secondary nodes?

Our script and the grant for a user "monitoring" with a public server role only :

USE MASTER

GO

CREATE or ALTER PROC usp_always_on_healthy

AS

SET NOCOUNT ON

SELECT count(drs.database_id)

FROM sys.dm_hadr_database_replica_states AS drs

JOIN sys.availability_replicas AS ar

ON drs.replica_id = ar.replica_id

JOIN sys.dm_hadr_availability_replica_states AS ars

ON ar.replica_id = ars.replica_id

WHERE drs.synchronization_health_desc <>'HEALTHY'

AND ars.is_local=1

GO

use [master]

GO

GRANT EXECUTE ON [dbo].[usp_always_on_healthy] TO [monitoring]

GO

Grant VIEW SERVER STATE to [monitoring]

GO

SQL Server
SQL Server
A family of Microsoft relational database management and analysis systems for e-commerce, line-of-business, and data warehousing solutions.
13,353 questions
{count} votes

2 answers

Sort by: Most helpful
  1. Olaf Helper 43,246 Reputation points
    2024-06-19T17:24:22.69+00:00

    Hello,

    This is a community forum for technical questions & issues.

    For question regarding pricing / licensing please contact a Microsoft sales partner or licensing expert.

    Call (1-800-426-9400), Monday through Friday, 6:00 AM to 6:00 PM PST to speak directly to Microsoft licensing specialist.

    0 comments No comments

  2. LucyChenMSFT-4874 3,005 Reputation points
    2024-06-20T02:36:03.85+00:00

    Hi @Cédric,

    Thank you for reaching out and welcome to Microsoft Q&A.

    Quote from Microsoft Licensing Reference Guide (start from the page of 26):

    Two secondary servers used for failover support do not need to be separately licensed for SQL Server as long as they are passive, and the primary SQL Server is covered with subscription licenses or licenses with active SA. If a server is marked to read and serving data, such as reports to clients running active SQL Server workloads, or performing any “work” except for maintenance related operations mentioned above, then it must be licensed for SQL Server.

    For Always On Availability Groups licensing, when secondary replicas are actively used to support high availability, disaster recovery, and read-scale balancing, they must be fully licensed accordingly. You'd better check with your Microsoft rep to be certain though.

    As we are not doing anything more than what is proposed in the dashboard, is a license change necessary for these secondary nodes?

    Since there is nothing beyond the regulations, I don't think it is necessary to change the license. I am not an expert in this field. If you still have concerns, you can refer to Olaf's answer and consult a professional.

    Feel free to share your issue here if you have any confusions.

    Best regards,

    Lucy Chen


    If the answer is the right solution, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".

    Note: Please follow the steps in our Documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    https://docs.microsoft.com/en-us/answers/support/email-notifications