Examples/Resources/xSQLServerAlwaysOnAvailabilityGroup/2-RemoveAvailabilityGroup.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<#
.EXAMPLE
This example shows how to ensure that the Availability Group 'TestAG' does not exist.
#>


$ConfigurationData = @{
    AllNodes = @(
        @{
            NodeName        = '*'
            SQLInstanceName = 'MSSQLSERVER'
        },

        @{
            NodeName = 'SP23-VM-SQL1'
            Role     = 'PrimaryReplica'
        }
    )
}

Configuration Example
{
    param(
        [Parameter(Mandatory = $true)]
        [PSCredential]
        $SysAdminAccount
    )

    Import-DscResource -ModuleName xSqlServer

    Node $AllNodes.NodeName {
        if ( $Node.Role -eq 'PrimaryReplica' )
        {
            # Create the availability group on the instance tagged as the primary replica
            xSQLServerAlwaysOnAvailabilityGroup RemoveTestAG
            {
                Ensure               = 'Absent'
                Name                 = 'TestAG'
                SQLInstanceName      = $Node.SQLInstanceName
                SQLServer            = $Node.NodeName
                PsDscRunAsCredential = $SysAdminAccount
            }
        }
    }
}