You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.markdown
+19-9Lines changed: 19 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# sqlserveralwayson #
2
2
3
-
This modules install a fully working SQL Server AlwaysOn cluster. It has been designed to install both primary replica nodes with th following features :
3
+
This modules install a fully working SQL Server AlwaysOn cluster. It has been designed to install both primary replica nodes with the following features :
4
4
- SPN creation on sql service account (service account not yet created by this module, schedulded in next release)
5
5
- SQL server installation and initial configuration (MaxDop Firewall, Memory, Admin rights, ...)
6
6
- Failover cluster creation (primary node) or join (replica node) with File Share witness
@@ -15,7 +15,7 @@ The database failover mecanism integrated in this module is SQL Server AlwaysOn.
15
15
The module can be installed on a Standard, Datacenter, or Core version of Windows 2012R2 or Windows 2016.
16
16
17
17
## Usage
18
-
-**setup_svc_username** : (string) Privileged account used by Puppet for installing the software and creating the failover cluster (spn creation, computer registration, local administrator privilèges needed)
18
+
-**setup_svc_username** : (string) Privileged account used by Puppet for installing the software and creating the failover cluster (spn creation, computer registration, local administrator privilèges needed)
19
19
-**setup_svc_password** : (string) Password of the privileged account. Should be encrypted with hiera-eyaml.
20
20
-**setupdir** : (string) Path of a folder containing the SQL Server installer (unarchive the ISO image in this folder).
21
21
-**sa_password** : (string) SQL Server SA password for mixed mode SQL authentication configuration.
@@ -24,21 +24,34 @@ The module can be installed on a Standard, Datacenter, or Core version of Window
24
24
-**sqlservicecredential_password** : (String) : Password of the service account for the SQL service. Should be encrypted with hiera-eyaml.
25
25
-**sqlagentservicecredential_username** : (String) Service account for the SQL Agent service
26
26
-**sqlagentservicecredential_password** : (String) Password of the service account for the SQL Agent service. Should be encrypted with hiera-eyaml.
27
-
-**sqladministratoraccounts** : (String[] Array) : Array of accounts to be made SQL administrators.
27
+
-**sqladministratoraccounts** : (String[] Array) : Array of accounts to be made SQL administrators.
28
28
-**sqluserdbdir** : (String)(optionnal) Path for SQL database files. Default to 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data'
29
29
-**sqluserdblogdir** : (String)(optionnal) Path for SQL log files. Default to 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data'
30
30
-**sqlbackupdir** : (String)(optionnal) Path for SQL backup files. Default to 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup'
31
31
-**sqltempdbdir** : (String)(optionnal) Path for SQL TempDB files. Default to 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data'
32
32
-**sqltempdblogdir** : (String)(optionnal) Path for SQL TempDB log files. Default to 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data'
-**clusterIP** : (String) Failover cluster IP address.
35
-
-**fileShareWitness** : (String) Fileshare witness UNC path in the format'\\witness.company.local\witness$'. Needs to be writable by SQL nodes.
35
+
-**fileShareWitness** : (String) Fileshare witness UNC path in the format'\\witness.company.local\witness$'. Needs to be writable by SQL nodes.
36
36
-**listenerIP** : (String) The IP address used for the availability group listener, in the format 192.168.10.45/255.255.252.0.
37
37
-**role** : (String) Needs to be 'primary' for primary SQL nodes or 'secondary' for SQL replica nodes
38
38
-**domainNetbiosName** : (String) Active Directory domain NETBIOS name
39
39
40
40
41
41
## Installing a Microsoft SQL Server AlwaysOn cluster
42
+
The following example creates a 2 nodes SQL Server Always On Availability group :
43
+
- SQL Server is installed on both nodes using the privileged **DOMAIN-TEST\svc-puppet** account.
44
+
- SQL Server service and agent are configured to run using the **DOMAIN-TEST\svc-sql-puppet** service account.
45
+
- Mixed mode logon is configured with the required "SA password" used to recover SQL Server access in case of windows authentication service failure
46
+
- Windows Failover Cluster named **CLDB01** is created and configured with the **\\192.168.1.10\quorum** file share witness
47
+
- Always On Availability group is created including endpoints and **CLDB01LI** listener (IP address : 192.168.1.61). The listener name is derived from the failover cluster name by the module
48
+
49
+
The replica node is installed with the same parameters and joined to the **CLDB01** windows failover cluster and to the Avalability Group. **Notice the role => 'secondary'** which defines the role of the node.
50
+
51
+
### Sample architecture :
52
+

description: Puppet module installing a fully working SQL Server Always On cluster including : SPN creation, SQL server installation and initial configuration, windows failover cluster and SQL Always On Availability Group creation.
0 commit comments