Always On Availability Groups
To improve the availability of the Active Roles Administration Service, you can use Always On Availability Groups introduced in Microsoft SQL Server 2012. With Always On Availability Groups, SQL Server provides a failover environment known as an availability group for a set of availability databases that fail over together from one SQL Server instance to another. You can add the Active Roles database to an availability group, and have the Administration Service automatically reconnect to the database when the availability group fails over to another SQL Server instance.
An availability group defines a set of availability replicas to host copies of each availability database. Each availability group has at least two availability replicas: a primary and a secondary replica.
The primary replica hosts the read-write copy of each availability database held in the availability group. A secondary replica hosts a read-only copy of each availability database, and serves as a potential failover target for the availability group. During a failover, a secondary replica transitions to the primary role, becoming the new primary replica. The new primary replica brings its databases online as the primary databases for read-write access.
Adding the Active Roles database to an availability group ensures the uninterrupted operation of the Active Roles Administration Service. If a server or software failure occurs on the SQL Server side, the availability group can instantly switch the database to a secondary replica, enabling the Administration Service to reconnect seamlessly to the database in the new location.
For more information about Always On Availability Groups, see AlwaysOn Availability Groups (SQL Server) in the Microsoft SQL documentation.
Configuring AlwaysOn Availability Groups in Active Roles
If you have the Active Roles Administration Service installed, you can configure it to use a database belonging to an Always On availability group (also called an availability database). When configuring Active Roles, you must store the Management History data and Configuration data in separate databases. Each of the two databases (or both) can belong to an availability group.
NOTE: Active Roles does not support the replication of availability databases. Therefore, if the Administration Service is configured to use an availability database (either for the Management History Database or for the Configuration Database), then the data of that database cannot be replicated.
For more information on how to install and configure the Administration Service, see the Active Roles Quick Start Guide.
By using the availability group listener, the Administration Service can connect to the current primary replica of the availability group that holds the Active Roles database without knowing the name of the physical instance of the SQL Server that hosts the primary replica. The listener also enables support for failover redirection. This means that in case of a failover, the listener automatically redirects the Administration Service connection to the new primary replica.
Prerequisites
-
The Active Roles database is added to an Always On availability group on the SQL Server.
For instructions on how to configure an availability group, and how to add a database to an availability group, see Getting Started with Always On Availability Groups (SQL Server) in the Microsoft SQL documentation.
-
Active Roles replication is not configured for the Configuration data and the Management History data.
To configure the Active Roles Administration Service to connect to the database via the availability group listener
-
Start the Active Roles Configuration Center on the computer running the Administration Service, or connect the Active Roles Configuration Center to that computer.
-
On the Active Roles Configuration Center Dashboard, in Administration Service, click Manage Settings.
The Connection to Database page opens.
-
To modify the database connection of the Administration Service, in Connection to Database > Active Roles databases, click Change.
-
If either or both of the databases belong to an availability group in your Active Roles environment, specify the availability group listener. Otherwise, do not change the value of SQL Server.
-
If the Configuration database belongs to an availability group, enter the DNS host name and, optionally, the TCP port of the listener of that availability group in Connection to Database > SQL Server.
-
If the Management History database belongs to an availability group, enter the DNS host name and, optionally, the TCP port of the listener of that availability group in Connection to Management History Database > SQL Server.
The value of SQL Server must be identical to the DNS host name and, optionally, the TCP port of the listener of the availability group to which the database belongs.
Example: Specifying the availability group listener in the SQL Server
If the DNS host name of the listener is AGListener and the TCP port used by this listener is 1234
, the value is AGListener,1234. You can omit the port number in case of the default port, 1433.
-
Click Next.
-
To complete the configuration, follow the instructions of the wizard.
Using database mirroring
Active Roles can use the Microsoft SQL Server database mirroring technology to improve the availability of the Administration Service. Database mirroring provides a standby database server that supports failover. Once the current database server fails, the Administration Service can recover quickly by automatically reconnecting to the standby server.
Database mirroring increases database availability by supporting rapid failover. This technology can be used to maintain two copies of a single Active Roles database on different server instances of SQL Server Database Engine. One server instance serves the database to the Administration Service; this instance is referred to as the Principal server. The other instance acts as a standby server; this instance is referred to as the Mirror server.
Role switching
Within the context of database mirroring, the mirror server acts as the failover partner for the principal server. In the event of a disaster, the mirror server takes over the role of the principal server, bringing the mirror copy of the database online as the new principal database. The former principal server, if available, then assumes the role of the mirror server. This process, known as role switching, can take the form of:
-
Automatic failover: If the principal server becomes unavailable, quickly brings the mirror copy of the database online as the new principal database.
-
Manual failover: Allows the database owner to reverse the roles of the failover partners, if necessary.
-
Forced service: If the principal server becomes unavailable, allows the database owner to restore access to the database by forcing the mirror server to take over the role of the principal server.
In any role switching scenario, as soon as the new principal database comes online, the Administration Service can recover by automatically reconnecting to the database.
For more information about the database mirroring technology, and instructions on how to set up and administer database mirroring on SQL Server, see the Database Mirroring in the SQL Server product documentation.
NOTE: The Active Roles replication function is not supported for the databases that have mirroring set up. If you attempt to perform the Promote to Publisher or Add Subscriber operation on such a database, you receive an error.