Skip to content

Commit 8bd245a

Browse files
committed
Edit pass
1 parent 3b3c280 commit 8bd245a

1 file changed

Lines changed: 21 additions & 19 deletions

File tree

docs/linux/sql-server-linux-create-availability-group.md

Lines changed: 21 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -66,14 +66,14 @@ sudo systemctl restart mssql-server
6666

6767
## Create the availability group endpoints and certificates
6868

69-
An availability group uses TCP endpoints for communication. Under Linux, endpoints for an AG are only supported if certificates are used for authentication. You must restore the certificate from one instance on all other instances that participate as replicas in the same AG. The certificate process is required even for a configuration-only replica.
69+
An availability group uses TCP endpoints for communication. Under Linux, SQL Server supports endpoints for an AG only if you use certificates for authentication. You must restore the certificate from one instance on all other instances that participate as replicas in the same AG. You need the certificate process even for a configuration-only replica.
7070

7171
You can only create endpoints and restore certificates using Transact-SQL. You can also use non-[!INCLUDE [ssnoversion-md](../includes/ssnoversion-md.md)]-generated certificates. You also need a process to manage and replace any certificates that expire.
7272

7373
> [!IMPORTANT]
7474
> If you plan to use the [!INCLUDE [ssmanstudiofull-md](../includes/ssmanstudiofull-md.md)] wizard to create the AG, you still need to create and restore the certificates by using Transact-SQL on Linux.
7575
76-
For full syntax on the options available for the various commands (including security), consult:
76+
For full syntax on the options available for the various commands (including security), see:
7777

7878
- [BACKUP CERTIFICATE](../t-sql/statements/backup-certificate-transact-sql.md)
7979
- [CREATE CERTIFICATE](../t-sql/statements/create-certificate-transact-sql.md)
@@ -171,7 +171,7 @@ This example creates certificates for a three-node configuration. The instance n
171171
GO
172172
```
173173

174-
1. Using `scp` or another utility, copy the backups of the certificate to each node that will be part of the AG.
174+
1. Using `scp` or another utility, copy the backups of the certificate to each node that you want to be part of the AG.
175175

176176
For this example:
177177

@@ -319,19 +319,19 @@ This section shows how to create an AG with a cluster type of External using SSM
319319

320320
1. On the Introduction dialog, select **Next**.
321321

322-
1. In the **Specify Availability Group Options** dialog, enter a name for the AG, and select a cluster type of `EXTERNAL` or `NONE` in the dropdown list. Use `EXTERNAL` when you deploy Pacemaker. Use `NONE` for specialized scenarios, such as read scale-out. Selecting the option for database level health detection is optional. For more information on this option, see [Availability group database level health detection failover option](../database-engine/availability-groups/windows/sql-server-always-on-database-health-detection-failover-option.md). Select **Next**.
322+
1. In the **Specify Availability Group Options** dialog, enter a name for the AG, and select a cluster type of `EXTERNAL` or `NONE` in the dropdown list. Use `EXTERNAL` when you deploy Pacemaker. Use `NONE` for specialized scenarios, such as read scale-out. Selecting the option for database level health detection is optional. For more information about this option, see [Availability group database level health detection failover option](../database-engine/availability-groups/windows/sql-server-always-on-database-health-detection-failover-option.md). Select **Next**.
323323

324324
:::image type="content" source="media/sql-server-linux-create-availability-group/image3.png" alt-text="Screenshot of Create Availability Group showing cluster type." lightbox="media/sql-server-linux-create-availability-group/image3.png":::
325325

326-
1. In the Select Databases dialog, select the databases that will participate in the AG. Each database must have a full backup before you can add it to an AG. Select **Next**.
326+
1. In the Select Databases dialog, select the databases that you want to participate in the AG. Each database must have a full backup before you can add it to an AG. Select **Next**.
327327

328328
1. In the Specify Replicas dialog, select **Add Replica**.
329329

330330
1. In the Connect to Server dialog, enter the name of the Linux instance of [!INCLUDE [ssnoversion-md](../includes/ssnoversion-md.md)] that will be the secondary replica, and the credentials to connect. Select **Connect**.
331331

332332
1. Repeat the previous two steps for the instance that will contain a configuration-only replica or another secondary replica.
333333

334-
1. All three instances appear on the Specify Replicas dialog. If you use a cluster type of External, for the secondary replica that will be a true secondary, make sure the Availability Mode matches that of the primary replica and failover mode is set to External. For the configuration-only replica, select an availability mode of Configuration only.
334+
1. All three instances appear on the Specify Replicas dialog. If you use a cluster type of External, for the secondary replica that is a true secondary, make sure the Availability Mode matches that of the primary replica and failover mode is set to External. For the configuration-only replica, select an availability mode of Configuration only.
335335

336336
The following example shows an AG with two replicas, a cluster type of External, and a configuration-only replica.
337337

@@ -341,7 +341,7 @@ This section shows how to create an AG with a cluster type of External using SSM
341341

342342
:::image type="content" source="media/sql-server-linux-create-availability-group/image5.png" alt-text="Screenshot of Create Availability Group showing the Replicas page." lightbox="media/sql-server-linux-create-availability-group/image5.png":::
343343

344-
1. If you want to alter the backup preferences, select the Backup Preferences tab. For more information on backup preferences with AGs, see [Configure backups on secondary replicas of an Always On availability group](../database-engine/availability-groups/windows/configure-backup-on-availability-replicas-sql-server.md).
344+
1. If you want to change the backup preferences, select the Backup Preferences tab. For more information about backup preferences with AGs, see [Configure backups on secondary replicas of an Always On availability group](../database-engine/availability-groups/windows/configure-backup-on-availability-replicas-sql-server.md).
345345

346346
1. If you use readable secondaries or create an AG with a cluster type of None for read-scale, you can create a listener by selecting the **Listener** tab. You can also add a listener later. To create a listener, choose the **Create an availability group listener** option and enter a name, a TCP/IP port, and whether to use a static or automatically assigned DHCP IP address. For an AG with a cluster type of None, the IP should be static and set to the primary's IP address.
347347

@@ -353,13 +353,13 @@ This section shows how to create an AG with a cluster type of External using SSM
353353

354354
1. Enter the URLs for the read-only replicas. These URLs are similar to the endpoints, except they use the port of the instance, not the endpoint.
355355

356-
1. Select each URL and from the bottom, select the readable replicas. To multi-select, hold down SHIFT or select-drag.
356+
1. Select each URL and from the bottom, select the readable replicas. To select multiple, hold down **Shift** or select-drag.
357357

358358
1. Select **Next**.
359359

360-
1. Choose how the secondary replicas are initialized. The default is to use [automatic seeding](../database-engine/availability-groups/windows/automatically-initialize-always-on-availability-group.md), which requires the same path on all servers participating in the AG. You can also have the wizard do a backup, copy, and restore (the second option); have it join if you have manually backed up, copied, and restored the database on the replicas (third option); or add the database later (last option). As with certificates, if you're manually making backups and copying them, set permissions on the backup files on the other replicas. Select **Next**.
360+
1. Choose how to initialize the secondary replicas. The default is to use [automatic seeding](../database-engine/availability-groups/windows/automatically-initialize-always-on-availability-group.md), which requires the same path on all servers participating in the AG. You can also have the wizard do a backup, copy, and restore (the second option); have it join if you manually backed up, copied, and restored the database on the replicas (third option); or add the database later (last option). As with certificates, if you're manually making backups and copying them, set permissions on the backup files on the other replicas. Select **Next**.
361361

362-
1. On the Validation dialog, if everything doesn't come back as Success, investigate. Some warnings are acceptable and not fatal, such as if you don't create a listener. Select **Next**.
362+
1. On the Validation dialog, if the wizard doesn't return **Success** for all checks, investigate further. Some warnings are acceptable and not fatal, such as if you don't create a listener. Select **Next**.
363363

364364
1. On the Summary dialog, select **Finish**. The process to create the AG now begins.
365365

@@ -378,7 +378,7 @@ This section shows examples of creating an AG using Transact-SQL. You can config
378378

379379
This example shows how to create a two-replica AG that uses a configuration-only replica.
380380

381-
1. Execute the following statement on the node that will act as the primary replica, and contains the fully read/write copy of the databases. This example uses automatic seeding.
381+
1. Execute the following statement on the node that acts as the primary replica, and contains the fully read/write copy of the databases. This example uses automatic seeding.
382382

383383
```sql
384384
CREATE AVAILABILITY GROUP [<AGName>]
@@ -427,7 +427,7 @@ This example shows how to create a two-replica AG that uses a configuration-only
427427

428428
This example shows three full replicas and how you can configure read-only routing as part of the initial AG creation.
429429

430-
1. Execute the following statement on the node that will act as the primary replica, and contains the fully read/write copy of the databases. This example uses automatic seeding.
430+
1. Execute the following statement on the node that acts as the primary replica, and contains the fully read/write copy of the databases. This example uses automatic seeding.
431431

432432
```sql
433433
CREATE AVAILABILITY GROUP [<AGName>] WITH (CLUSTER_TYPE = EXTERNAL)
@@ -500,9 +500,9 @@ This example shows three full replicas and how you can configure read-only routi
500500

501501
#### Example C: Two replicas with read-only routing (None cluster type)
502502

503-
This example shows the creation of a two-replica configuration using a cluster type of None. Use this configuration for the read scale scenario where no failover is expected. This step creates the listener that is actually the primary replica, and the read-only routing, using the round robin functionality.
503+
This example shows the creation of a two-replica configuration using a cluster type of None. Use this configuration for the read-scale scenario where no failover is expected. This step creates the listener that is actually the primary replica, and the read-only routing, using the round robin functionality.
504504

505-
1. Execute the following statement on the node that will act as the primary replica, and contains the fully read/write copy of the databases. This example uses automatic seeding.
505+
1. Execute the following statement on the node that acts as the primary replica, and contains the fully read/write copy of the databases. This example uses automatic seeding.
506506

507507
```sql
508508
CREATE AVAILABILITY GROUP [<AGName>]
@@ -564,7 +564,7 @@ This example shows the creation of a two-replica configuration using a cluster t
564564

565565
## Create the SQL Server login and permissions for Pacemaker
566566

567-
A Pacemaker high availability cluster that uses [!INCLUDE [ssnoversion-md](../includes/ssnoversion-md.md)] on Linux needs access to the [!INCLUDE [ssnoversion-md](../includes/ssnoversion-md.md)] instance, and permissions on the AG itself. These steps create the login and the associated permissions, along with a file that tells Pacemaker how to log into [!INCLUDE [ssnoversion-md](../includes/ssnoversion-md.md)].
567+
A Pacemaker high availability cluster that uses [!INCLUDE [ssnoversion-md](../includes/ssnoversion-md.md)] on Linux needs access to the [!INCLUDE [ssnoversion-md](../includes/ssnoversion-md.md)] instance, and permissions on the AG itself. These steps create the login and the associated permissions, along with a file that tells Pacemaker how to authenticate to [!INCLUDE [ssnoversion-md](../includes/ssnoversion-md.md)].
568568

569569
1. In a query window connected to the first replica, execute the following script:
570570

@@ -611,7 +611,7 @@ A Pacemaker high availability cluster that uses [!INCLUDE [ssnoversion-md](../in
611611

612612
## Create the availability group resources in the Pacemaker cluster (External only)
613613

614-
After you create an AG in [!INCLUDE [ssnoversion-md](../includes/ssnoversion-md.md)], you must create the corresponding resources in Pacemaker when you specify a cluster type of External. Two resources are associated with an AG: the availability group resource, and an IP address resource. Configuring the IP address resource is optional if you aren't using a listener. However, it's recommended when listener functionality is required.
614+
After you create an AG in [!INCLUDE [ssnoversion-md](../includes/ssnoversion-md.md)], you must create the corresponding resources in Pacemaker when you specify a cluster type of External. An AG needs two resources: the availability group resource, and an IP address resource. Configuring the IP address resource is optional if you aren't using a listener. However, it's recommended when you need listener features.
615615

616616
The AG resource you create is a type of resource called a *clone*. The AG resource has copies on each node, and one controlling resource called the *master*. The *master* is associated with the server hosting the primary replica. The other resources host secondary replicas (regular or configuration-only) and can be promoted to *master* in a failover.
617617

@@ -621,8 +621,10 @@ In [!INCLUDE [sssql25-md](../includes/sssql25-md.md)] with Cumulative Update (CU
621621

622622
Pacemaker HA agent v2 introduces reliability and performance improvements over the previous agent, including:
623623

624-
- Significantly improved failover performance to reduce both planned and unplanned failover times.
625-
- Support for flexible automatic failover policies, including configuration of health-check timeout and failure-condition level.
624+
- Improved failover performance to reduce both planned and unplanned failover times.
625+
626+
- Support for flexible automatic failover policies, including configuration of [health-check timeout](../database-engine/availability-groups/windows/configure-flexible-automatic-failover-policy.md#HCtimeout) and [failure-condition level](../database-engine/availability-groups/windows/configure-flexible-automatic-failover-policy.md#failure-condition-level).
627+
626628
- Support for TLS 1.3 for communication between the Pacemaker cluster and SQL Server.
627629

628630
Pacemaker HA agent v2 is currently in preview. The existing Pacemaker HA agent (v1) remains fully supported for production deployments.
@@ -645,7 +647,7 @@ Pacemaker HA agent v2 is currently in preview. The existing Pacemaker HA agent (
645647

646648
New deployments on [!INCLUDE [sssql25-md](../includes/sssql25-md.md)] can evaluate Pacemaker HA agent v2. Existing production deployments should upgrade when appropriate.
647649

648-
When upgrading to or deploying pacemaker HA agent v2, create the new AG resource using the `agv2` agent instead of the previous ag agent. If an existing AG resource is already configured, remove it and create a new resource using `agv2`:
650+
When upgrading to or deploying Pacemaker HA agent v2, create the new AG resource using the `agv2` agent instead of the previous `ag` agent. If you already configured an existing AG resource, remove it and create a new resource using `agv2`:
649651

650652
```bash
651653
sudo pcs resource delete <NameForAGResource>

0 commit comments

Comments
 (0)